DDraceNetwork Docs
mapitems.h
Go to the documentation of this file.
1/* (c) Magnus Auvinen. See licence.txt in the root of the distribution for more information. */
2/* If you are missing that file, acquire a complete release at teeworlds.com. */
3#ifndef GAME_MAPITEMS_H
4#define GAME_MAPITEMS_H
5
6#include <base/vmath.h>
7
8// layer types
9enum
10{
12 LAYERTYPE_GAME, // unused
20 LAYERTYPE_SOUNDS_DEPRECATED, // deprecated! do not use this, this is just for compatibility reasons
22
31 // High map item type numbers suggest that they use the alternate
32 // format with UUIDs. See src/engine/shared/datafile.cpp for some of
33 // the implementation.
34
42
43 // game layer tiles
44 // TODO define which Layer uses which tiles (needed for mapeditor)
57 //DDRace - Main Lasers
65 //DDRace - Laser Modifiers
75 //DDRace - Plasma
80 //DDRace - Shotgun
83 //DDNet - Removing specific weapon
88 //DDRace - Draggers
92 //Draggers Behind Walls
96 //Doors
98 //End Of Lower Tiles
100 //Start From Top Left
101 //Tile Controllers
124 //Switches
186 //End of higher tiles
187 //Layers
195 //Flags
200 //Rotation
205
213
214 ENTITY_OFFSET = 255 - 16 * 4,
215};
216
217static constexpr size_t MAX_MAPIMAGES = 64;
218static constexpr size_t MAX_MAPSOUNDS = 64;
219
220typedef ivec2 CPoint; // 22.10 fixed point
221typedef ivec4 CColor;
222
223class CQuad
224{
225public:
229
232
235};
236
237class CTile
238{
239public:
240 unsigned char m_Index;
241 unsigned char m_Flags;
242 unsigned char m_Skip;
243 unsigned char m_Reserved;
244};
245
247{
248public:
254};
255
257{
258public:
260};
261
263{
264public:
271};
272
274{
275public:
277};
278
280
282{
283public:
289
292};
293
295{
296public:
302
303 int m_aName[3];
304};
305
307{
308public:
312};
313
315{
316public:
324 static constexpr int VERSION_TEEWORLDS_TILESKIP = 4;
325
328
332
336
339
340 int m_aName[3];
341
342 // DDRace
343
349};
350
352{
353public:
356
360
361 int m_aName[3];
362};
363
365{
366public:
368};
369
370// Represents basic information about envelope points.
371// In upstream Teeworlds, this is only used if all CMapItemEnvelope are version 1 or 2.
373{
374public:
375 enum
376 {
378 };
379
380 int m_Time; // in ms
381 int m_Curvetype; // CURVETYPE_* constants, any unknown value behaves like CURVETYPE_LINEAR
382 int m_aValues[MAX_CHANNELS]; // 1-4 depending on envelope (22.10 fixed point)
383
384 bool operator<(const CEnvPoint &Other) const { return m_Time < Other.m_Time; }
385};
386
387// Represents additional envelope point information for CURVETYPE_BEZIER.
388// In DDNet, these are stored separately in an UUID-based map item.
389// In upstream Teeworlds, CEnvPointBezier_upstream is used instead.
391{
392public:
393 // DeltaX in ms and DeltaY as 22.10 fxp
398};
399
400// Written to maps on upstream Teeworlds for envelope points including bezier information instead of the basic
401// CEnvPoint items, if at least one CMapItemEnvelope with version 3 or higher exists in the map.
403{
404public:
406};
407
408// Used to represent all envelope point information at runtime in editor.
409// (Can eventually be different than CEnvPointBezier_upstream)
411{
412public:
414};
415
417{
418public:
424 static constexpr int VERSION_TEEWORLDS_BEZIER = 3;
425
430 int m_aName[8];
431};
432
434{
435public:
437};
438
440
442{
443public:
444 enum
445 {
449 };
450
452 {
453 public:
454 int m_Width, m_Height; // fxp 22.10
455 };
456
458 {
459 public:
461 };
462
464
465 union
466 {
469 };
470};
471
473{
474public:
477 int m_Pan; // 0 - no panning, 1 - panning
478 int m_TimeDelay; // in s
479 int m_Falloff; // [0,255] // 0 - No falloff, 255 - full
480
485
487};
488
490{
491public:
494
498
499 int m_aName[3];
500};
501
503{
504public:
506
508
511 // Deprecated. Do not read this value, it could be wrong.
512 // Use GetDataSize instead, which returns the de facto size.
513 // Value must still be written for compatibility.
515};
516
517// DDRace
518
520{
521public:
522 unsigned char m_Number;
523 unsigned char m_Type;
524};
525
527{
528public:
529 unsigned char m_Force;
530 unsigned char m_MaxSpeed;
531 unsigned char m_Type;
532 short m_Angle;
533};
534
536{
537public:
538 unsigned char m_Number;
539 unsigned char m_Type;
540 unsigned char m_Flags;
541 unsigned char m_Delay;
542};
543
545{
546public:
547 unsigned char m_Index;
548 unsigned char m_Flags;
550};
551
553{
554public:
555 unsigned char m_Number;
556 unsigned char m_Type;
557};
558
559bool IsValidGameTile(int Index);
560bool IsValidFrontTile(int Index);
561bool IsValidTeleTile(int Index);
562bool IsTeleTileCheckpoint(int Index); // Assumes that Index is a valid tele tile index
563bool IsTeleTileNumberUsed(int Index, bool Checkpoint); // Assumes that Index is a valid tele tile index
564bool IsTeleTileNumberUsedAny(int Index); // Does not check for checkpoint only
565bool IsValidSpeedupTile(int Index);
566bool IsValidSwitchTile(int Index);
567bool IsSwitchTileFlagsUsed(int Index); // Assumes that Index is a valid switch tile index
568bool IsSwitchTileNumberUsed(int Index); // Assumes that Index is a valid switch tile index
569bool IsSwitchTileDelayUsed(int Index); // Assumes that Index is a valid switch tile index
570bool IsValidTuneTile(int Index);
571bool IsValidEntity(int Index);
572bool IsRotatableTile(int Index);
573bool IsCreditsTile(int TileIndex);
574int PackColor(CColor Color);
575
576#endif
Definition: mapitems.h:545
int m_Number
Definition: mapitems.h:549
unsigned char m_Flags
Definition: mapitems.h:548
unsigned char m_Index
Definition: mapitems.h:547
Definition: mapitems.h:403
CEnvPointBezier m_Bezier
Definition: mapitems.h:405
Definition: mapitems.h:391
int m_aInTangentDeltaX[CEnvPoint::MAX_CHANNELS]
Definition: mapitems.h:394
int m_aOutTangentDeltaY[CEnvPoint::MAX_CHANNELS]
Definition: mapitems.h:397
int m_aOutTangentDeltaX[CEnvPoint::MAX_CHANNELS]
Definition: mapitems.h:396
int m_aInTangentDeltaY[CEnvPoint::MAX_CHANNELS]
Definition: mapitems.h:395
Definition: mapitems.h:411
CEnvPointBezier m_Bezier
Definition: mapitems.h:413
Definition: mapitems.h:373
int m_aValues[MAX_CHANNELS]
Definition: mapitems.h:382
@ MAX_CHANNELS
Definition: mapitems.h:377
bool operator<(const CEnvPoint &Other) const
Definition: mapitems.h:384
int m_Curvetype
Definition: mapitems.h:381
int m_Time
Definition: mapitems.h:380
Definition: mapitems.h:417
int m_Channels
Definition: mapitems.h:427
int m_aName[8]
Definition: mapitems.h:430
int m_StartPoint
Definition: mapitems.h:428
int m_Version
Definition: mapitems.h:426
int m_NumPoints
Definition: mapitems.h:429
static constexpr int VERSION_TEEWORLDS_BEZIER
Definition: mapitems.h:424
Definition: mapitems.h:434
int m_Synchronized
Definition: mapitems.h:436
Definition: mapitems.h:282
int m_Version
Definition: mapitems.h:284
int m_StartLayer
Definition: mapitems.h:290
int m_OffsetY
Definition: mapitems.h:286
int m_NumLayers
Definition: mapitems.h:291
int m_OffsetX
Definition: mapitems.h:285
int m_ParallaxY
Definition: mapitems.h:288
int m_ParallaxX
Definition: mapitems.h:287
Definition: mapitems.h:295
int m_ClipX
Definition: mapitems.h:298
int m_ClipW
Definition: mapitems.h:300
int m_aName[3]
Definition: mapitems.h:303
int m_ClipH
Definition: mapitems.h:301
int m_UseClipping
Definition: mapitems.h:297
int m_ClipY
Definition: mapitems.h:299
Definition: mapitems.h:263
int m_ImageName
Definition: mapitems.h:269
int m_ImageData
Definition: mapitems.h:270
int m_Width
Definition: mapitems.h:266
int m_Height
Definition: mapitems.h:267
int m_Version
Definition: mapitems.h:265
int m_External
Definition: mapitems.h:268
Definition: mapitems.h:274
int m_MustBe1
Definition: mapitems.h:276
Definition: mapitems.h:257
int m_Settings
Definition: mapitems.h:259
Definition: mapitems.h:247
int m_Version
Definition: mapitems.h:249
int m_MapVersion
Definition: mapitems.h:251
int m_Author
Definition: mapitems.h:250
int m_License
Definition: mapitems.h:253
int m_Credits
Definition: mapitems.h:252
Definition: mapitems.h:352
int m_Version
Definition: mapitems.h:355
int m_NumQuads
Definition: mapitems.h:357
int m_Data
Definition: mapitems.h:358
int m_Image
Definition: mapitems.h:359
CMapItemLayer m_Layer
Definition: mapitems.h:354
int m_aName[3]
Definition: mapitems.h:361
Definition: mapitems.h:490
int m_Version
Definition: mapitems.h:493
int m_NumSources
Definition: mapitems.h:495
int m_Data
Definition: mapitems.h:496
int m_aName[3]
Definition: mapitems.h:499
int m_Sound
Definition: mapitems.h:497
CMapItemLayer m_Layer
Definition: mapitems.h:492
Definition: mapitems.h:315
int m_Flags
Definition: mapitems.h:331
int m_Version
Definition: mapitems.h:327
int m_Tele
Definition: mapitems.h:344
int m_Tune
Definition: mapitems.h:348
int m_Data
Definition: mapitems.h:338
int m_Front
Definition: mapitems.h:346
CMapItemLayer m_Layer
Definition: mapitems.h:326
int m_aName[3]
Definition: mapitems.h:340
int m_Width
Definition: mapitems.h:329
CColor m_Color
Definition: mapitems.h:333
int m_Image
Definition: mapitems.h:337
static constexpr int VERSION_TEEWORLDS_TILESKIP
Definition: mapitems.h:324
int m_Height
Definition: mapitems.h:330
int m_Switch
Definition: mapitems.h:347
int m_ColorEnvOffset
Definition: mapitems.h:335
int m_Speedup
Definition: mapitems.h:345
int m_ColorEnv
Definition: mapitems.h:334
Definition: mapitems.h:307
int m_Type
Definition: mapitems.h:310
int m_Version
Definition: mapitems.h:309
int m_Flags
Definition: mapitems.h:311
Definition: mapitems.h:503
int m_Version
Definition: mapitems.h:505
int m_SoundDataSize
Definition: mapitems.h:514
int m_External
Definition: mapitems.h:507
int m_SoundData
Definition: mapitems.h:510
int m_SoundName
Definition: mapitems.h:509
Definition: mapitems.h:365
int m_Version
Definition: mapitems.h:367
Definition: mapitems.h:224
CColor m_aColors[4]
Definition: mapitems.h:227
int m_PosEnvOffset
Definition: mapitems.h:231
CPoint m_aPoints[5]
Definition: mapitems.h:226
int m_ColorEnv
Definition: mapitems.h:233
CPoint m_aTexcoords[4]
Definition: mapitems.h:228
int m_PosEnv
Definition: mapitems.h:230
int m_ColorEnvOffset
Definition: mapitems.h:234
Definition: mapitems.h:458
int m_Radius
Definition: mapitems.h:460
Definition: mapitems.h:452
int m_Width
Definition: mapitems.h:454
int m_Height
Definition: mapitems.h:454
Definition: mapitems.h:442
CRectangle m_Rectangle
Definition: mapitems.h:467
CCircle m_Circle
Definition: mapitems.h:468
@ NUM_SHAPES
Definition: mapitems.h:448
@ SHAPE_CIRCLE
Definition: mapitems.h:447
@ SHAPE_RECTANGLE
Definition: mapitems.h:446
int m_Type
Definition: mapitems.h:463
Definition: mapitems.h:473
int m_PosEnvOffset
Definition: mapitems.h:482
int m_PosEnv
Definition: mapitems.h:481
CPoint m_Position
Definition: mapitems.h:475
int m_TimeDelay
Definition: mapitems.h:478
CSoundShape m_Shape
Definition: mapitems.h:486
int m_SoundEnv
Definition: mapitems.h:483
int m_SoundEnvOffset
Definition: mapitems.h:484
int m_Loop
Definition: mapitems.h:476
int m_Falloff
Definition: mapitems.h:479
int m_Pan
Definition: mapitems.h:477
Definition: mapitems.h:527
unsigned char m_Type
Definition: mapitems.h:531
unsigned char m_Force
Definition: mapitems.h:529
unsigned char m_MaxSpeed
Definition: mapitems.h:530
short m_Angle
Definition: mapitems.h:532
Definition: mapitems.h:536
unsigned char m_Type
Definition: mapitems.h:539
unsigned char m_Flags
Definition: mapitems.h:540
unsigned char m_Delay
Definition: mapitems.h:541
unsigned char m_Number
Definition: mapitems.h:538
Definition: mapitems.h:520
unsigned char m_Type
Definition: mapitems.h:523
unsigned char m_Number
Definition: mapitems.h:522
Definition: mapitems.h:238
unsigned char m_Reserved
Definition: mapitems.h:243
unsigned char m_Flags
Definition: mapitems.h:241
unsigned char m_Skip
Definition: mapitems.h:242
unsigned char m_Index
Definition: mapitems.h:240
Definition: mapitems.h:553
unsigned char m_Number
Definition: mapitems.h:555
unsigned char m_Type
Definition: mapitems.h:556
Definition: vmath.h:302
CMapItemEnvelope_v2 CMapItemEnvelope
Definition: mapitems.h:439
bool IsValidTeleTile(int Index)
Definition: mapitems.cpp:46
bool IsCreditsTile(int TileIndex)
Definition: mapitems.cpp:154
@ ENTITY_LASER_O_NORMAL
Definition: mapitems.h:73
@ LAYERTYPE_GAME
Definition: mapitems.h:12
@ LAYERTYPE_TUNE
Definition: mapitems.h:19
@ LAYERTYPE_TELE
Definition: mapitems.h:16
@ LAYERTYPE_FRONT
Definition: mapitems.h:15
@ LAYERTYPE_TILES
Definition: mapitems.h:13
@ TILE_TELE_GRENADE_DISABLE
Definition: mapitems.h:171
@ TILE_SPEED_BOOST_OLD
Definition: mapitems.h:131
@ ENTITY_DOOR
Definition: mapitems.h:97
@ TILE_TIME_CHECKPOINT_FIRST
Definition: mapitems.h:139
@ TILE_WALLJUMP
Definition: mapitems.h:117
@ TILE_CREDITS_7
Definition: mapitems.h:182
@ TILE_EHOOK_ENABLE
Definition: mapitems.h:118
@ MAPITEMTYPE_INFO
Definition: mapitems.h:24
@ LAYERTYPE_INVALID
Definition: mapitems.h:11
@ MAPITEMTYPE_LAYER
Definition: mapitems.h:28
@ TILE_THROUGH
Definition: mapitems.h:108
@ TILE_LUNFREEZE
Definition: mapitems.h:179
@ ENTITY_ARMOR_LASER
Definition: mapitems.h:87
@ ENTITY_POWERUP_NINJA
Definition: mapitems.h:55
@ NUM_CURVETYPES
Definition: mapitems.h:41
@ TILE_CREDITS_6
Definition: mapitems.h:181
@ ENTITY_WEAPON_SHOTGUN
Definition: mapitems.h:53
@ TILESLAYERFLAG_TELE
Definition: mapitems.h:208
@ LAYER_GAME
Definition: mapitems.h:188
@ ENTITY_SPAWN_RED
Definition: mapitems.h:47
@ TILEFLAG_XFLIP
Definition: mapitems.h:196
@ TILE_EHOOK_DISABLE
Definition: mapitems.h:119
@ TILE_ENTITIES_OFF_2
Definition: mapitems.h:185
@ TILE_UNLIMITED_JUMPS_DISABLE
Definition: mapitems.h:158
@ TILE_THROUGH_DIR
Definition: mapitems.h:148
@ TILE_NOHOOK
Definition: mapitems.h:105
@ TILE_NOLASER
Definition: mapitems.h:106
@ TILE_REFILL_JUMPS
Definition: mapitems.h:136
@ ENTITY_LASER_FAST_CW
Definition: mapitems.h:64
@ ENTITY_ARMOR_GRENADE
Definition: mapitems.h:85
@ TILE_FREEZE
Definition: mapitems.h:110
@ CURVETYPE_FAST
Definition: mapitems.h:38
@ CURVETYPE_SLOW
Definition: mapitems.h:37
@ TILE_SOLO_ENABLE
Definition: mapitems.h:122
@ MAPITEMTYPE_ENVELOPE
Definition: mapitems.h:26
@ ENTITY_ARMOR_SHOTGUN
Definition: mapitems.h:84
@ LAYERTYPE_QUADS
Definition: mapitems.h:14
@ ENTITY_ARMOR_1
Definition: mapitems.h:51
@ TILE_STOPA
Definition: mapitems.h:143
@ TILE_TELECHECKIN
Definition: mapitems.h:135
@ LAYER_SWITCH
Definition: mapitems.h:192
@ MAPITEMTYPE_GROUP
Definition: mapitems.h:27
@ TILE_FINISH
Definition: mapitems.h:138
@ TILE_SWITCHTIMEDOPEN
Definition: mapitems.h:125
@ TILE_TELECHECKINEVIL
Definition: mapitems.h:144
@ ENTITY_FLAGSTAND_BLUE
Definition: mapitems.h:50
@ TILESLAYERFLAG_TUNE
Definition: mapitems.h:212
@ TILE_TELEINEVIL
Definition: mapitems.h:111
@ ENTITY_LASER_C_SLOW
Definition: mapitems.h:69
@ TILE_TELE_GUN_DISABLE
Definition: mapitems.h:163
@ TILE_CREDITS_3
Definition: mapitems.h:176
@ TILE_TIME_CHECKPOINT_LAST
Definition: mapitems.h:140
@ TILE_TELE_GRENADE_ENABLE
Definition: mapitems.h:170
@ LAYER_TUNE
Definition: mapitems.h:193
@ TILE_SWITCHOPEN
Definition: mapitems.h:127
@ TILEFLAG_YFLIP
Definition: mapitems.h:197
@ TILE_UNLIMITED_JUMPS_ENABLE
Definition: mapitems.h:167
@ TILE_ADD_TIME
Definition: mapitems.h:156
@ LAYERTYPE_SPEEDUP
Definition: mapitems.h:17
@ ENTITY_CRAZY_SHOTGUN_EX
Definition: mapitems.h:81
@ TILE_STOP
Definition: mapitems.h:141
@ LAYERTYPE_SWITCH
Definition: mapitems.h:18
@ TILEFLAG_OPAQUE
Definition: mapitems.h:198
@ TILE_CREDITS_4
Definition: mapitems.h:177
@ ENTITY_LASER_SHORT
Definition: mapitems.h:66
@ TILE_CREDITS_5
Definition: mapitems.h:180
@ TILE_TELEIN
Definition: mapitems.h:129
@ TILE_UNFREEZE
Definition: mapitems.h:112
@ ENTITY_PLASMAE
Definition: mapitems.h:76
@ ENTITY_LASER_C_FAST
Definition: mapitems.h:71
@ TILE_JUMP
Definition: mapitems.h:109
@ ENTITY_CRAZY_SHOTGUN
Definition: mapitems.h:82
@ ROTATION_270
Definition: mapitems.h:204
@ ENTITY_DRAGGER_STRONG
Definition: mapitems.h:91
@ TILESLAYERFLAG_GAME
Definition: mapitems.h:207
@ CURVETYPE_BEZIER
Definition: mapitems.h:40
@ CURVETYPE_STEP
Definition: mapitems.h:35
@ LAYERTYPE_SOUNDS
Definition: mapitems.h:21
@ LAYERFLAG_DETAIL
Definition: mapitems.h:206
@ TILE_TELECHECKOUT
Definition: mapitems.h:134
@ TILE_OLDLASER
Definition: mapitems.h:150
@ TILE_DUNFREEZE
Definition: mapitems.h:114
@ TILE_NPC_ENABLE
Definition: mapitems.h:166
@ TILE_SPEED_BOOST
Definition: mapitems.h:132
@ ENTITY_SPAWN_BLUE
Definition: mapitems.h:48
@ ENTITY_LASER_SLOW_CW
Definition: mapitems.h:62
@ ENTITY_DRAGGER_WEAK_NW
Definition: mapitems.h:93
@ TILE_ALLOW_TELE_GUN
Definition: mapitems.h:164
@ TILE_HIT_ENABLE
Definition: mapitems.h:120
@ TILE_TELEINWEAPON
Definition: mapitems.h:115
@ TILESLAYERFLAG_FRONT
Definition: mapitems.h:210
@ ENTITY_PLASMAU
Definition: mapitems.h:79
@ ROTATION_0
Definition: mapitems.h:201
@ CURVETYPE_LINEAR
Definition: mapitems.h:36
@ NUM_LAYERS
Definition: mapitems.h:194
@ ENTITY_LASER_NORMAL_CCW
Definition: mapitems.h:59
@ ENTITY_OFFSET
Definition: mapitems.h:214
@ TILEFLAG_ROTATE
Definition: mapitems.h:199
@ TILE_TELEOUT
Definition: mapitems.h:130
@ ENTITY_DRAGGER_NORMAL
Definition: mapitems.h:90
@ TILE_ALLOW_BLUE_TELE_GUN
Definition: mapitems.h:165
@ TILE_NPH_DISABLE
Definition: mapitems.h:160
@ ENTITY_LASER_MEDIUM
Definition: mapitems.h:67
@ ENTITY_SPAWN
Definition: mapitems.h:46
@ TILE_ENTITIES_OFF_1
Definition: mapitems.h:184
@ TILE_HIT_DISABLE
Definition: mapitems.h:121
@ TILE_NPC_DISABLE
Definition: mapitems.h:157
@ MAPITEMTYPE_IMAGE
Definition: mapitems.h:25
@ TILE_SWITCHCLOSE
Definition: mapitems.h:128
@ TILE_SUBTRACT_TIME
Definition: mapitems.h:161
@ TILESLAYERFLAG_SWITCH
Definition: mapitems.h:211
@ CURVETYPE_SMOOTH
Definition: mapitems.h:39
@ ENTITY_LASER_STOP
Definition: mapitems.h:61
@ LAYERTYPE_SOUNDS_DEPRECATED
Definition: mapitems.h:20
@ TILE_JETPACK_ENABLE
Definition: mapitems.h:168
@ TILE_TELE_GUN_ENABLE
Definition: mapitems.h:162
@ ENTITY_DRAGGER_WEAK
Definition: mapitems.h:89
@ TILE_SOLID
Definition: mapitems.h:103
@ ENTITY_ARMOR_NINJA
Definition: mapitems.h:86
@ TILE_UNLOCK_TEAM
Definition: mapitems.h:155
@ ENTITY_LASER_FAST_CCW
Definition: mapitems.h:58
@ ENTITY_DRAGGER_NORMAL_NW
Definition: mapitems.h:94
@ TILE_THROUGH_ALL
Definition: mapitems.h:147
@ TILE_THROUGH_CUT
Definition: mapitems.h:107
@ TILE_TELECHECK
Definition: mapitems.h:133
@ TILE_SWITCHTIMEDCLOSE
Definition: mapitems.h:126
@ ENTITY_LASER_O_FAST
Definition: mapitems.h:74
@ TILE_SOLO_DISABLE
Definition: mapitems.h:123
@ TILE_CP
Definition: mapitems.h:145
@ ENTITY_LASER_LONG
Definition: mapitems.h:68
@ ENTITY_PLASMAF
Definition: mapitems.h:77
@ ENTITY_LASER_C_NORMAL
Definition: mapitems.h:70
@ ENTITY_NULL
Definition: mapitems.h:45
@ TILE_DEATH
Definition: mapitems.h:104
@ ENTITY_LASER_O_SLOW
Definition: mapitems.h:72
@ ENTITY_WEAPON_LASER
Definition: mapitems.h:56
@ LAYER_TELE
Definition: mapitems.h:190
@ ENTITY_WEAPON_GRENADE
Definition: mapitems.h:54
@ TILE_TELE_LASER_ENABLE
Definition: mapitems.h:172
@ ENTITY_PLASMA
Definition: mapitems.h:78
@ MAPITEMTYPE_VERSION
Definition: mapitems.h:23
@ TILESLAYERFLAG_SPEEDUP
Definition: mapitems.h:209
@ TILE_TELE_LASER_DISABLE
Definition: mapitems.h:173
@ TILE_CREDITS_2
Definition: mapitems.h:175
@ NUM_ENTITIES
Definition: mapitems.h:99
@ ROTATION_180
Definition: mapitems.h:203
@ ENTITY_LASER_SLOW_CCW
Definition: mapitems.h:60
@ MAPITEMTYPE_ENVPOINTS
Definition: mapitems.h:29
@ LAYER_FRONT
Definition: mapitems.h:189
@ TILE_CREDITS_1
Definition: mapitems.h:174
@ TILE_START
Definition: mapitems.h:137
@ ENTITY_DRAGGER_STRONG_NW
Definition: mapitems.h:95
@ LAYER_SPEEDUP
Definition: mapitems.h:191
@ TILE_NOHIT
Definition: mapitems.h:153
@ TILE_DFREEZE
Definition: mapitems.h:113
@ TILE_STOPS
Definition: mapitems.h:142
@ TILE_JETPACK_DISABLE
Definition: mapitems.h:159
@ TILE_EHOOK
Definition: mapitems.h:152
@ TILE_AIR
Definition: mapitems.h:102
@ ENTITY_FLAGSTAND_RED
Definition: mapitems.h:49
@ ENTITY_LASER_NORMAL_CW
Definition: mapitems.h:63
@ ENTITY_HEALTH_1
Definition: mapitems.h:52
@ MAPITEMTYPE_SOUND
Definition: mapitems.h:30
@ TILE_NPH
Definition: mapitems.h:154
@ TILE_TELEINHOOK
Definition: mapitems.h:116
@ ROTATION_90
Definition: mapitems.h:202
@ TILE_NPH_ENABLE
Definition: mapitems.h:169
@ TILE_CREDITS_8
Definition: mapitems.h:183
@ TILE_TUNE
Definition: mapitems.h:149
@ TILE_CP_F
Definition: mapitems.h:146
@ TILE_NPC
Definition: mapitems.h:151
@ TILE_LFREEZE
Definition: mapitems.h:178
ivec2 CPoint
Definition: mapitems.h:220
ivec4 CColor
Definition: mapitems.h:221
static constexpr size_t MAX_MAPIMAGES
Definition: mapitems.h:217
bool IsSwitchTileFlagsUsed(int Index)
Definition: mapitems.cpp:103
bool IsSwitchTileDelayUsed(int Index)
Definition: mapitems.cpp:119
static constexpr size_t MAX_MAPSOUNDS
Definition: mapitems.h:218
bool IsValidSwitchTile(int Index)
Definition: mapitems.cpp:84
bool IsRotatableTile(int Index)
Definition: mapitems.cpp:140
bool IsTeleTileNumberUsed(int Index, bool Checkpoint)
Definition: mapitems.cpp:65
bool IsTeleTileCheckpoint(int Index)
Definition: mapitems.cpp:60
bool IsValidGameTile(int Index)
Definition: mapitems.cpp:3
bool IsTeleTileNumberUsedAny(int Index)
Definition: mapitems.cpp:73
int PackColor(CColor Color)
Definition: mapitems.cpp:167
bool IsValidTuneTile(int Index)
Definition: mapitems.cpp:125
bool IsValidEntity(int Index)
Definition: mapitems.cpp:130
CMapItemImage_v1 CMapItemImage
Definition: mapitems.h:279
bool IsSwitchTileNumberUsed(int Index)
Definition: mapitems.cpp:110
bool IsValidSpeedupTile(int Index)
Definition: mapitems.cpp:79
bool IsValidFrontTile(int Index)
Definition: mapitems.cpp:24