source: Daodan/src/Oni_Character.h@ 689

Last change on this file since 689 was 677, checked in by alloc, 12 years ago

Daodan: Updated src to work with MinGW

File size: 4.1 KB
Line 
1#pragma once
2#ifndef ONI_CHARACTER_H
3#define ONI_CHARACTER_H
4
5//#include <stdint.h>
6#include "bool.h"
7
8enum {
9 team_konoko,
10 team_tctf,
11 team_syndicate,
12 team_neutral,
13 team_securityguard,
14 team_rougekonoko,
15 team_switzerland,
16 team_syndicateaccessory,
17};
18/*
19int16_t ONICALL ONrGameState_NewCharacter(CharacterObject* CHAR, void* AISA, void* flag, uint32_t* list_location);
20int32_t* ONICALL ONrGetActiveCharacter(void* CharacterPtr);
21//int16_t ONICALL ONrGameState_GetPlayerCharacter();
22*/
23//probably need to name these better.
24/*
25#define char_unkillable (1 << 5)
26#define char_superammo (1 << 6)
27#define char_unstoppable (1 << 8)
28#define char_deathlock (1 << 10)
29#define char_dontaim (1 << 13)
30#define char_nocollision (1 << 17)
31#define char_noshadow (1 << 24)
32#define char_invincible (1 << 25)
33#define char_bossshield (1 << 30)
34#define char_weaponimmune (1 << 31)
35*/
36
37//We need a Oni_Structs #include file.
38
39typedef enum {
40 ONcCharacterFlag_Dead_1_Animating = 0x00000001, // health is 0
41 ONcCharacterFlag_Dead = ONcCharacterFlag_Dead_1_Animating,
42 ONcCharacterFlag_Dead_2_Moving = 0x00000002, // no longer animating
43 ONcCharacterFlag_Dead_3_Cosmetic = 0x00000004, // no longer moving
44 ONcCharacterFlag_Dead_4_Gone = 0x00000008, // dead except but still drawn
45
46 ONcCharacterFlag_HastyAnim = 0x00000010, // do this queued animation ASAP
47 ONcCharacterFlag_Unkillable = 0x00000020, // the character cannot be killed, only defeated
48 ONcCharacterFlag_InfiniteAmmo = 0x00000040, // the character always has infinite ammo
49 ONcCharacterFlag_PleaseBlock = 0x00000080, // set if the character should block, cleared once block begins
50
51 ONcCharacterFlag_Unstoppable = 0x00000100, // this character cannot be knocked down, staggered, stunned, etc
52 ONcCharacterFlag_ScriptControl = 0x00000200, // set if the character is completely under script control
53 ONcCharacterFlag_DeathLock = 0x00000400, // this character should never die all the way
54 ONcCharacterFlag_WasUpdated = 0x00000800, // this character's animation was changed
55
56 ONcCharacterFlag_BeingThrown = 0x00001000, // this character is being thrown
57 ONcCharacterFlag_DontUseGunVarient = 0x00002000, // this character should not use a weapon varient
58 ONcCharacterFlag_Draw = 0x00004000, // DoFrame has been executed for this character
59 ONcCharacterFlag_InUse = 0x00008000, // this character is active and in use
60
61 ONcCharacterFlag_DontUseFightVarient = 0x00010000,
62 ONcCharacterFlag_NoCollision = 0x00020000, // no collision for this character
63 ONcCharacterFlag_Teleporting = 0x00040000, // this character is teleporting and does not accept collision
64 ONcCharacterFlag_NoCorpse = 0x00080000, // no corpse for this character
65
66 ONcCharacterFlag_ActiveLock = 0x00100000, // the character is locked active
67 ONcCharacterFlag_ChrAnimate = 0x00200000, // the character is currently runing a chr_animate command
68 ONcCharacterFlag_AIMovement = 0x00400000, // the character is using AI movement
69 ONcCharacterFlag_NeutralUninterruptable = 0x00800000, // running an uninterruptable neutral interaction
70
71 ONcCharacterFlag_NoShadow = 0x01000000, //
72 ONcCharacterFlag_Invincible = 0x02000000, // character is invincible
73 ONcCharacterFlag_NoAutoDrop = 0x04000000, // character should not automatically drop items when killed (invisibility, shield, LSI)
74 ONcCharacterFlag_RestrictedMovement = 0x08000000, // character cannot move fast (used for player holding barabbas' gun)
75
76 ONcCharacterFlag_Boss = 0x10000000, // character is a boss (used for final muro group fight)
77 ONcCharacterFlag_FinalFlash = 0x20000000, // 'final flash' has been played for this character's death
78 ONcCharacterFlag_BossShield = 0x40000000, // this character has the boss shield
79 ONcCharacterFlag_WeaponImmune = 0x80000000 // this character is immune to weapon damage
80
81} ONtCharacterFlags;
82
83typedef enum {
84 ONcCharacterFlag2_WeaponEmpty = 0x00000001, // character's weapon is empty, punch instead
85 ONcCharacterFlag2_UltraMode = 0x00000002
86
87} ONtCharacterFlags2;
88
89#endif
Note: See TracBrowser for help on using the repository browser.