Crossfire Server, Trunk
mapdef Struct Reference

#include <map.h>

+ Collaboration diagram for mapdef:

Data Fields

char * background_music
 
oblinkptbuttons
 
uint8_t darkness
 
uint16_t difficulty
 
int16_t enter_x
 
int16_t enter_y
 
uint32_t fixed_resettime:1
 
uint16_t height
 
uint32_t in_memory
 
uint32_t is_template:1
 
long last_reset_time
 
char * maplore
 
char * msg
 
char * name
 
struct mapdefnext
 
uint32_t nosmooth:1
 
uint32_t outdoor:1
 
char path [HUGE_BUF]
 
int16_t players
 
struct regiondefregion
 
sstring reset_group
 
uint32_t reset_time
 
uint32_t reset_timeout
 
double shopgreed
 
struct shopitemshopitems
 
uint64_t shopmax
 
uint64_t shopmin
 
char * shoprace
 
MapSpacespaces
 
int32_t swap_time
 
struct mapdeftile_map [4]
 
char * tile_path [4]
 
int32_t timeout
 
char * tmpname
 
uint32_t unique:1
 
uint16_t width
 

Detailed Description

This is a game-map.

In general, code should always use the macros above (or functions in map.c) to access many of the values in the map structure. Failure to do this will almost certainly break various features. You may think it is safe to look at width and height values directly (or even through the macros), but doing so will completely break map tiling.

Definition at line 317 of file map.h.

Field Documentation

◆ background_music

char* mapdef::background_music

Background music to use for this map.

Definition at line 360 of file map.h.

◆ buttons

oblinkpt* mapdef::buttons

Linked list of linked lists of buttons.

Definition at line 347 of file map.h.

Referenced by get_button_links(), and get_button_value().

◆ darkness

uint8_t mapdef::darkness

Indicates level of darkness of map.

Definition at line 339 of file map.h.

Referenced by adj_attackroll(), and monster_can_see_enemy().

◆ difficulty

uint16_t mapdef::difficulty

What level the player should be to play here.

Definition at line 336 of file map.h.

Referenced by generate_monster_arch(), generate_monster_inv(), generate_random_map(), and trap_disarm().

◆ enter_x

int16_t mapdef::enter_x

Definition at line 341 of file map.h.

◆ enter_y

int16_t mapdef::enter_y

Enter_x and enter_y are default entrance coordinates to use for a map such that when an exit specifies hp,sp of -1,-1 for an exit pointing to the map, when the exit is applied, the character is placed at enter_x,enter_y when they arrive.

Definition at line 341 of file map.h.

◆ fixed_resettime

uint32_t mapdef::fixed_resettime

If true, reset time is not affected by players entering/exiting map.

Definition at line 327 of file map.h.

◆ height

uint16_t mapdef::height

Width and height of map.

Definition at line 340 of file map.h.

Referenced by monster_compute_path(), and START_TEST().

◆ in_memory

uint32_t mapdef::in_memory

◆ is_template

uint32_t mapdef::is_template

If set, this is a template map.

Definition at line 331 of file map.h.

Referenced by enter_fixed_template_map(), and enter_random_template_map().

◆ last_reset_time

long mapdef::last_reset_time

A timestamp of the last original map loading.

Definition at line 359 of file map.h.

Referenced by cast_create_town_portal(), and generate_random_map().

◆ maplore

char* mapdef::maplore

Map lore information.

Definition at line 355 of file map.h.

◆ msg

char* mapdef::msg

Message map creator may have left.

Definition at line 354 of file map.h.

Referenced by generate_random_map().

◆ name

char* mapdef::name

Name of map as given by its creator.

Definition at line 320 of file map.h.

Referenced by account_char_add(), enter_fixed_template_map(), enter_random_template_map(), and get_who_escape_code_value().

◆ next

struct mapdef* mapdef::next

Next map, linked list.

Definition at line 318 of file map.h.

Referenced by command_style_map_info(), delete_map(), free_style_maps(), key_confirm_quit(), load_style_map(), map_can_reset(), and START_TEST().

◆ nosmooth

uint32_t mapdef::nosmooth

If set the content of this map has smoothlevel=0 forced.

Definition at line 332 of file map.h.

◆ outdoor

uint32_t mapdef::outdoor

True if an outdoor map.

Definition at line 333 of file map.h.

Referenced by generate_random_map().

◆ path

◆ players

int16_t mapdef::players

How many players are on this level right now. Automatically updated by the object handling functions.

Definition at line 337 of file map.h.

Referenced by player_map_change_common(), and transport_type_apply().

◆ region

struct regiondef* mapdef::region

What jurisdiction in the game world this map is ruled by points to the struct containing all the properties of the region.

Definition at line 321 of file map.h.

Referenced by generate_random_map().

◆ reset_group

sstring mapdef::reset_group

For reset purpose, all maps in the same group reset at the same time.

Definition at line 329 of file map.h.

Referenced by enter_random_map(), enter_random_template_map(), generate_random_map(), map_can_reset(), and place_exits().

◆ reset_time

uint32_t mapdef::reset_time

When this map should reset.

Definition at line 324 of file map.h.

Referenced by CREMapInformationManager::checkItem(), monsterFight(), process_map(), and START_TEST().

◆ reset_timeout

uint32_t mapdef::reset_timeout

How many seconds must elapse before this map should be reset.

Definition at line 325 of file map.h.

◆ shopgreed

double mapdef::shopgreed

How much our shopkeeper overcharges.

Definition at line 351 of file map.h.

Referenced by include_map_in_map().

◆ shopitems

struct shopitem* mapdef::shopitems

List of item-types the map's shop will trade in.

Definition at line 349 of file map.h.

Referenced by include_map_in_map().

◆ shopmax

uint64_t mapdef::shopmax

MMaximum price a shop will offer.

Definition at line 353 of file map.h.

Referenced by include_map_in_map().

◆ shopmin

uint64_t mapdef::shopmin

Minimum price a shop will trade for.

Definition at line 352 of file map.h.

Referenced by include_map_in_map().

◆ shoprace

char* mapdef::shoprace

The preffered race of the local shopkeeper.

Definition at line 350 of file map.h.

Referenced by include_map_in_map().

◆ spaces

MapSpace* mapdef::spaces

Array of spaces on this map.

Definition at line 348 of file map.h.

Referenced by get_map_flags().

◆ swap_time

int32_t mapdef::swap_time

When it reaches 0, the map will be swapped out.

Definition at line 335 of file map.h.

◆ tile_map

struct mapdef* mapdef::tile_map[4]

Adjoining maps.

Definition at line 357 of file map.h.

Referenced by adjacent_map(), and load_and_link_tiled_map().

◆ tile_path

char* mapdef::tile_path[4]

Path to adjoining maps.

Definition at line 356 of file map.h.

Referenced by load_and_link_tiled_map().

◆ timeout

int32_t mapdef::timeout

Swapout is set to this.

Definition at line 334 of file map.h.

Referenced by leave(), player_map_change_common(), and set_map_timeout().

◆ tmpname

char* mapdef::tmpname

Name of temporary file.

Definition at line 319 of file map.h.

◆ unique

uint32_t mapdef::unique

If set, this is a per player unique map.

Definition at line 330 of file map.h.

Referenced by enter_unique_map().

◆ width

uint16_t mapdef::width

Definition at line 340 of file map.h.

Referenced by get_map_flags(), monster_compute_path(), and START_TEST().


The documentation for this struct was generated from the following file: