mirror of
https://github.com/zeldaret/st
synced 2026-07-03 04:53:00 -04:00
66eb66f081
* feat: begin decompiling ActorItemBoomerang * feat: decompile functions * refactor: rename function and use ActorState * feat: match vfunc * feat: magic stuff on addresses to match .data * feat: more black magic * feat: improvements * feat: match .data * feat: unmatch .data 😭 * feat: match stuff * refactor: move shotarrows' class used in boomerang * feat: fix mangled names * feat: weird magic * fix: build issues * fix: build issue for jp version * fix: back to +0.2% :yeah: * feat: improvements before changing laptop * feat: continue decompiling * fix: build issues * feat: improvements * feat: solve build on eur * fix: build issue * fix: better match * fix: match back ActorShotArrow data * feat: increase .text matching * fix: propagate changes to ActorShotArrow * feat: matching func_ov031_020e5034 * fix: logical errors * fix: replace whiles with fors * style: use uppercased hex value Co-authored-by: Yanis <35189056+Yanis002@users.noreply.github.com> * style: do not use fx32 for global timer Co-authored-by: Yanis <35189056+Yanis002@users.noreply.github.com> * style: add parameters name in prototypes Co-authored-by: Yanis <35189056+Yanis002@users.noreply.github.com> * style: use bool instead of unk32 for external function Co-authored-by: Yanis <35189056+Yanis002@users.noreply.github.com> * style: use DEG2ANG * refactor: use ActorRef instead of u16 * style: use boring array access instead of chad pointer manipulation * fix: use bool as return type for ActorItemBoomerang::vfunc_2C * feat: remove old non-matching comments * style: explicit null check * revert: change vfunc_2C back to void signature and change 01fff5d0 function's signature to bool --------- Co-authored-by: Yanis <35189056+Yanis002@users.noreply.github.com>
56 lines
1.4 KiB
C++
56 lines
1.4 KiB
C++
#pragma once
|
|
#include "UnkStruct_027e0ce0.hpp"
|
|
|
|
class UnkStruct_ov031_Items_00 : public UnkStruct_027e0ce0_38_Base {
|
|
public:
|
|
/* 00 (vtable) */
|
|
/* 04 */
|
|
|
|
UnkStruct_ov031_Items_00();
|
|
|
|
// data_ov000_020b30d0
|
|
/* 00 */ virtual ~UnkStruct_ov031_Items_00();
|
|
/* 08 */ virtual bool vfunc_08(const UnkStruct_ov031_020f3310 *param1) override;
|
|
};
|
|
|
|
class UnkStruct_ov031_Items_01 {
|
|
public:
|
|
/* 00 (vtable) */
|
|
/* 04 */ ActorRef mUnk_04;
|
|
/* 08 */ unk16 mUnk_08;
|
|
/* 08 */ unk16 mUnk_0A;
|
|
/* 0C */ VecFx32 mUnk_0C;
|
|
/* 18 */ fx32 mUnk_18;
|
|
/* 1C */ unk32 mUnk_1C;
|
|
/* 20 */ unk32 mUnk_20;
|
|
/* 24 */ unk32 mUnk_24;
|
|
/* 28 */ unk32 mUnk_28;
|
|
/* 2C */
|
|
|
|
UnkStruct_ov031_Items_01() {
|
|
this->mUnk_04 = 0;
|
|
this->mUnk_08 = 0;
|
|
VecFx32_Init(0, 0, 0, &this->mUnk_0C);
|
|
this->mUnk_18 = 0;
|
|
this->mUnk_1C = 0;
|
|
this->mUnk_20 = 0;
|
|
this->mUnk_24 = 0;
|
|
this->mUnk_28 = 0;
|
|
}
|
|
|
|
// data_ov000_020b27c8
|
|
/* 00 */ virtual ~UnkStruct_ov031_Items_01();
|
|
/* 08 */ virtual void vfunc_08();
|
|
/* 0C */ virtual bool vfunc_0C(Actor *param1, VecFx32 *vector);
|
|
/* 10 */ virtual void vfunc_10(Actor *actor);
|
|
};
|
|
|
|
class UnkStruct_ov031_Items_02 {
|
|
public:
|
|
/* 00 */ VecFx32 mUnk_00;
|
|
/* 0C */
|
|
|
|
UnkStruct_ov031_Items_02(unk32 param1, unk32 param2);
|
|
~UnkStruct_ov031_Items_02();
|
|
};
|