Colobot
object_type.h
Go to the documentation of this file.
1 /*
2  * This file is part of the Colobot: Gold Edition source code
3  * Copyright (C) 2001-2016, Daniel Roux, EPSITEC SA & TerranovaTeam
4  * http://epsitec.ch; http://colobot.info; http://github.com/colobot
5  *
6  * This program is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14  * See the GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program. If not, see http://gnu.org/licenses
18  */
19 
25 #pragma once
26 
27 #include <functional>
28 
34 {
35  OBJECT_NULL = 0,
36  OBJECT_PORTICO = 2,
44  OBJECT_NEST = 10,
46  OBJECT_RADAR = 12,
48  OBJECT_LABO = 14,
50  OBJECT_START = 16,
51  OBJECT_END = 17,
52  OBJECT_INFO = 18,
53  OBJECT_PARA = 19,
56  OBJECT_SAFE = 22,
59  OBJECT_STONE = 31,
61  OBJECT_METAL = 33,
62  OBJECT_POWER = 34,
65  OBJECT_BBOX = 37,
66  OBJECT_TNT = 38,
74  OBJECT_BOMB = 60,
76  OBJECT_SHOW = 62,
77  OBJECT_BAG = 63,
98  OBJECT_TREE0 = 90,
99  OBJECT_TREE1 = 91,
133  OBJECT_FLAGb = 260,
134  OBJECT_FLAGr = 261,
135  OBJECT_FLAGg = 262,
136  OBJECT_FLAGy = 263,
137  OBJECT_FLAGv = 264,
138  OBJECT_KEYa = 270,
139  OBJECT_KEYb = 271,
140  OBJECT_KEYc = 272,
141  OBJECT_KEYd = 273,
142  OBJECT_HUMAN = 300,
143  OBJECT_TOTO = 301,
144  OBJECT_TECH = 302,
150  OBJECT_EGG = 501,
151  OBJECT_ANT = 502,
153  OBJECT_BEE = 504,
154  OBJECT_WORM = 505,
168  OBJECT_TEEN0 = 620,
169  OBJECT_TEEN1 = 621,
170  OBJECT_TEEN2 = 622,
171  OBJECT_TEEN3 = 623,
172  OBJECT_TEEN4 = 624,
173  OBJECT_TEEN5 = 625,
174  OBJECT_TEEN6 = 626,
175  OBJECT_TEEN7 = 627,
176  OBJECT_TEEN8 = 628,
177  OBJECT_TEEN9 = 629,
217  OBJECT_ROOT0 = 710,
218  OBJECT_ROOT1 = 711,
219  OBJECT_ROOT2 = 712,
220  OBJECT_ROOT3 = 713,
221  OBJECT_ROOT4 = 714,
222  OBJECT_ROOT5 = 715,
230  OBJECT_HOME1 = 910,
231 
232  OBJECT_MAX = 1000
233 };
234 
236 {
237  inline std::size_t operator()(ObjectType t) const
238  {
239  return std::hash<int>()(t);
240  }
241 };
< Teen43
Definition: object_type.h:212
< Greenery1
Definition: object_type.h:80
< AlienWasp
Definition: object_type.h:154
< Thumper
Definition: object_type.h:125
< WreckBotw2
Definition: object_type.h:157
< Teen6
Definition: object_type.h:175
< KeyDSpot
Definition: object_type.h:74
Definition: object_type.h:235
< Teen1
Definition: object_type.h:170
< Greenery2
Definition: object_type.h:81
< Recycler
Definition: object_type.h:127
< Greenery5
Definition: object_type.h:84
< Teen23
Definition: object_type.h:192
< WingedGrabber
Definition: object_type.h:111
< Tree1
Definition: object_type.h:100
< Barrier0
Definition: object_type.h:146
< Teen41
Definition: object_type.h:210
< Me
Definition: object_type.h:143
< Tech
Definition: object_type.h:145
< Teen25
Definition: object_type.h:194
< PhazerShooter
Definition: object_type.h:126
< Greenery14
Definition: object_type.h:93
< Teen27
Definition: object_type.h:196
< Bag
Definition: object_type.h:78
< MegaStalk2
Definition: object_type.h:220
< WreckBott1
Definition: object_type.h:158
< MegaStalk1
Definition: object_type.h:219
< Firework
Definition: object_type.h:76
< Teen37
Definition: object_type.h:206
< Home
Definition: object_type.h:232
< RuinBotFactory
Definition: object_type.h:162
< ExchangePost
Definition: object_type.h:53
< AlienWorm
Definition: object_type.h:155
< Greenery0
Definition: object_type.h:79
< Greenery15
Definition: object_type.h:94
< SpaceShip
Definition: object_type.h:38
< TrackedOrgaShooter
Definition: object_type.h:118
< KeyCSpot
Definition: object_type.h:73
< Teen29
Definition: object_type.h:198
< Teen39
Definition: object_type.h:208
< insect-trainer (unused)
Definition: object_type.h:108
< Tree4
Definition: object_type.h:103
< Tree5
Definition: object_type.h:104
< Greenery13
Definition: object_type.h:92
< WingedOrgaShooter
Definition: object_type.h:119
< WheeledGrabber
Definition: object_type.h:109
< Teen33
Definition: object_type.h:202
< StartArea
Definition: object_type.h:51
< MegaStalk3
Definition: object_type.h:221
< Teen19
Definition: object_type.h:188
< TrackedSniffer
Definition: object_type.h:122
< Titanium
Definition: object_type.h:62
< RadarStation
Definition: object_type.h:47
< Scribbler
Definition: object_type.h:131
< Teen2
Definition: object_type.h:171
< BotFactory
Definition: object_type.h:40
< ApolloFlag
Definition: object_type.h:228
< MegaStalk5
Definition: object_type.h:223
< track-trainer (unused)
Definition: object_type.h:106
< Teen21
Definition: object_type.h:190
< Destroyer
Definition: object_type.h:59
< Greenery3
Definition: object_type.h:82
< WingedShooter
Definition: object_type.h:115
< WheeledShooter
Definition: object_type.h:113
< Greenery8
Definition: object_type.h:87
< Teen35
Definition: object_type.h:204
< ApolloModule
Definition: object_type.h:229
< NuclearCell
Definition: object_type.h:64
< AlienSpider
Definition: object_type.h:153
< Portico
Definition: object_type.h:37
< KeyB
Definition: object_type.h:140
< Robby (toto)
Definition: object_type.h:144
< Quartz0
Definition: object_type.h:214
< Derrick
Definition: object_type.h:39
< PowerCaptor
Definition: object_type.h:54
< RuinDoor
Definition: object_type.h:163
< Quartz1
Definition: object_type.h:215
< Greenery17
Definition: object_type.h:96
< LeggedShooter
Definition: object_type.h:116
< Tree3
Definition: object_type.h:102
< Teen17
Definition: object_type.h:186
< TitaniumOre
Definition: object_type.h:60
< Teen13
Definition: object_type.h:182
< TitaniumSpot
Definition: object_type.h:69
< Greenery6
Definition: object_type.h:85
< fly-trainer (unused)
Definition: object_type.h:107
< Teen44
Definition: object_type.h:213
< TrackedShooter
Definition: object_type.h:114
< RuinHeadCamp
Definition: object_type.h:168
< WayPoint
Definition: object_type.h:133
< GreenFlag
Definition: object_type.h:136
< Greenery10
Definition: object_type.h:89
< KeyA
Definition: object_type.h:139
< Teen18
Definition: object_type.h:187
< Greenery12
Definition: object_type.h:91
< Teen24
Definition: object_type.h:193
< Greenery18
Definition: object_type.h:97
< Teen7
Definition: object_type.h:176
< LeggedOrgaShooter
Definition: object_type.h:120
< Teen28
Definition: object_type.h:197
< MegaStalk4
Definition: object_type.h:222
< Teen5
Definition: object_type.h:174
< LeggedGrabber
Definition: object_type.h:112
< NuclearPlant
Definition: object_type.h:50
< ApolloLEM
Definition: object_type.h:226
< WreckBotr2
Definition: object_type.h:161
< RuinRadar
Definition: object_type.h:165
< Greenery11
Definition: object_type.h:90
< Teen26
Definition: object_type.h:195
< WheeledOrgaShooter
Definition: object_type.h:117
< Teen30
Definition: object_type.h:199
< YellowFlag
Definition: object_type.h:137
< Mushroom1
Definition: object_type.h:224
< Mushroom2
Definition: object_type.h:225
< Greenery7
Definition: object_type.h:86
< AutoLab
Definition: object_type.h:49
< Teen16
Definition: object_type.h:185
< Greenery16
Definition: object_type.h:95
< Teen36
Definition: object_type.h:205
< Teen32
Definition: object_type.h:201
< Barrier1
Definition: object_type.h:147
< Target2 (center)
Definition: object_type.h:56
< BlueFlag
Definition: object_type.h:134
< ApolloAntenna
Definition: object_type.h:230
< WheeledSniffer
Definition: object_type.h:121
< BlackBox
Definition: object_type.h:66
< KeyC
Definition: object_type.h:141
< KeyBSpot
Definition: object_type.h:72
< Teen12
Definition: object_type.h:181
< ApolloJeep
Definition: object_type.h:227
< Barrier2
Definition: object_type.h:148
< OrgaMatter
Definition: object_type.h:65
< arrow above object (Visit)
Definition: object_type.h:77
< LeggedSniffer
Definition: object_type.h:124
< Teen42
Definition: object_type.h:211
< MegaStalk0
Definition: object_type.h:218
< Greenery4
Definition: object_type.h:83
< UraniumSpot
Definition: object_type.h:70
< Mine
Definition: object_type.h:75
< WreckBotw1
Definition: object_type.h:156
< RuinConvert
Definition: object_type.h:166
< ResearchCenter
Definition: object_type.h:46
< RepairStation
Definition: object_type.h:43
< PowerStation
Definition: object_type.h:41
< Greenery19
Definition: object_type.h:98
< Teen4
Definition: object_type.h:173
< TargetBot
Definition: object_type.h:130
< Teen0
Definition: object_type.h:169
< AlienAnt
Definition: object_type.h:152
< AlienEgg
Definition: object_type.h:151
< Tree0
Definition: object_type.h:99
< Quartz3
Definition: object_type.h:217
< Teen9
Definition: object_type.h:178
< Teen3
Definition: object_type.h:172
< Teen10
Definition: object_type.h:179
< Quartz2
Definition: object_type.h:216
< Shielder
Definition: object_type.h:128
< TrackedGrabber
Definition: object_type.h:110
< MissionController
Definition: object_type.h:132
< Vault
Definition: object_type.h:57
< Teen38
Definition: object_type.h:207
< Teen11
Definition: object_type.h:180
ObjectType
Type of game object.
Definition: object_type.h:33
< Tree2
Definition: object_type.h:101
< RedFlag
Definition: object_type.h:135
< UraniumOre
Definition: object_type.h:61
< RuinBaseCamp
Definition: object_type.h:167
< PowerCell
Definition: object_type.h:63
< Target1 (gate)
Definition: object_type.h:55
< PowerPlant
Definition: object_type.h:48
< Teen22
Definition: object_type.h:191
< Barrier3
Definition: object_type.h:149
< Teen20
Definition: object_type.h:189
< VioletFlag
Definition: object_type.h:138
< Subber
Definition: object_type.h:129
< Teen15
Definition: object_type.h:184
< AlienQueen
Definition: object_type.h:150
< EndArea
Definition: object_type.h:52
< AlienNest
Definition: object_type.h:45
< WingedSniffer
Definition: object_type.h:123
< PracticeBot
Definition: object_type.h:105
< PowerSpot
Definition: object_type.h:68
< WreckBotr1
Definition: object_type.h:160
< WreckBott2
Definition: object_type.h:159
< Teen8
Definition: object_type.h:177
< Converter
Definition: object_type.h:42
< KeyD
Definition: object_type.h:142
< Stone (Teen34)
Definition: object_type.h:203
< Teen14
Definition: object_type.h:183
< DefenseTower
Definition: object_type.h:44
< KeyASpot
Definition: object_type.h:71
< RuinSupport
Definition: object_type.h:164
< TNT
Definition: object_type.h:67
< Teen31
Definition: object_type.h:200
< Houston
Definition: object_type.h:58
< Greenery9
Definition: object_type.h:88
< Teen40
Definition: object_type.h:209