#ifndef D_A_OBJ #define D_A_OBJ #include "f_op/f_op_actor_mng.h" #include "d/d_cc_d.h" class dBgS_GndChk; class cBgS_PolyInfo; namespace daObj { template int PrmAbstract(const fopAc_ac_c* actor, T width, T shift) { u32 param = fopAcM_GetParam((fopAc_ac_c*)actor); return ((1 << width) - 1) & (param >> shift); } void make_land_effect(fopAc_ac_c*, dBgS_GndChk*, float); void get_wind_spd(fopAc_ac_c*, float); void get_path_spd(cBgS_PolyInfo&, float); void posMoveF_stream(fopAc_ac_c*, const cXyz*, const cXyz*, float, float); void posMoveF_grade(fopAc_ac_c*, const cXyz*, const cXyz*, float, float, const cXyz*, float, float, const cXyz*); void quat_rotBaseY(Quaternion*, const cXyz&); void quat_rotBaseY2(Quaternion*, const cXyz&); void quat_rotBaseZ(Quaternion*, const cXyz&); void quat_rotVec(Quaternion*, const cXyz&, const cXyz&); void SetCurrentRoomNo(fopAc_ac_c*, dBgS_GndChk*); void HitSeStart(const cXyz*, int, const dCcD_GObjInf*, unsigned long); void HitEff_sub_kikuzu(const cXyz*, const cXyz*, const dKy_tevstr_c*); void HitEff_kikuzu(const fopAc_ac_c*, const dCcD_Cyl*); void HitEff_hibana(const cXyz*, const cXyz*); void HitEff_hibana(const fopAc_ac_c*, const dCcD_Cyl*); }; #endif /* D_A_OBJ */