fallout2-ce/src/actions.h

53 lines
2.4 KiB
C
Raw Normal View History

2022-05-19 01:51:26 -07:00
#ifndef ACTIONS_H
#define ACTIONS_H
#include "combat_defs.h"
#include "obj_types.h"
#include "proto_types.h"
#include <stdbool.h>
extern int _action_in_explode;
extern const int gNormalDeathAnimations[DAMAGE_TYPE_COUNT];
extern const int gMaximumBloodDeathAnimations[DAMAGE_TYPE_COUNT];
int actionKnockdown(Object* obj, int* anim, int maxDistance, int rotation, int delay);
int _action_blood(Object* obj, int anim, int delay);
int _pick_death(Object* attacker, Object* defender, Object* weapon, int damage, int anim, bool isFallingBack);
int _check_death(Object* obj, int anim, int minViolenceLevel, bool isFallingBack);
int _internal_destroy(Object* a1, Object* a2);
void _show_damage_to_object(Object* a1, int damage, int flags, Object* weapon, bool isFallingBack, int knockbackDistance, int knockbackRotation, int a8, Object* a9, int a10);
int _show_death(Object* obj, int anim);
int _show_damage_extras(Attack* attack);
void _show_damage(Attack* attack, int a2, int a3);
int _action_attack(Attack* attack);
int _action_melee(Attack* attack, int a2);
int _action_ranged(Attack* attack, int a2);
int _is_next_to(Object* a1, Object* a2);
int _action_climb_ladder(Object* a1, Object* a2);
int _action_use_an_item_on_object(Object* a1, Object* a2, Object* a3);
int _action_use_an_object(Object* a1, Object* a2);
int actionPickUp(Object* critter, Object* item);
int _action_loot_container(Object* critter, Object* container);
int _action_skill_use(int a1);
int actionUseSkill(Object* a1, Object* a2, int skill);
bool _is_hit_from_front(Object* a1, Object* a2);
bool _can_see(Object* a1, Object* a2);
int _pick_fall(Object* obj, int anim);
bool _action_explode_running();
int actionExplode(int tile, int elevation, int minDamage, int maxDamage, Object* a5, bool a6);
int _report_explosion(Attack* attack, Object* a2);
int _finished_explosion(Object* a1, Object* a2);
int _compute_explosion_damage(int min, int max, Object* a3, int* a4);
int actionTalk(Object* a1, Object* a2);
int _can_talk_to(Object* a1, Object* a2);
int _talk_to(Object* a1, Object* a2);
void _action_dmg(int tile, int elevation, int minDamage, int maxDamage, int damageType, bool animated, bool bypassArmor);
int _report_dmg(Attack* attack, Object* a2);
int _compute_dmg_damage(int min, int max, Object* obj, int* a4, int damage_type);
bool actionCheckPush(Object* a1, Object* a2);
int actionPush(Object* a1, Object* a2);
int _action_can_talk_to(Object* a1, Object* a2);
#endif /* ACTIONS_H */