⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 objecttypes.h

📁 五行MMORPG引擎系统V1.0
💻 H
字号:
//-----------------------------------------------------------------------------
// Torque Game Engine
// Copyright (C) GarageGames.com, Inc.
//-----------------------------------------------------------------------------

#ifndef _OBJECTTYPES_H_
#define _OBJECTTYPES_H_

#include "platform/types.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
{
   /// @name Types used by the SceneObject class
   /// @{
   DefaultObjectType =           0,
   StaticObjectType =            BIT(0),
   /// @}

#ifdef TGE_RPG

   /// @name Basic Engine Types
   /// @{

   ///
   EnvironmentObjectType =       BIT(1),
   TerrainObjectType =           BIT(2),
   InteriorObjectType =          BIT(3),
   WaterObjectType =             BIT(4),
   TriggerObjectType =           BIT(5),
   DecalManagerObjectType =      BIT(6),
   /// @}

   /// @name Game Types
   /// @{
   RPGBaseObjectType			=     BIT(7),
   GameBaseObjectType =          BIT(8),
   ShapeBaseObjectType =         BIT(9),
   PlayerObjectType =            BIT(10),
   CameraObjectType =            BIT(11),
   StaticShapeObjectType =       BIT(12),
   ItemObjectType =              BIT(13),
   VehicleObjectType =           BIT(14),
   VehicleBlockerObjectType =    BIT(15),
   AIObjectType =                BIT(16),
   CorpseObjectType =            BIT(17),
   PhysicalZoneObjectType =      BIT(18),
   StaticTSObjectType =          BIT(19),
   StaticRenderedObjectType =    BIT(20),
   ProjectileObjectType =        BIT(21),
   /// @}


   /// @name Other
   /// @{
   InteriorMapObjectType	=     BIT(22),
   MarkerObjectType			=     BIT(23),
   ExplosionObjectType  =        BIT(24),
   DebrisObjectType =            BIT(25),
   DamagableItemObjectType =     BIT(26),
   /// @}

#else

   /// @name Basic Engine Types
   /// @{

   ///
   EnvironmentObjectType =       BIT(1),
   TerrainObjectType =           BIT(2),
   InteriorObjectType =          BIT(3),
   WaterObjectType =             BIT(4),
   TriggerObjectType =           BIT(5),
   MarkerObjectType =            BIT(6),
   AtlasObjectType   =           BIT(7), // Buy TSE.
   InteriorMapObjectType =       BIT(8),
   DecalManagerObjectType =      BIT(9),
   /// @}

   /// @name 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),
   DebrisObjectType =            BIT(22),
   PhysicalZoneObjectType =      BIT(23),
   StaticTSObjectType =          BIT(24),
   AIObjectType =                BIT(25),
   StaticRenderedObjectType =    BIT(26),
   /// @}

   /// @name Other
   /// The following are allowed types that can be set on datablocks for static shapes
   /// @{
   DamagableItemObjectType =     BIT(27),
   /// @}
#endif
};

#define STATIC_COLLISION_MASK   (   TerrainObjectType    |  \
                                    InteriorObjectType   |  \
                                    StaticObjectType )      \

#define DAMAGEABLE_MASK  ( PlayerObjectType        |  \
                           VehicleObjectType       |  \
                           DamagableItemObjectType )  \

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -