mirror of
https://github.com/zeldaret/st
synced 2026-08-23 07:09:33 -04:00
42407bafe4
* feat: decompiling part of ROCK * style: add non-matching comments above non-matching functions * typo: use PascalCase Max for State Co-authored-by: Yanis <35189056+Yanis002@users.noreply.github.com> --------- Co-authored-by: Yanis <35189056+Yanis002@users.noreply.github.com>
62 lines
1.4 KiB
C++
62 lines
1.4 KiB
C++
#pragma once
|
|
|
|
#include "Actor/Actor.hpp"
|
|
#include "Actor/ActorProfile.hpp"
|
|
#include "ActorUnkSCCN.hpp"
|
|
#include "MapObject/MapObject_ov031.hpp"
|
|
#include "global.h"
|
|
#include "types.h"
|
|
|
|
enum ActorUnkROCKState_ {
|
|
ActorUnkROCKState_0 = 0,
|
|
ActorUnkROCKState_1 = 1,
|
|
ActorUnkROCKState_2 = 2,
|
|
ActorUnkROCKState_3 = 3,
|
|
ActorUnkROCKState_4 = 4,
|
|
ActorUnkROCKState_Max,
|
|
};
|
|
|
|
class ActorUnkROCK : public Actor {
|
|
public:
|
|
/* 00 (base) */
|
|
/* 94 */ UnkSystem6_Derived2 mUnk_94;
|
|
/* 9C */ bool mUnk_9C;
|
|
/* A0 */ ActorUnkSCCN_B8 mUnk_A0;
|
|
/* B0 */
|
|
|
|
ActorUnkROCK();
|
|
|
|
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
|
/* 20 */ virtual void vfunc_20() override;
|
|
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
|
/* 38 */ virtual bool Grab(ActorGrabParams param1) override;
|
|
/* 38 */ virtual bool Drop(ActorGrabParams param1, const VecFx32 *param2) override;
|
|
|
|
void func_ov031_020e8a48(ActorState state);
|
|
void func_ov031_020e8acc();
|
|
};
|
|
|
|
class ActorProfileUnkROCK_Base : public ActorProfile_Derived1 {
|
|
public:
|
|
/* 00 (base) */
|
|
/* D8 */ MapObject_10_Pot mUnk_D8;
|
|
/* FC */
|
|
|
|
ActorProfileUnkROCK_Base(ActorId actorId) :
|
|
ActorProfile_Derived1(actorId) {}
|
|
|
|
// data_ov031_021133cc
|
|
};
|
|
|
|
class ActorProfileUnkROCK : public ActorProfileUnkROCK_Base {
|
|
public:
|
|
/* 00 (base) */
|
|
/* FC */
|
|
|
|
ActorProfileUnkROCK();
|
|
|
|
/* 0C */ virtual Actor *Create();
|
|
|
|
static ActorProfileUnkROCK *GetProfile();
|
|
};
|