167 lines
4.1 KiB
C
167 lines
4.1 KiB
C
|
|
||
|
typedef enum AnimID_e
|
||
|
{
|
||
|
ANIM_BITEUP,
|
||
|
ANIM_BITELOW,
|
||
|
ANIM_BITEUP2,
|
||
|
ANIM_EATING_TWITCH,
|
||
|
ANIM_EATING,
|
||
|
ANIM_EATDOWN,
|
||
|
ANIM_WALK,
|
||
|
ANIM_WALKLEFT,
|
||
|
ANIM_WALKRT,
|
||
|
ANIM_JUMP,
|
||
|
ANIM_FJUMP,
|
||
|
ANIM_INAIR,
|
||
|
ANIM_LAND,
|
||
|
ANIM_GINAIR,
|
||
|
ANIM_GLAND,
|
||
|
ANIM_STAND,
|
||
|
ANIM_DELAY,
|
||
|
ANIM_DIE,
|
||
|
ANIM_DIE_NORM,
|
||
|
ANIM_CHARGE,
|
||
|
ANIM_ROAR,
|
||
|
ANIM_WALKATK,
|
||
|
ANIM_STUN,
|
||
|
ANIM_SNATCH,
|
||
|
ANIM_READY_CATCH,
|
||
|
ANIM_CATCH,
|
||
|
ANIM_BITEUP_SFIN,
|
||
|
ANIM_BITELOW_SFIN,
|
||
|
ANIM_BITEUP2_SFIN,
|
||
|
ANIM_QUICK_CHARGE,
|
||
|
NUM_ANIMS
|
||
|
} AnimID_t;
|
||
|
|
||
|
typedef enum SoundID_e
|
||
|
{
|
||
|
SND_ROAR,
|
||
|
SND_ROAR2,
|
||
|
SND_SNORT1,
|
||
|
SND_SNORT2,
|
||
|
|
||
|
SND_STEP1,
|
||
|
SND_STEP2,
|
||
|
SND_LAND,
|
||
|
|
||
|
SND_GROWL1,
|
||
|
SND_GROWL2,
|
||
|
SND_GROWL3,
|
||
|
|
||
|
SND_SWIPE,
|
||
|
SND_SLAM,
|
||
|
SND_SNATCH,
|
||
|
SND_CHOMP,
|
||
|
SND_TEAR1,
|
||
|
SND_TEAR2,
|
||
|
SND_THROW,
|
||
|
SND_CATCH,
|
||
|
SND_SWALLOW,
|
||
|
|
||
|
SND_PAIN1,
|
||
|
SND_PAIN2,
|
||
|
SND_DIE,
|
||
|
|
||
|
SND_CORVUS_SCREAM1,
|
||
|
SND_CORVUS_SCREAM2,
|
||
|
SND_CORVUS_SCREAM3,
|
||
|
SND_CORVUS_DIE,
|
||
|
NUM_SOUNDS
|
||
|
} SoundID_t;
|
||
|
|
||
|
extern animmove_t tbeast_move_biteup;
|
||
|
extern animmove_t tbeast_move_bitelow;
|
||
|
extern animmove_t tbeast_move_biteup2;
|
||
|
extern animmove_t tbeast_move_eating_twitch;
|
||
|
extern animmove_t tbeast_move_eating;
|
||
|
extern animmove_t tbeast_move_eatdown;
|
||
|
extern animmove_t tbeast_move_walk;
|
||
|
extern animmove_t tbeast_move_walkleft;
|
||
|
extern animmove_t tbeast_move_walkrt;
|
||
|
extern animmove_t tbeast_move_jump;
|
||
|
extern animmove_t tbeast_move_forced_jump;
|
||
|
extern animmove_t tbeast_move_inair;
|
||
|
extern animmove_t tbeast_move_land;
|
||
|
extern animmove_t tbeast_move_ginair;
|
||
|
extern animmove_t tbeast_move_gland;
|
||
|
extern animmove_t tbeast_move_stand;
|
||
|
extern animmove_t tbeast_move_delay;
|
||
|
extern animmove_t tbeast_move_die;
|
||
|
extern animmove_t tbeast_move_die_norm;
|
||
|
extern animmove_t tbeast_move_charge;
|
||
|
extern animmove_t tbeast_move_roar;
|
||
|
extern animmove_t tbeast_move_walkatk;
|
||
|
extern animmove_t tbeast_move_stun;
|
||
|
extern animmove_t tbeast_move_snatch;
|
||
|
extern animmove_t tbeast_move_ready_catch;
|
||
|
extern animmove_t tbeast_move_catch;
|
||
|
extern animmove_t tbeast_move_biteup_sfin;
|
||
|
extern animmove_t tbeast_move_bitelow_sfin;
|
||
|
extern animmove_t tbeast_move_biteup2_sfin;
|
||
|
extern animmove_t tbeast_move_quick_charge;
|
||
|
|
||
|
|
||
|
void tbeast_snort (edict_t *self);
|
||
|
void tbeast_growl (edict_t *self);
|
||
|
qboolean tbeastCheckMood(edict_t *self);
|
||
|
void tbeast_pause (edict_t *self);
|
||
|
void tbeastbite (edict_t *self, float ofsf, float ofsr, float ofsu);
|
||
|
void tbeast_land(edict_t *self);
|
||
|
void tbeast_roar(edict_t *self);
|
||
|
void tbeast_jump (edict_t *self);
|
||
|
void tbeast_apply_jump (edict_t *self);
|
||
|
void tbeast_ready_catch (edict_t *self);
|
||
|
void tbeast_throw_toy(edict_t *self);
|
||
|
void tbeast_toy_ofs(edict_t *self, float ofsf, float ofsr, float ofsu);
|
||
|
void tbeast_check_snatch(edict_t *self, float ofsf, float ofsr, float ofsu);
|
||
|
void tbeast_gore_toy(edict_t *self, float jumpht);
|
||
|
void tbeast_anger_sound (edict_t *self);
|
||
|
void tbeast_leap (edict_t *self, float fwdf, float rghtf, float upf);
|
||
|
void tbeast_eatorder (edict_t *self);
|
||
|
void tbeast_footstep (edict_t *self);
|
||
|
void tbeast_walkorder (edict_t *self);
|
||
|
void tbeast_standorder (edict_t *self);
|
||
|
void tbeast_dead(edict_t *self);
|
||
|
void tbeast_charge (edict_t *self, float force);
|
||
|
void tbeast_done_gore (edict_t *self);
|
||
|
void tbeast_run_think (edict_t *self, float dist);
|
||
|
float MG_ChangeYaw (edict_t *self);
|
||
|
qboolean MG_CheckBottom (edict_t *ent);
|
||
|
void tbeast_check_landed (edict_t *self);
|
||
|
void tbeast_inair (edict_t *self);
|
||
|
void tbeast_gcheck_landed (edict_t *self);
|
||
|
void tbeast_ginair (edict_t *self);
|
||
|
void tbeast_go_snatch (edict_t *self);
|
||
|
void tbeast_check_impacts(edict_t *self);
|
||
|
void tbeast_roar_knockdown(edict_t *self);
|
||
|
void tbeast_roar_short(edict_t *self);
|
||
|
void tbeast_gibs(edict_t *self);
|
||
|
edict_t *check_hit_beast(vec3_t start, vec3_t end);
|
||
|
|
||
|
enum
|
||
|
{
|
||
|
FX_TB_PUFF,
|
||
|
FX_TB_SNORT,
|
||
|
};
|
||
|
|
||
|
#define TB_HIBITE_F 150
|
||
|
#define TB_HIBITE_R 0
|
||
|
#define TB_HIBITE_U 108
|
||
|
|
||
|
#define TB_LOBITE_F 150
|
||
|
#define TB_LOBITE_R 0
|
||
|
#define TB_LOBITE_U 36
|
||
|
|
||
|
#define TB_WLKBITE_F 224
|
||
|
#define TB_WLKBITE_U 72
|
||
|
|
||
|
#define TBEAST_STD_MELEE_RNG 128
|
||
|
#define TBEAST_STD_MAXHOP_RNG 600
|
||
|
|
||
|
#define TB_JUMP_GRAV 0.8
|
||
|
|
||
|
#define TB_FWD_OFFSET -64//-32
|
||
|
#define TB_UP_OFFSET -32
|
||
|
#define TB_RT_OFFSET -24
|