My Project
AnimTable.h
1 #pragma once
2 #include <string>
3 #include <map>
4 
5 namespace ParaEngine
6 {
7 
9  class CAnimTable
10  {
11  private:
12  std::map<int, int> m_AnimDefaultMaps;
13  std::map<std::string, int> m_AnimNameMaps;
14  public:
15  CAnimTable(void);
16  ~CAnimTable(void);
17  public:
22  static int GetAnimIDByName(const char* sName);
31  static int GetDefaultAnimIDof(int nID);
33  static bool IsWalkAnimation(int nID);
34  public:
36  static CAnimTable* GetInstance();
37  };
38 
41  {
42  ANIM_STAND=0,
43  ANIM_DEATH=1,
44  ANIM_SPELL=2,
45  ANIM_STOP=3,
46  ANIM_WALK=4,
47  ANIM_RUN=5,
48  ANIM_DEAD=6,
49  ANIM_RISE=7,
50  ANIM_STANDWOUND=8,
51  ANIM_COMBATWOUND=9,
52  ANIM_COMBATCRITICAL=10,
53  ANIM_SHUFFLELEFT=11,
54  ANIM_SHUFFLERIGHT=12,
55  ANIM_WALKBACKWARDS=13,
56  ANIM_STUN=14,
57  ANIM_HANDSCLOSED=15,
58  ANIM_ATTACKUNARMED=16,
59  ANIM_ATTACK1H=17,
60  ANIM_ATTACK2H=18,
61  ANIM_ATTACK2HL=19,
62  ANIM_PARRYUNARMED=20,
63  ANIM_PARRY1H=21,
64  ANIM_PARRY2H=22,
65  ANIM_PARRY2HL=23,
66  ANIM_SHIELDBLOCK=24,
67  ANIM_READYUNARMED=25,
68  ANIM_READY1H=26,
69  ANIM_READY2H=27,
70  ANIM_READY2HL=28,
71  ANIM_READYBOW=29,
72  ANIM_DODGE=30,
73  ANIM_SPELLPRECAST=31,
74  ANIM_SPELLCAST=32,
75  ANIM_SPELLCASTAREA=33,
76  ANIM_NPCWELCOME=34,
77  ANIM_NPCGOODBYE=35,
78  ANIM_BLOCK=36,
79  ANIM_JUMPSTART=37,
80  ANIM_JUMP=38,
81  ANIM_JUMPEND=39,
82  ANIM_FALL=40,
83  ANIM_SWIMIDLE=41,
84  ANIM_SWIM=42,
85  ANIM_SWIMLEFT=43,
86  ANIM_SWIMRIGHT=44,
87  ANIM_SWIMBACKWARDS=45,
88  ANIM_ATTACKBOW=46,
89  ANIM_FIREBOW=47,
90  ANIM_READYRIFLE=48,
91  ANIM_ATTACKRIFLE=49,
92  ANIM_LOOT=50,
93  ANIM_READYSPELLDIRECTED=51,
94  ANIM_READYSPELLOMNI=52,
95  ANIM_SPELLCASTDIRECTED=53,
96  ANIM_SPELLCASTOMNI=54,
97  ANIM_BATTLEROAR=55,
98  ANIM_READYABILITY=56,
99  ANIM_SPECIAL1H=57,
100  ANIM_SPECIAL2H=58,
101  ANIM_SHIELDBASH=59,
102  ANIM_EMOTETALK=60,
103  ANIM_EMOTEEAT=61,
104  ANIM_EMOTEWORK=62,
105  ANIM_EMOTEUSESTANDING=63,
106  ANIM_EMOTETALKEXCLAMATION=64,
107  ANIM_EMOTETALKQUESTION=65,
108  ANIM_EMOTEBOW=66,
109  ANIM_EMOTEWAVE=67,
110  ANIM_EMOTECHEER=68,
111  ANIM_EMOTEDANCE=69,
112  ANIM_EMOTELAUGH=70,
113  ANIM_EMOTESLEEP=71,
114  ANIM_EMOTESITGROUND=72,
115  ANIM_EMOTERUDE=73,
116  ANIM_EMOTEROAR=74,
117  ANIM_EMOTEKNEEL=75,
118  ANIM_EMOTEKISS=76,
119  ANIM_EMOTECRY=77,
120  ANIM_EMOTECHICKEN=78,
121  ANIM_EMOTEBEG=79,
122  ANIM_EMOTEAPPLAUD=80,
123  ANIM_EMOTESHOUT=81,
124  ANIM_EMOTEFLEX=82,
125  ANIM_EMOTESHY=83,
126  ANIM_EMOTEPOINT=84,
127  ANIM_ATTACK1HPIERCE=85,
128  ANIM_ATTACK2HLOOSEPIERCE=86,
129  ANIM_ATTACKOFF=87,
130  ANIM_ATTACKOFFPIERCE=88,
131  ANIM_SHEATH=89,
132  ANIM_HIPSHEATH=90,
133  ANIM_MOUNT=91,
134  ANIM_RUNRIGHT=92,
135  ANIM_RUNLEFT=93,
136  ANIM_MOUNTSPECIAL=94,
137  ANIM_KICK=95,
138  ANIM_SITGROUNDDOWN=96,
139  ANIM_SITGROUND=97,
140  ANIM_SITGROUNDUP=98,
141  ANIM_SLEEPDOWN=99,
142  ANIM_SLEEP=100,
143  ANIM_SLEEPUP=101,
144  ANIM_SITCHAIRLOW=102,
145  ANIM_SITCHAIRMED=103,
146  ANIM_SITCHAIRHIGH=104,
147  ANIM_LOADBOW=105,
148  ANIM_LOADRIFLE=106,
149  ANIM_ATTACKTHROWN=107,
150  ANIM_READYTHROWN=108,
151  ANIM_HOLDBOW=109,
152  ANIM_HOLDRIFLE=110,
153  ANIM_HOLDTHROWN=111,
154  ANIM_LOADTHROWN=112,
155  ANIM_EMOTESALUTE=113,
156  ANIM_KNEELSTART=114,
157  ANIM_KNEELLOOP=115,
158  ANIM_KNEELEND=116,
159  ANIM_ATTACKUNARMEDOFF=117,
160  ANIM_SPECIALUNARMED=118,
161  ANIM_STEALTHWALK=119,
162  ANIM_STEALTHSTAND=120,
163  ANIM_KNOCKDOWN=121,
164  ANIM_EATINGLOOP=122,
165  ANIM_USESTANDINGLOOP=123,
166  ANIM_CHANNELCASTDIRECTED=124,
167  ANIM_CHANNELCASTOMNI=125,
168  ANIM_WHIRLWIND=126,
169  ANIM_BIRTH=127,
170  ANIM_USESTANDINGSTART=128,
171  ANIM_USESTANDINGEND=129,
172  ANIM_CREATURESPECIAL=130,
173  ANIM_DROWN=131,
174  ANIM_DROWNED=132,
175  ANIM_FISHINGCAST=133,
176  ANIM_FISHINGLOOP=134,
177  ANIM_FLY=135,
178  ANIM_EMOTEWORKNOSHEATHE=136,
179  ANIM_EMOTESTUNNOSHEATHE=137,
180  ANIM_EMOTEUSESTANDINGNOSHEATHE=138,
181  ANIM_SPELLSLEEPDOWN=139,
182  ANIM_SPELLKNEELSTART=140,
183  ANIM_SPELLKNEELLOOP=141,
184  ANIM_SPELLKNEELEND=142,
185  ANIM_SPRINT=143,
186  ANIM_INFLIGHT=144,
187  ANIM_SPAWN=145,
188  ANIM_CLOSE=146,
189  ANIM_CLOSED=147,
190  ANIM_OPEN=148,
191  ANIM_OPENED=149,
192  ANIM_DESTROY=150,
193  ANIM_DESTROYED=151,
194  ANIM_REBUILD=152,
195  ANIM_CUSTOM0=153,
196  ANIM_CUSTOM1=154,
197  ANIM_CUSTOM2=155,
198  ANIM_CUSTOM3=156,
199  ANIM_DESPAWN=157,
200  ANIM_HOLD=158,
201  ANIM_DECAY=159,
202  ANIM_BOWPULL=160,
203  ANIM_BOWRELEASE=161,
204  ANIM_SHIPSTART=162,
205  ANIM_SHIPMOVING=163,
206  ANIM_SHIPSTOP=164,
207  ANIM_GROUPARROW=165,
208  ANIM_ARROW=166,
209  ANIM_CORPSEARROW=167,
210  ANIM_GUIDEARROW=168,
211  ANIM_SWAY=169,
212  ANIM_DRUIDCATPOUNCE=170,
213  ANIM_DRUIDCATRIP=171,
214  ANIM_DRUIDCATRAKE=172,
215  ANIM_DRUIDCATRAVAGE=173,
216  ANIM_DRUIDCATCLAW=174,
217  ANIM_DRUIDCATCOWER=175,
218  ANIM_DRUIDBEARSWIPE=176,
219  ANIM_DRUIDBEARBITE=177,
220  ANIM_DRUIDBEARMAUL=178,
221  ANIM_DRUIDBEARBASH=179,
222  ANIM_DRAGONTAIL=180,
223  ANIM_DRAGONSTOMP=181,
224  ANIM_DRAGONSPIT=182,
225  ANIM_DRAGONSPITHOVER=183,
226  ANIM_DRAGONSPITFLY=184,
227  ANIM_EMOTEYES=185,
228  ANIM_EMOTENO=186,
229  ANIM_JUMPLANDRUN=187,
230  ANIM_LOOTHOLD=188,
231  ANIM_LOOTUP=189,
232  ANIM_STANDHIGH=190,
233  ANIM_IMPACT=191,
234  ANIM_LIFTOFF=192,
235  ANIM_HOVER=193,
236  ANIM_SUCCUBUSENTICE=194,
237  ANIM_EMOTETRAIN=195,
238  ANIM_EMOTEDEAD=196,
239  ANIM_EMOTEDANCEONCE=197,
240  ANIM_DEFLECT=198,
241  ANIM_EMOTEEATNOSHEATHE=199,
242  ANIM_LAND=200,
243  ANIM_SUBMERGE=201,
244  ANIM_SUBMERGED=202,
245  ANIM_CANNIBALIZE=203,
246  ANIM_ARROWBIRTH=204,
247  ANIM_GROUPARROWBIRTH=205,
248  ANIM_CORPSEARROWBIRTH=206,
249  ANIM_GUIDEARROWBIRTH=207,
250  /*
251  ANIM_STAND = 0,
252  ANIM_DEATH = 1,
253  ANIM_SPELL = 2,
254  ANIM_STOP = 3,
255  ANIM_WALK = 4,
256  ANIM_RUN = 5,
257  ANIM_RUN_LEFT = 11,
258  ANIM_RUN_RIGHT = 12,
259  ANIM_WALK_BACKWORD = 13,
260  ANIM_ATTACKUARMED = 16,
261  ANIM_ATTACK1H = 17,
262  ANIM_ATTACK2H = 18,
263  ANIM_ATTACK2HL = 19,
264  ANIM_PARRYUARMED = 20,
265  ANIM_PARRY1H = 21,
266  ANIM_JUMP_START = 37,
267  ANIM_JUMP = 38,
268  ANIM_JUMP_END = 39,
269  ANIM_FALL = 40,
270  ANIM_SWIM_IDLE = 41,
271  ANIM_SWIM = 42,
272  ANIM_SWIM_RIGHT = 43,
273  ANIM_SWIM_LEFT = 44,
274  ANIM_SWIM_BACK = 45,
275  ANIM_EMOTE_TALK = 60,
276  ANIM_EMOTE_DANCE = 69,
277  ANIM_MOUNT = 91,
278  ANIM_SIT_GROUNDDOWN = 96,
279  ANIM_SIT_GROUND = 97,
280  ANIM_SIT_GROUNDUP = 98,
281  ANIM_SIT_SLEEPDOWN = 99,
282  ANIM_SIT_SLEEP = 100,
283  ANIM_SIT_SLEEPUP = 101,
284  ANIM_EMOTE_YES = 185,
285  ANIM_EMOTE_NO = 186,
286  ANIM_LAND = 200
287  */
288  ANIM_LASTONE
289  };
290 }
static bool IsWalkAnimation(int nID)
check if nID can default to any move animation id like walk.
Definition: AnimTable.cpp:413
static CAnimTable * GetInstance()
singleton instance.
Definition: AnimTable.cpp:309
AnimationID
this is just an ad hoc mapping from animation ID to its function
Definition: AnimTable.h:40
table for character animation.
Definition: AnimTable.h:9
different physics engine has different winding order.
Definition: EventBinding.h:32
static int GetDefaultAnimIDof(int nID)
if the nID does not exists, then a default ID will be used instead.
Definition: AnimTable.cpp:314
static int GetAnimIDByName(const char *sName)
Definition: AnimTable.cpp:324