summaryrefslogtreecommitdiffstats
path: root/src/object/object.h
diff options
context:
space:
mode:
authorPiotr Dziwinski <piotrdz@gmail.com>2012-10-17 23:16:19 +0200
committerPiotr Dziwinski <piotrdz@gmail.com>2012-10-17 23:16:19 +0200
commit0305e0ba17681a43053d1f948ef90cf203b1d640 (patch)
tree908cb78f057e99238597c98a8e5bb7b4850ddf21 /src/object/object.h
parentf6e27099b294d55c15a6b5dad13cda7730a17a71 (diff)
downloadcolobot-0305e0ba17681a43053d1f948ef90cf203b1d640.tar.gz
colobot-0305e0ba17681a43053d1f948ef90cf203b1d640.tar.bz2
colobot-0305e0ba17681a43053d1f948ef90cf203b1d640.zip
Restext rewrite to runtime initialized arrays
Diffstat (limited to 'src/object/object.h')
-rw-r--r--src/object/object.h254
1 files changed, 252 insertions, 2 deletions
diff --git a/src/object/object.h b/src/object/object.h
index ae3b596..8d8baca 100644
--- a/src/object/object.h
+++ b/src/object/object.h
@@ -25,8 +25,6 @@
#include "graphics/engine/engine.h"
#include "graphics/engine/camera.h"
-#include "object/object_ids.h"
-
#include "sound/sound.h"
@@ -47,6 +45,258 @@ class CDisplayText;
}
+/**
+ * \enum ObjectType
+ * \brief Type of game object
+ */
+enum ObjectType
+{
+ OBJECT_NULL = 0, //! < object destroyed
+ OBJECT_FIX = 1, //! < stationary scenery
+ OBJECT_PORTICO = 2, //! < gantry
+ OBJECT_BASE = 3, //! < great main base
+ OBJECT_DERRICK = 4, //! < derrick set
+ OBJECT_FACTORY = 5, //! < factory set
+ OBJECT_STATION = 6, //! < recharging station
+ OBJECT_CONVERT = 7, //! < converter station
+ OBJECT_REPAIR = 8, //! < reparation
+ OBJECT_TOWER = 9, //! < defense tower
+ OBJECT_NEST = 10, //! < nest
+ OBJECT_RESEARCH = 11, //! < research center
+ OBJECT_RADAR = 12, //! < radar
+ OBJECT_ENERGY = 13, //! < energy factory
+ OBJECT_LABO = 14, //! < analytical laboratory for insect
+ OBJECT_NUCLEAR = 15, //! < nuclear power plant
+ OBJECT_START = 16, //! < starting
+ OBJECT_END = 17, //! < finish
+ OBJECT_INFO = 18, //! < information terminal
+ OBJECT_PARA = 19, //! < lightning conductor
+ OBJECT_TARGET1 = 20, //! < gate target
+ OBJECT_TARGET2 = 21, //! < center target
+ OBJECT_SAFE = 22, //! < safe
+ OBJECT_HUSTON = 23, //! < control centre
+ OBJECT_DESTROYER = 24, //! < destroyer
+ OBJECT_FRET = 30, //! < transportable
+ OBJECT_STONE = 31, //! < stone
+ OBJECT_URANIUM = 32, //! < uranium
+ OBJECT_METAL = 33, //! < metal
+ OBJECT_POWER = 34, //! < normal battery
+ OBJECT_ATOMIC = 35, //! < atomic battery
+ OBJECT_BULLET = 36, //! < bullet
+ OBJECT_BBOX = 37, //! < black-box
+ OBJECT_TNT = 38, //! < box of TNT
+ OBJECT_SCRAP1 = 40, //! < metal waste
+ OBJECT_SCRAP2 = 41, //! < metal waste
+ OBJECT_SCRAP3 = 42, //! < metal waste
+ OBJECT_SCRAP4 = 43, //! < plastic waste
+ OBJECT_SCRAP5 = 44, //! < plastic waste
+ OBJECT_MARKPOWER = 50, //! < mark underground energy source
+ OBJECT_MARKSTONE = 51, //! < mark underground ore
+ OBJECT_MARKURANIUM = 52, //! < mark underground uranium
+ OBJECT_MARKKEYa = 53, //! < mark underground key
+ OBJECT_MARKKEYb = 54, //! < mark underground key
+ OBJECT_MARKKEYc = 55, //! < mark underground key
+ OBJECT_MARKKEYd = 56, //! < mark underground key
+ OBJECT_BOMB = 60, //! < bomb
+ OBJECT_WINFIRE = 61, //! < fireworks
+ OBJECT_SHOW = 62, //! < shows a place
+ OBJECT_BAG = 63, //! < survival bag
+ OBJECT_PLANT0 = 70, //! < plant 0
+ OBJECT_PLANT1 = 71, //! < plant 1
+ OBJECT_PLANT2 = 72, //! < plant 2
+ OBJECT_PLANT3 = 73, //! < plant 3
+ OBJECT_PLANT4 = 74, //! < plant 4
+ OBJECT_PLANT5 = 75, //! < plant 5
+ OBJECT_PLANT6 = 76, //! < plant 6
+ OBJECT_PLANT7 = 77, //! < plant 7
+ OBJECT_PLANT8 = 78, //! < plant 8
+ OBJECT_PLANT9 = 79, //! < plant 9
+ OBJECT_PLANT10 = 80, //! < plant 10
+ OBJECT_PLANT11 = 81, //! < plant 11
+ OBJECT_PLANT12 = 82, //! < plant 12
+ OBJECT_PLANT13 = 83, //! < plant 13
+ OBJECT_PLANT14 = 84, //! < plant 14
+ OBJECT_PLANT15 = 85, //! < plant 15
+ OBJECT_PLANT16 = 86, //! < plant 16
+ OBJECT_PLANT17 = 87, //! < plant 17
+ OBJECT_PLANT18 = 88, //! < plant 18
+ OBJECT_PLANT19 = 89, //! < plant 19
+ OBJECT_TREE0 = 90, //! < tree 0
+ OBJECT_TREE1 = 91, //! < tree 1
+ OBJECT_TREE2 = 92, //! < tree 2
+ OBJECT_TREE3 = 93, //! < tree 3
+ OBJECT_TREE4 = 94, //! < tree 4
+ OBJECT_TREE5 = 95, //! < tree 5
+ OBJECT_TREE6 = 96, //! < tree 6
+ OBJECT_TREE7 = 97, //! < tree 7
+ OBJECT_TREE8 = 98, //! < tree 8
+ OBJECT_TREE9 = 99, //! < tree 9
+ OBJECT_MOBILEwt = 100, //! < wheel-trainer
+ OBJECT_MOBILEtt = 101, //! < track-trainer
+ OBJECT_MOBILEft = 102, //! < fly-trainer
+ OBJECT_MOBILEit = 103, //! < insect-trainer
+ OBJECT_MOBILEwa = 110, //! < wheel-arm
+ OBJECT_MOBILEta = 111, //! < track-arm
+ OBJECT_MOBILEfa = 112, //! < fly-arm
+ OBJECT_MOBILEia = 113, //! < insect-arm
+ OBJECT_MOBILEwc = 120, //! < wheel-cannon
+ OBJECT_MOBILEtc = 121, //! < track-cannon
+ OBJECT_MOBILEfc = 122, //! < fly-cannon
+ OBJECT_MOBILEic = 123, //! < insect-cannon
+ OBJECT_MOBILEwi = 130, //! < wheel-insect-cannon
+ OBJECT_MOBILEti = 131, //! < track-insect-cannon
+ OBJECT_MOBILEfi = 132, //! < fly-insect-cannon
+ OBJECT_MOBILEii = 133, //! < insect-insect-cannon
+ OBJECT_MOBILEws = 140, //! < wheel-search
+ OBJECT_MOBILEts = 141, //! < track-search
+ OBJECT_MOBILEfs = 142, //! < fly-search
+ OBJECT_MOBILEis = 143, //! < insect-search
+ OBJECT_MOBILErt = 200, //! < roller-terraform
+ OBJECT_MOBILErc = 201, //! < roller-canon
+ OBJECT_MOBILErr = 202, //! < roller-recover
+ OBJECT_MOBILErs = 203, //! < roller-shield
+ OBJECT_MOBILEsa = 210, //! < submarine
+ OBJECT_MOBILEtg = 211, //! < training target
+ OBJECT_MOBILEdr = 212, //! < robot drawing
+ OBJECT_WAYPOINT = 250, //! < waypoint
+ OBJECT_FLAGb = 260, //! < blue flag
+ OBJECT_FLAGr = 261, //! < red flag
+ OBJECT_FLAGg = 262, //! < green flag
+ OBJECT_FLAGy = 263, //! < yellow flag
+ OBJECT_FLAGv = 264, //! < violet flag
+ OBJECT_KEYa = 270, //! < key a
+ OBJECT_KEYb = 271, //! < key b
+ OBJECT_KEYc = 272, //! < key c
+ OBJECT_KEYd = 273, //! < key d
+ OBJECT_HUMAN = 300, //! < human
+ OBJECT_TOTO = 301, //! < toto
+ OBJECT_TECH = 302, //! < technician
+ OBJECT_BARRIER0 = 400, //! < barrier
+ OBJECT_BARRIER1 = 401, //! < barrier
+ OBJECT_BARRIER2 = 402, //! < barrier
+ OBJECT_BARRIER3 = 403, //! < barrier
+ OBJECT_BARRIER4 = 404, //! < barrier
+ OBJECT_MOTHER = 500, //! < insect queen
+ OBJECT_EGG = 501, //! < egg
+ OBJECT_ANT = 502, //! < ant
+ OBJECT_SPIDER = 503, //! < spider
+ OBJECT_BEE = 504, //! < bee
+ OBJECT_WORM = 505, //! < worm
+ OBJECT_RUINmobilew1 = 600, //! < ruin 1
+ OBJECT_RUINmobilew2 = 601, //! < ruin 1
+ OBJECT_RUINmobilet1 = 602, //! < ruin 2
+ OBJECT_RUINmobilet2 = 603, //! < ruin 2
+ OBJECT_RUINmobiler1 = 604, //! < ruin 3
+ OBJECT_RUINmobiler2 = 605, //! < ruin 3
+ OBJECT_RUINfactory = 606, //! < ruin 4
+ OBJECT_RUINdoor = 607, //! < ruin 5
+ OBJECT_RUINsupport = 608, //! < ruin 6
+ OBJECT_RUINradar = 609, //! < ruin 7
+ OBJECT_RUINconvert = 610, //! < ruin 8
+ OBJECT_RUINbase = 611, //! < ruin 9
+ OBJECT_RUINhead = 612, //! < ruin 10
+ OBJECT_TEEN0 = 620, //! < toy
+ OBJECT_TEEN1 = 621, //! < toy
+ OBJECT_TEEN2 = 622, //! < toy
+ OBJECT_TEEN3 = 623, //! < toy
+ OBJECT_TEEN4 = 624, //! < toy
+ OBJECT_TEEN5 = 625, //! < toy
+ OBJECT_TEEN6 = 626, //! < toy
+ OBJECT_TEEN7 = 627, //! < toy
+ OBJECT_TEEN8 = 628, //! < toy
+ OBJECT_TEEN9 = 629, //! < toy
+ OBJECT_TEEN10 = 630, //! < toy
+ OBJECT_TEEN11 = 631, //! < toy
+ OBJECT_TEEN12 = 632, //! < toy
+ OBJECT_TEEN13 = 633, //! < toy
+ OBJECT_TEEN14 = 634, //! < toy
+ OBJECT_TEEN15 = 635, //! < toy
+ OBJECT_TEEN16 = 636, //! < toy
+ OBJECT_TEEN17 = 637, //! < toy
+ OBJECT_TEEN18 = 638, //! < toy
+ OBJECT_TEEN19 = 639, //! < toy
+ OBJECT_TEEN20 = 640, //! < toy
+ OBJECT_TEEN21 = 641, //! < toy
+ OBJECT_TEEN22 = 642, //! < toy
+ OBJECT_TEEN23 = 643, //! < toy
+ OBJECT_TEEN24 = 644, //! < toy
+ OBJECT_TEEN25 = 645, //! < toy
+ OBJECT_TEEN26 = 646, //! < toy
+ OBJECT_TEEN27 = 647, //! < toy
+ OBJECT_TEEN28 = 648, //! < toy
+ OBJECT_TEEN29 = 649, //! < toy
+ OBJECT_TEEN30 = 650, //! < toy
+ OBJECT_TEEN31 = 651, //! < toy
+ OBJECT_TEEN32 = 652, //! < toy
+ OBJECT_TEEN33 = 653, //! < toy
+ OBJECT_TEEN34 = 654, //! < toy
+ OBJECT_TEEN35 = 655, //! < toy
+ OBJECT_TEEN36 = 656, //! < toy
+ OBJECT_TEEN37 = 657, //! < toy
+ OBJECT_TEEN38 = 658, //! < toy
+ OBJECT_TEEN39 = 659, //! < toy
+ OBJECT_TEEN40 = 660, //! < toy
+ OBJECT_TEEN41 = 661, //! < toy
+ OBJECT_TEEN42 = 662, //! < toy
+ OBJECT_TEEN43 = 663, //! < toy
+ OBJECT_TEEN44 = 664, //! < toy
+ OBJECT_TEEN45 = 665, //! < toy
+ OBJECT_TEEN46 = 666, //! < toy
+ OBJECT_TEEN47 = 667, //! < toy
+ OBJECT_TEEN48 = 668, //! < toy
+ OBJECT_TEEN49 = 669, //! < toy
+ OBJECT_QUARTZ0 = 700, //! < crystal 0
+ OBJECT_QUARTZ1 = 701, //! < crystal 1
+ OBJECT_QUARTZ2 = 702, //! < crystal 2
+ OBJECT_QUARTZ3 = 703, //! < crystal 3
+ OBJECT_QUARTZ4 = 704, //! < crystal 4
+ OBJECT_QUARTZ5 = 705, //! < crystal 5
+ OBJECT_QUARTZ6 = 706, //! < crystal 6
+ OBJECT_QUARTZ7 = 707, //! < crystal 7
+ OBJECT_QUARTZ8 = 708, //! < crystal 8
+ OBJECT_QUARTZ9 = 709, //! < crystal 9
+ OBJECT_ROOT0 = 710, //! < root 0
+ OBJECT_ROOT1 = 711, //! < root 1
+ OBJECT_ROOT2 = 712, //! < root 2
+ OBJECT_ROOT3 = 713, //! < root 3
+ OBJECT_ROOT4 = 714, //! < root 4
+ OBJECT_ROOT5 = 715, //! < root 5
+ OBJECT_ROOT6 = 716, //! < root 6
+ OBJECT_ROOT7 = 717, //! < root 7
+ OBJECT_ROOT8 = 718, //! < root 8
+ OBJECT_ROOT9 = 719, //! < root 9
+ OBJECT_SEAWEED0 = 720, //! < seaweed 0
+ OBJECT_SEAWEED1 = 721, //! < seaweed 1
+ OBJECT_SEAWEED2 = 722, //! < seaweed 2
+ OBJECT_SEAWEED3 = 723, //! < seaweed 3
+ OBJECT_SEAWEED4 = 724, //! < seaweed 4
+ OBJECT_SEAWEED5 = 725, //! < seaweed 5
+ OBJECT_SEAWEED6 = 726, //! < seaweed 6
+ OBJECT_SEAWEED7 = 727, //! < seaweed 7
+ OBJECT_SEAWEED8 = 728, //! < seaweed 8
+ OBJECT_SEAWEED9 = 729, //! < seaweed 9
+ OBJECT_MUSHROOM0 = 730, //! < mushroom 0
+ OBJECT_MUSHROOM1 = 731, //! < mushroom 1
+ OBJECT_MUSHROOM2 = 732, //! < mushroom 2
+ OBJECT_MUSHROOM3 = 733, //! < mushroom 3
+ OBJECT_MUSHROOM4 = 734, //! < mushroom 4
+ OBJECT_MUSHROOM5 = 735, //! < mushroom 5
+ OBJECT_MUSHROOM6 = 736, //! < mushroom 6
+ OBJECT_MUSHROOM7 = 737, //! < mushroom 7
+ OBJECT_MUSHROOM8 = 738, //! < mushroom 8
+ OBJECT_MUSHROOM9 = 739, //! < mushroom 9
+ OBJECT_APOLLO1 = 900, //! < apollo lem
+ OBJECT_APOLLO2 = 901, //! < apollo jeep
+ OBJECT_APOLLO3 = 902, //! < apollo flag
+ OBJECT_APOLLO4 = 903, //! < apollo module
+ OBJECT_APOLLO5 = 904, //! < apollo antenna
+ OBJECT_HOME1 = 910, //! < home 1
+
+ OBJECT_MAX = 1000 //! < number of values
+};
+
+
+
// The father of all parts must always be the part number zero!
const int OBJECTMAXPART = 40;