CorsixTH engine (the C++ part)
Open source implementation of Theme Hospital
Loading...
Searching...
No Matches
Classes | Typedefs | Enumerations
th_map.h File Reference
#include "config.h"
#include <list>
#include <string>
#include <utility>
#include <vector>
#include "th.h"

Go to the source code of this file.

Classes

struct  map_tile_flags
 
struct  map_tile
 
class  level_map
 
class  map_tile_iterator
 Utility class for iterating over map tiles within a screen rectangle. More...
 
class  map_scanline_iterator
 Utility class for re-iterating a scanline visited by a map_tile_iterator. More...
 

Typedefs

typedef void(* map_load_object_callback_fn) (void *, int, int, object_type, uint8_t)
 Prototype for object callbacks from THMap::loadFromTHFile.
 

Enumerations

enum class  object_type : uint8_t {
  no_object = 0 , desk = 1 , cabinet = 2 , door = 3 ,
  bench = 4 , table = 5 , chair = 6 , drinks_machine = 7 ,
  bed = 8 , inflator = 9 , pool_table = 10 , reception_desk = 11 ,
  b_table = 12 , cardio = 13 , scanner = 14 , scanner_console = 15 ,
  screen = 16 , litter_bomb = 17 , couch = 18 , sofa = 19 ,
  crash = 20 , tv = 21 , ultrascan = 22 , dna_fixer = 23 ,
  cast_remover = 24 , hair_restorer = 25 , slicer = 26 , xray = 27 ,
  radiation_shield = 28 , xray_viewer = 29 , op_table = 30 , lamp = 31 ,
  sink = 32 , op_sink1 = 33 , op_sink2 = 34 , surgeon_screen = 35 ,
  lecture_chair = 36 , projector = 37 , pharmacy = 39 , computer = 40 ,
  chemical_mixer = 41 , blood_machine = 42 , extinguisher = 43 , radiator = 44 ,
  plant = 45 , electro = 46 , jelly_vat = 47 , hell = 48 ,
  bin = 50 , loo = 51 , double_door1 = 52 , double_door2 = 53 ,
  decon_shower = 54 , autopsy = 55 , bookcase = 56 , video_game = 57 ,
  entrance_left_door = 58 , entrance_right_door = 59 , skeleton = 60 , comfy_chair = 61 ,
  litter = 62 , helicopter = 63 , rathole = 64
}
 
enum class  temperature_theme { red , multi_colour , yellow_red }
 
enum  tile_layer : uint8_t {
  ground = 0 , north_wall = 1 , west_wall = 2 , ui = 3 ,
  num_tile_layers = 4
}
 
enum class  map_scanline_iterator_direction { forward = 2 , backward = 0 }
 

Typedef Documentation

◆ map_load_object_callback_fn

typedef void(* map_load_object_callback_fn) (void *, int, int, object_type, uint8_t)

Prototype for object callbacks from THMap::loadFromTHFile.

The callback function will receive 5 arguments: The opaque pointer passed to THMap::loadFromTHFile (pCallbackToken). The tile X/Y position of the object. The object type. The object flags present in the map data. The meaning of this value is left unspecified.

Enumeration Type Documentation

◆ map_scanline_iterator_direction

Enumerator
forward 
backward 

◆ object_type

enum class object_type : uint8_t
strong
Enumerator
no_object 
desk 
cabinet 
door 
bench 
table 
chair 
drinks_machine 
bed 
inflator 
pool_table 
reception_desk 
b_table 
cardio 
scanner 
scanner_console 
screen 
litter_bomb 
couch 
sofa 
crash 
tv 
ultrascan 
dna_fixer 
cast_remover 
hair_restorer 
slicer 
xray 
radiation_shield 
xray_viewer 
op_table 
lamp 
sink 
op_sink1 
op_sink2 
surgeon_screen 
lecture_chair 
projector 
pharmacy 
computer 
chemical_mixer 
blood_machine 
extinguisher 
radiator 
plant 
electro 
jelly_vat 
hell 
bin 
loo 
double_door1 
double_door2 
decon_shower 
autopsy 
bookcase 
video_game 
entrance_left_door 
entrance_right_door 
skeleton 
comfy_chair 
litter 
helicopter 
rathole 

◆ temperature_theme

Enumerator
red 

Default warmth colouring (red gradients)

multi_colour 

Different colours (blue, green, red)

yellow_red 

Gradients of yellow, orange, and red.

◆ tile_layer

enum tile_layer : uint8_t
Enumerator
ground 
north_wall 
west_wall 
ui 
num_tile_layers 

Number of layers in a tile.