Torque3D Documentation / _generateds / afxEffectDefs.h

afxEffectDefs.h

Engine/source/afx/afxEffectDefs.h

More...

Classes:

Detailed Description

  1
  2
  3//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~//
  4// Arcane-FX for MIT Licensed Open Source version of Torque 3D from GarageGames
  5// Copyright (C) 2015 Faust Logic, Inc.
  6//
  7// Permission is hereby granted, free of charge, to any person obtaining a copy
  8// of this software and associated documentation files (the "Software"), to
  9// deal in the Software without restriction, including without limitation the
 10// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 11// sell copies of the Software, and to permit persons to whom the Software is
 12// furnished to do so, subject to the following conditions:
 13//
 14// The above copyright notice and this permission notice shall be included in
 15// all copies or substantial portions of the Software.
 16//
 17// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 18// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 19// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 20// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 21// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
 23// IN THE SOFTWARE.
 24//
 25//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~//
 26
 27#ifndef _AFX_EFFECT_DEFS_H_
 28#define _AFX_EFFECT_DEFS_H_
 29
 30#include "afx/arcaneFX.h"
 31
 32//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~//
 33// afxEffectBASE
 34
 35class afxEffectDefs
 36{
 37public:
 38
 39  enum
 40  {
 41    MAX_EFFECTS_PER_PHRASE  = 1023,
 42    EFFECTS_PER_PHRASE_BITS = 10
 43  };
 44
 45  // effect networking
 46  enum
 47  {
 48    SERVER_ONLY       = BIT(0),
 49    SCOPE_ALWAYS      = BIT(1),
 50    GHOSTABLE         = BIT(2),
 51    CLIENT_ONLY       = BIT(3),
 52    SERVER_AND_CLIENT = BIT(4)
 53  };
 54  
 55  // effect condititons
 56  enum 
 57  {
 58    DISABLED = BIT(0),
 59    ENABLED = BIT(1),
 60    FAILING = BIT(2),
 61    ALIVE = ENABLED,
 62    DEAD = DISABLED,
 63    DYING = FAILING,
 64    //
 65    IMPACTED_SOMETHING  = BIT(31),
 66    IMPACTED_TARGET     = BIT(30),
 67    IMPACTED_PRIMARY    = BIT(29),
 68    IMPACT_IN_WATER     = BIT(28),
 69    CASTER_IN_WATER     = BIT(27),
 70  };
 71
 72  enum
 73  {
 74    REQUIRES_STOP     = BIT(0),
 75    RUNS_ON_SERVER    = BIT(1),
 76    RUNS_ON_CLIENT    = BIT(2),
 77  };
 78
 79  enum 
 80  {
 81    MAX_XFM_MODIFIERS = 32,
 82    INFINITE_LIFETIME = (24*60*60)
 83  };
 84
 85  enum
 86  {
 87    POINT_CONSTRAINT,
 88    TRANSFORM_CONSTRAINT,
 89    OBJECT_CONSTRAINT,
 90    CAMERA_CONSTRAINT,
 91    OBJECT_CONSTRAINT_SANS_OBJ,
 92    OBJECT_CONSTRAINT_SANS_SHAPE,
 93    UNDEFINED_CONSTRAINT_TYPE
 94  };
 95
 96  enum
 97  {
 98    DIRECT_DAMAGE,
 99    DAMAGE_OVER_TIME,
100    AREA_DAMAGE
101  };
102
103  enum
104  {
105    TIMING_DELAY      = BIT(0), 
106    TIMING_LIFETIME   = BIT(1),
107    TIMING_FADE_IN    = BIT(2),
108    TIMING_FADE_OUT   = BIT(3),
109    TIMING_BITS       = 2
110  };
111};
112
113//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~//~~~~~~~~~~~~~~~~~~~~~//
114
115#endif // _AFX_EFFECT_DEFS_H_
116