Files
st/include/Actor/ActorBlast.hpp
T
Alessevan 473e1e102b Decompiling BOMB (#140)
* feat: begin decompiling

* feat: some progress

* fix: forgot to change symbol

* feat: increase matching

* fix: function params not updated

* feat: more matching

* fix: noo more errors oon local help

* fix: match back UnkStruct_PlayerGet_74.data

* feat: little progress

* fix: SWBM.data regression

* feat: up jp version

* feat: update matching

* refactor: rename UnkBOMB to Bomb

* feat: decompiling part of MapObjectUnkBMFL

* feat: destroy MapObjectPot's vfunc_24 for the good of all

* fix: revert wrong symbol

* feat: updating jp symbols

* feat: eur advancements

* feat: weird stuff

* feat: fix build issue

* feat: rename BMFL to BombFlower

* feat: catchup jp .data

* feat: improve BombFlower

* feat: improve bomb matching

* style: cleanup

* style: cleanup v2

* fix: mapobjectpot_base .data

* feat: better match for mapobjectpot_base

* style: use deg_to_rad macro

* style: cleaner variable definition

* doc: better comment

* fix: build
2026-08-23 21:06:08 +02:00

65 lines
1.5 KiB
C++

#pragma once
#include "Actor/Actor.hpp"
#include "Actor/ActorProfile.hpp"
#include "global.h"
#include "types.h"
class ActorBlast;
class ActorBlast_E8 : public UnkStruct_ov031_Items_00_Base {
public:
/* 00 (base) */
/* 04 */ ActorBlast *mUnk_04;
/* 08 */
ActorBlast_E8(ActorBlast *param1) :
mUnk_04(param1) {}
// data_ov031_02112d4c
/* 0C */ virtual bool vfunc_0C(const UnkStruct_ov031_020e54d4 *param1, unk32 *param2, unk32 param3) override;
};
class ActorBlast : public Actor {
public:
/* 00 (base) */
/* 94 */ fx32 mUnk_94;
/* 98 */ volatile u16 mUnk_98;
/* 9A */ u16 mUnk_9A;
/* 9C */ UnkStruct_ov031_Items_01 mUnk_9C;
/* C8 */ Cylinder mUnk_C8;
/* D8 */ Cylinder mUnk_D8;
/* E8 */ ActorBlast_E8 mUnk_E8;
/* F0 */ fx32 mUnk_F0;
/* F4 */ fx32 mUnk_F4;
/* F8 */
ActorBlast();
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
/* 20 */ virtual void vfunc_20() override;
/* 24 */ virtual void vfunc_24() override;
bool IsInternalTimerOut() {
if (this->mUnk_98 < this->mUnk_9A) {
++this->mUnk_98;
return false;
}
return true;
}
fx32 func_ov031_020e3b94();
static void func_ov031_020e3b9c(Actor *spawner, unk16 param1, unk16 param2);
};
class ActorProfileBlast : public ActorProfile {
public:
/* 00 (base) */
ActorProfileBlast();
/* 0C */ virtual Actor *Create();
static ActorProfileBlast *GetProfile();
};