ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/random_maps/floor.C
Revision: 1.20
Committed: Mon Oct 12 14:00:58 2009 UTC (14 years, 8 months ago) by root
Content type: text/plain
Branch: MAIN
CVS Tags: rel-2_82, rel-2_81, rel-2_90, rel-2_92, rel-2_93
Changes since 1.19: +7 -6 lines
Log Message:
clarify license

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.18 * Copyright (©) 2005,2006,2007,2008 Marc Alexander Lehmann / Robin Redeker / the Deliantra team
5 root 1.15 * Copyright (©) 2002,2007 Mark Wedel & Crossfire Development Team
6     * Copyright (©) 1992,2007 Frank Tore Johansen
7     *
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 root 1.10 char styledirname[1024];
34     char stylefilepath[1024];
35 root 1.6 maptile *style_map = 0;
36 elmex 1.1 object *the_floor;
37 root 1.4
38 root 1.12 clear ();
39    
40     width = RP->Xsize;
41     height = RP->Ysize;
42    
43     alloc ();
44 elmex 1.1
45     /* get the style map */
46 root 1.4 sprintf (styledirname, "%s", "/styles/floorstyles");
47     sprintf (stylefilepath, "%s/%s", styledirname, floorstyle);
48 root 1.12
49 root 1.4 style_map = find_style (styledirname, floorstyle, -1);
50 root 1.12
51     if (!style_map)
52     return;
53 elmex 1.1
54     /* fill up the map with the given floor style */
55 root 1.19 if ((the_floor = style_map->pick_random_object (rmg_rndm)))
56 root 1.12 for (int x = 0; x < width; x++)
57     for (int y = 0; y < height; y++)
58 root 1.16 insert (the_floor->clone (), x, y, 0, INS_NO_MERGE | INS_NO_WALK_ON);
59 elmex 1.1 }