mirror of
https://github.com/tribes2/engine.git
synced 2026-01-21 04:04:46 +00:00
79 lines
2.7 KiB
C
79 lines
2.7 KiB
C
//-----------------------------------------------------------------------------
|
|
// V12 Engine
|
|
//
|
|
// Copyright (c) 2001 GarageGames.Com
|
|
// Portions Copyright (c) 2001 by Sierra Online, Inc.
|
|
//-----------------------------------------------------------------------------
|
|
|
|
#ifndef _OBJECTTYPES_H_
|
|
#define _OBJECTTYPES_H_
|
|
|
|
// Types used for SimObject type masks (SimObject::mTypeMask)
|
|
//
|
|
|
|
/* NB! If a new object type is added, don't forget to add it to the
|
|
* consoleInit function in simBase.cc
|
|
*/
|
|
|
|
enum SimObjectTypes
|
|
{
|
|
#define bit(x) (1 << (x))
|
|
|
|
// Types used by the SceneObject class
|
|
DefaultObjectType = 0,
|
|
StaticObjectType = bit(0),
|
|
|
|
// Basic Engine Types
|
|
EnvironmentObjectType = bit(1),
|
|
TerrainObjectType = bit(2),
|
|
InteriorObjectType = bit(3),
|
|
WaterObjectType = bit(4),
|
|
TriggerObjectType = bit(5),
|
|
MarkerObjectType = bit(6),
|
|
UNUSED_AVAILABLE = bit(7),
|
|
ForceFieldObjectType = bit(8),
|
|
DecalManagerObjectType = bit(9),
|
|
|
|
// Game Types
|
|
GameBaseObjectType = bit(10),
|
|
ShapeBaseObjectType = bit(11),
|
|
CameraObjectType = bit(12),
|
|
StaticShapeObjectType = bit(13),
|
|
PlayerObjectType = bit(14),
|
|
ItemObjectType = bit(15),
|
|
VehicleObjectType = bit(16),
|
|
VehicleBlockerObjectType = bit(17),
|
|
ProjectileObjectType = bit(18),
|
|
ExplosionObjectType = bit(19),
|
|
CorpseObjectType = bit(20),
|
|
TurretObjectType = bit(21),
|
|
DebrisObjectType = bit(22),
|
|
PhysicalZoneObjectType = bit(23),
|
|
StaticTSObjectType = bit(24),
|
|
GuiControlObjectType = bit(25),
|
|
|
|
StaticRenderedObjectType = bit(26),
|
|
|
|
// The following are allowed types that can be set on datablocks for static shapes
|
|
//
|
|
DamagableItemObjectType = bit(27),
|
|
SensorObjectType = bit(28),
|
|
StationObjectType = bit(29),
|
|
GeneratorObjectType = bit(30)
|
|
};
|
|
|
|
#define STATIC_COLLISION_MASK ( TerrainObjectType | \
|
|
InteriorObjectType | \
|
|
ForceFieldObjectType | \
|
|
StaticObjectType ) \
|
|
|
|
#define DAMAGEABLE_MASK ( PlayerObjectType | \
|
|
VehicleObjectType | \
|
|
StationObjectType | \
|
|
GeneratorObjectType | \
|
|
SensorObjectType | \
|
|
DamagableItemObjectType | \
|
|
TurretObjectType ) \
|
|
|
|
#endif
|