ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cf.schmorp.de/server/random_maps/floor.C
Revision: 1.24
Committed: Sat Apr 10 01:54:07 2010 UTC (14 years, 3 months ago) by root
Content type: text/plain
Branch: MAIN
CVS Tags: rel-3_0
Changes since 1.23: +1 -1 lines
Log Message:
indent and difficult-support

File Contents

# User Rev Content
1 elmex 1.1 /*
2 root 1.17 * This file is part of Deliantra, the Roguelike Realtime MMORPG.
3 root 1.15 *
4 root 1.22 * Copyright (©) 2005,2006,2007,2008,2009,2010 Marc Alexander Lehmann / Robin Redeker / the Deliantra team
5 root 1.21 * Copyright (©) 2002 Mark Wedel & Crossfire Development Team
6     * Copyright (©) 1992 Frank Tore Johansen
7 root 1.15 *
8 root 1.20 * Deliantra is free software: you can redistribute it and/or modify it under
9     * the terms of the Affero GNU General Public License as published by the
10     * Free Software Foundation, either version 3 of the License, or (at your
11     * option) any later version.
12 root 1.15 *
13 root 1.12 * This program is distributed in the hope that it will be useful,
14     * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 root 1.15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 root 1.12 * GNU General Public License for more details.
17 root 1.15 *
18 root 1.20 * You should have received a copy of the Affero GNU General Public License
19     * and the GNU General Public License along with this program. If not, see
20     * <http://www.gnu.org/licenses/>.
21 root 1.15 *
22 root 1.17 * The authors can be reached via e-mail to <support@deliantra.net>
23 root 1.12 */
24 elmex 1.1
25     #include <global.h>
26     #include <random_map.h>
27     #include <rproto.h>
28    
29     /* make a map and layout the floor. */
30 root 1.12 void
31     maptile::make_map_floor (char **layout, char *floorstyle, random_map_params *RP)
32 root 1.4 {
33 elmex 1.1 object *the_floor;
34 root 1.4
35 root 1.12 clear ();
36    
37     width = RP->Xsize;
38     height = RP->Ysize;
39    
40     alloc ();
41 elmex 1.1
42     /* get the style map */
43 root 1.24 maptile *style_map = find_style ("/styles/floorstyles", floorstyle, RP->difficulty);
44 root 1.12 if (!style_map)
45     return;
46 elmex 1.1
47     /* fill up the map with the given floor style */
48 root 1.19 if ((the_floor = style_map->pick_random_object (rmg_rndm)))
49 root 1.12 for (int x = 0; x < width; x++)
50     for (int y = 0; y < height; y++)
51 root 1.16 insert (the_floor->clone (), x, y, 0, INS_NO_MERGE | INS_NO_WALK_ON);
52 elmex 1.1 }