3#include <map_obj/ChangeBlockCoinBase.h>
11
12
22
23
41 static_assert(
sizeof(
DestroyedParam) == 0x10,
"DestroyedParam size mismatch");
50 static_assert(
sizeof(
DestroyedParam2) == 0xC,
"DestroyedParam2 size mismatch");
57 bool init(
bool register_collider,
bool set_revision_wall_callback);
68 mPlayerNo2 = player_no_2;
69 mHitPlayerNo = hit_player_no;
70 mSpawnDirection = cDirType_Up;
95
96
97
106 return (mParam1 >> 28 & 1) << 4 | (mParam1 & 0xF);
146 return mItemCreateZPos;
151 return mItemCreateYOffsetUpSingle;
156 return mItemCreateYOffsetDownSingle;
161 return mItemCreateYOffsetUpMulti;
166 return mItemCreateYOffsetDownMulti;
181 mItemCreateZPos = pos;
186 mItemCreateYOffsetUpSingle = offset;
191 mItemCreateYOffsetDownSingle = offset;
196 mItemCreateYOffsetUpMulti = offset;
201 mItemCreateYOffsetDownMulti = offset;
Definition ActorBlockBase.h:6
void onDownMove_DiffEnd() override
Type getType() const
Definition ActorBlockBase.h:169
u8 _1ccd
Definition ActorBlockBase.h:227
u32 _1cc8
Definition ActorBlockBase.h:225
f32 getItemCreateZPos() const
Definition ActorBlockBase.h:144
u8 _1cc4
Definition ActorBlockBase.h:222
f32 getItemCreateYOffsetDownMulti() const
Definition ActorBlockBase.h:164
f32 getItemCreateYOffsetUpMulti() const
Definition ActorBlockBase.h:159
f32 mItemCreateZPos
Definition ActorBlockBase.h:215
void setItemCreateYOffsetUpSingle(f32 offset)
Definition ActorBlockBase.h:184
virtual bool restoreState()
Restores the persistent state of the block across scene transitions, so that a destroyed/hit block st...
void onDownMove_DiffStart() override
Type getBlockType() const
Definition ActorBlockBase.h:61
f32 mItemCreateYOffsetDownSingle
Definition ActorBlockBase.h:217
ActiveState
Persistent state of the block across area reloads.
Definition ActorBlockBase.h:25
@ cActiveState_Used
Definition ActorBlockBase.h:27
@ cActiveState_Active
Definition ActorBlockBase.h:26
@ cActiveState_MultiCoinExpired
Definition ActorBlockBase.h:29
@ cActiveState_Destroyed
Definition ActorBlockBase.h:28
~ActorBlockBase() override
Definition ActorBlockBase.h:54
void setType(Type type)
Definition ActorBlockBase.h:204
void setItemCreateYOffsetDownSingle(f32 offset)
Definition ActorBlockBase.h:189
virtual void postBump()
Definition ActorBlockBase.h:128
virtual void updateMovement()
virtual sead::Vector3f getItemCreatePos() const
Definition ActorBlockBase.h:111
bool init(bool register_collider, bool set_revision_wall_callback)
virtual void preSpawnItem()
void forceSpawnItemUp(u8 player_no_2, s32 hit_player_no)
Definition ActorBlockBase.h:66
void setItemCreateYOffsetUpMulti(f32 offset)
Definition ActorBlockBase.h:194
f32 mItemCreateYOffsetDownMulti
Definition ActorBlockBase.h:219
f32 getItemCreateYOffsetUpSingle() const
Definition ActorBlockBase.h:149
void spawnItemUp() override
virtual u8 getContentIndex() const
Definition ActorBlockBase.h:104
virtual void updateLiquidEffects()
Definition ActorBlockBase.h:120
void setItemCreateZPos(f32 pos)
Definition ActorBlockBase.h:179
u8 _1cc6
Definition ActorBlockBase.h:224
virtual void vf2DC()
Definition ActorBlockBase.h:100
bool mScreenOutCheckEnable
Definition ActorBlockBase.h:226
f32 getItemCreateYOffsetDownSingle() const
Definition ActorBlockBase.h:154
virtual void onBumpDiff()
Definition ActorBlockBase.h:124
void setItemCreateYOffsetDownMulti(f32 offset)
Definition ActorBlockBase.h:199
f32 mItemCreateYOffsetUpMulti
Definition ActorBlockBase.h:218
u8 _1cc5
Definition ActorBlockBase.h:223
bool draw() override
Main rendering callback for the actor. Called every frame (the game runs at exactly 60 FPS).
bool getScreenOutCheckEnable() const
Definition ActorBlockBase.h:174
virtual u32 vf32C()
Definition ActorBlockBase.h:132
void spawnItemDown() override
void setScreenOutCheckEnable(bool screen_out_check)
Definition ActorBlockBase.h:209
f32 mItemCreateYOffsetUpSingle
Definition ActorBlockBase.h:216
u32 _1cc0
Definition ActorBlockBase.h:221
Type mType
Definition ActorBlockBase.h:220
void onMove_Diff() override
bool execute() override
Main execution/logic callback for the actor. Called every frame (the game runs at exactly 60 FPS).
Content getContent(u32 index)
ActorBlockBase(const ActorCreateParam ¶m)
Definition ActorBlockBase.h:44
u16 fragment_idx
Definition ActorBlockBase.h:48
s8 player_no
Definition ActorBlockBase.h:47
u8 destroy_direction
Definition ActorBlockBase.h:46
sead::Vector2f position
Definition ActorBlockBase.h:45
Definition ActorBlockBase.h:33
s8 player_no
Definition ActorBlockBase.h:38
u16 fragment_idx
Definition ActorBlockBase.h:39
u8 state_type
Definition ActorBlockBase.h:36
u8 _a
Definition ActorBlockBase.h:37
sead::Vector2f position
Definition ActorBlockBase.h:34
u8 destroy_direction
Definition ActorBlockBase.h:35