-
Notifications
You must be signed in to change notification settings - Fork 36
/
Copy pathstdai.h
44 lines (33 loc) · 1.14 KB
/
stdai.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#ifndef _STDAI_H
#define _STDAI_H
#include "../nx.h"
extern InitList AIRoutines;
#define ONTICK(OBJTYPE, FUNCTION) objprop[OBJTYPE].ai_routines.ontick = FUNCTION;
#define ONDEATH(OBJTYPE, FUNCTION) objprop[OBJTYPE].ai_routines.ondeath = FUNCTION;
#define AFTERMOVE(OBJTYPE, FUNCTION) objprop[OBJTYPE].ai_routines.aftermove = FUNCTION;
#define ONSPAWN(OBJTYPE, FUNCTION) objprop[OBJTYPE].ai_routines.onspawn = FUNCTION;
#define GENERIC_NPC(O) \
{ \
ONSPAWN(O, onspawn_generic_npc); \
ONTICK(O, ai_generic_npc); \
}
#define GENERIC_NPC_NOFACEPLAYER(O) \
{ \
ONSPAWN(O, onspawn_generic_npc); \
ONTICK(O, ai_generic_npc_nofaceplayer); \
}
void aftermove_StickToLinkedActionPoint(Object *o);
void onspawn_set_frame_from_id2(Object *o);
void onspawn_snap_to_ground(Object *o);
void ai_generic_angled_shot(Object *o);
void ai_generic_npc(Object *o);
void ai_generic_npc_nofaceplayer(Object *o);
void onspawn_generic_npc(Object *o);
void ai_animate1(Object *o);
void ai_animate2(Object *o);
void ai_animate3(Object *o);
void ai_animate4(Object *o);
void ai_animate5(Object *o);
void KillObjectsOfType(int type);
void DeleteObjectsOfType(int type);
#endif