Merge pull request #173 from PhlexPlexico/master

Update field definitions in player.h and actor.h
This commit is contained in:
Léo Lam
2021-02-19 20:46:54 +01:00
committed by GitHub
3 changed files with 15 additions and 9 deletions

View File

@@ -154,27 +154,30 @@ struct Actor {
u16 field_22;
PosRot pos;
u8 gap_38[4];
PosRot target_pos;
PosRot ztarget_pos;
sound::EffectId sound_effect;
u8 gap_54[4];
Vec3 model_scale;
Vec3 vel;
float vel_xz;
float field_74;
// Modifying this value causes link to moonjump/levitate.
float vel_y;
u8 gap_78[8];
u32 field_80;
u8 gap_84;
u8 field_85;
u8 gap86[3];
u8 gap_89[3];
float field_8C;
// Distance to water/submerged? After -30.99 it goes to -32000.00
float dist_to_water_maybe;
u8 gap_90[4];
rst::Flags<Flag94> flags_94;
float field_98;
float distance_to_link;
float height_diff_to_link;
DamageTable* damage_table;
Vec3 field_A8;
// Changing x and z causes link to slide across plane in direction.
Vec3 target_pos_maybe;
u32 field_B4;
u16 field_B8;
u8 field_BA;
@@ -195,7 +198,7 @@ struct Actor {
Vec3 field_F0;
u32 field_FC;
Vec3 field_100;
Vec3 field_10C;
Vec3 actor_coords;
u8 field_118;
u8 gap119;
u16 text_id_maybe;

View File

@@ -25,7 +25,8 @@ struct FormParam {
u16 run_accel;
u16 run_decel;
u16 field_4;
u16 field_6;
// Can increase the animation speed of a sidehop shuffle.
u16 sidehop_walk_anim_speed;
u16 field_8;
u16 field_A;
u16 field_C;
@@ -172,6 +173,7 @@ struct Player : public Actor {
char field_201;
char field_202;
u8 gap_203[4];
// 1=sword, 2= shield, 3=stick/GFS, 4=first person view with item out, 5=chu/bomb but remains 5 until next set.
u8 field_207;
u8 gap208[3];
MaskId active_mask_id;
@@ -186,7 +188,8 @@ struct Player : public Actor {
u32 field_370;
float field_374;
u8 gap_378[4];
float field_37C;
// Float for time stood still? Moving resets to 0.00.
float time_stood_still_maybe;
float field_380;
u8 gap_384[4];
float field_388;

View File

@@ -142,7 +142,7 @@ RST_HOOK void OdolwaHandleRegularCollision(game::act::BossOdolwa* boss) {
return;
case act::DamageType::Type4:
boss->field_1C35 = 0x14;
gctx->SpawnActor(act::Id::ClearTag, 0, 0, 0, 4, boss->target_pos.pos);
gctx->SpawnActor(act::Id::ClearTag, 0, 0, 0, 4, boss->ztarget_pos.pos);
break;
case act::DamageType::TypeB:
boss->field_1C35 = 0x28;
@@ -150,7 +150,7 @@ RST_HOOK void OdolwaHandleRegularCollision(game::act::BossOdolwa* boss) {
return;
case act::DamageType::TypeC:
boss->field_1C35 = 0x1E;
gctx->SpawnActor(act::Id::ClearTag, 0, 0, 3, 4, boss->target_pos.pos);
gctx->SpawnActor(act::Id::ClearTag, 0, 0, 3, 4, boss->ztarget_pos.pos);
break;
default:
break;