| 1 | #ifndef ONI_H | 
 
 
 
 
 | 2 | #error Do not include this file directly, include Oni/Oni.h instead! | 
 
 
 
 
 | 3 | #endif | 
 
 
 
 
 | 4 |  | 
 
 
 
 
 | 5 | #ifndef CHARACTER_H | 
 
 
 
 
 | 6 | #define CHARACTER_H | 
 
 
 
 
 | 7 |  | 
 
 
 
 
 | 8 | enum { | 
 
 
 
 
 | 9 | team_konoko, | 
 
 
 
 
 | 10 | team_tctf, | 
 
 
 
 
 | 11 | team_syndicate, | 
 
 
 
 
 | 12 | team_neutral, | 
 
 
 
 
 | 13 | team_securityguard, | 
 
 
 
 
 | 14 | team_roguekonoko, | 
 
 
 
 
 | 15 | team_switzerland, | 
 
 
 
 
 | 16 | team_syndicateaccessory, | 
 
 
 
 
 | 17 | }; | 
 
 
 
 
 | 18 |  | 
 
 
 
 
 | 19 |  | 
 
 
 
 
 | 20 | //We need a Oni_Structs #include file. | 
 
 
 
 
 | 21 |  | 
 
 
 
 
 | 22 | typedef enum { | 
 
 
 
 
 | 23 | ONcCharacterFlag_Dead_1_Animating               =       0x00000001,     // health is 0 | 
 
 
 
 
 | 24 | ONcCharacterFlag_Dead                                   =       ONcCharacterFlag_Dead_1_Animating, | 
 
 
 
 
 | 25 | ONcCharacterFlag_Dead_2_Moving                  =       0x00000002,     // no longer animating | 
 
 
 
 
 | 26 | ONcCharacterFlag_Dead_3_Cosmetic                =       0x00000004,     // no longer moving | 
 
 
 
 
 | 27 | ONcCharacterFlag_Dead_4_Gone                    =       0x00000008,     // dead except but still drawn | 
 
 
 
 
 | 28 |  | 
 
 
 
 
 | 29 | ONcCharacterFlag_HastyAnim                              =       0x00000010,     // do this queued animation ASAP | 
 
 
 
 
 | 30 | ONcCharacterFlag_Unkillable                             =       0x00000020,     // the character cannot be killed, only defeated | 
 
 
 
 
 | 31 | ONcCharacterFlag_InfiniteAmmo                   =       0x00000040,     // the character always has infinite ammo | 
 
 
 
 
 | 32 | ONcCharacterFlag_PleaseBlock                    =       0x00000080,     // set if the character should block, cleared once block begins | 
 
 
 
 
 | 33 |  | 
 
 
 
 
 | 34 | ONcCharacterFlag_Unstoppable                    =       0x00000100,     // this character cannot be knocked down, staggered, stunned, etc | 
 
 
 
 
 | 35 | ONcCharacterFlag_ScriptControl                  =       0x00000200,     // set if the character is completely under script control | 
 
 
 
 
 | 36 | ONcCharacterFlag_DeathLock                              =       0x00000400,     // this character should never die all the way | 
 
 
 
 
 | 37 | ONcCharacterFlag_WasUpdated                             =       0x00000800,     // this character's animation was changed | 
 
 
 
 
 | 38 |  | 
 
 
 
 
 | 39 | ONcCharacterFlag_BeingThrown                    =       0x00001000,     // this character is being thrown | 
 
 
 
 
 | 40 | ONcCharacterFlag_DontUseGunVariant              =       0x00002000,     // this character should not use a weapon variant | 
 
 
 
 
 | 41 | ONcCharacterFlag_Draw                                   =       0x00004000,     // DoFrame has been executed for this character | 
 
 
 
 
 | 42 | ONcCharacterFlag_InUse                                  =       0x00008000,     // this character is active and in use | 
 
 
 
 
 | 43 |  | 
 
 
 
 
 | 44 | ONcCharacterFlag_DontUseFightVariant    =       0x00010000, | 
 
 
 
 
 | 45 | ONcCharacterFlag_NoCollision                    =       0x00020000,     // no collision for this character | 
 
 
 
 
 | 46 | ONcCharacterFlag_Teleporting                    =       0x00040000,     // this character is teleporting and does not accept collision | 
 
 
 
 
 | 47 | ONcCharacterFlag_NoCorpse                               =       0x00080000,     // no corpse for this character | 
 
 
 
 
 | 48 |  | 
 
 
 
 
 | 49 | ONcCharacterFlag_ActiveLock                             =       0x00100000,     // the character is locked active | 
 
 
 
 
 | 50 | ONcCharacterFlag_ChrAnimate                             =       0x00200000,     // the character is currently runing a chr_animate command | 
 
 
 
 
 | 51 | ONcCharacterFlag_AIMovement                             =       0x00400000,     // the character is using AI movement | 
 
 
 
 
 | 52 | ONcCharacterFlag_NeutralUninterruptible =       0x00800000,     // running an uninterruptible neutral interaction | 
 
 
 
 
 | 53 |  | 
 
 
 
 
 | 54 | ONcCharacterFlag_NoShadow                               =       0x01000000,     // | 
 
 
 
 
 | 55 | ONcCharacterFlag_Invincible                             =       0x02000000,     // character is invincible | 
 
 
 
 
 | 56 | ONcCharacterFlag_NoAutoDrop                             =       0x04000000,     // character should not automatically drop items when killed (invisibility, shield, LSI) | 
 
 
 
 
 | 57 | ONcCharacterFlag_RestrictedMovement             =       0x08000000,     // character cannot move fast (used for player holding barabbas' gun) | 
 
 
 
 
 | 58 |  | 
 
 
 
 
 | 59 | ONcCharacterFlag_Boss                                   =       0x10000000,     // character is a boss (used for final muro group fight) | 
 
 
 
 
 | 60 | ONcCharacterFlag_FinalFlash                             =       0x20000000,     // 'final flash' has been played for this character's death | 
 
 
 
 
 | 61 | ONcCharacterFlag_BossShield                             =       0x40000000, // this character has the boss shield | 
 
 
 
 
 | 62 | ONcCharacterFlag_WeaponImmune                   =       0x80000000      // this character is immune to weapon damage | 
 
 
 
 
 | 63 |  | 
 
 
 
 
 | 64 | } ONtCharacterFlags; | 
 
 
 
 
 | 65 |  | 
 
 
 
 
 | 66 | typedef enum { | 
 
 
 
 
 | 67 | ONcCharacterFlag2_WeaponEmpty                   =       0x00000001, // character's weapon is empty, punch instead | 
 
 
 
 
 | 68 | ONcCharacterFlag2_UltraMode                             =       0x00000002 | 
 
 
 
 
 | 69 |  | 
 
 
 
 
 | 70 | } ONtCharacterFlags2; | 
 
 
 
 
 | 71 |  | 
 
 
 
 
 | 72 | #endif |