New Super Mario Bros. U Headers
Loading...
Searching...
No Matches
PlayerModelImpl3_Shadow.h
Go to the documentation of this file.
1#pragma once
2
3#include <player/PlayerModel.h>
4
5class ShadowModel : public PlayerModel // vtbl Address: 0x101748B8
6{
7 // getRuntimeTypeInfoStatic()::typeInfo initialization guard variable Address: 0x101EBA84
8 // getRuntimeTypeInfoStatic()::typeInfo Address: 0x101EBA90
9 SEAD_RTTI_OVERRIDE(ShadowModel, PlayerModel)
10
11public:
12 static const s32 cMaterialMaxNum = 4;
13
14public:
15 // Address: 0x02971880
16 ShadowModel(Type type, PlayerMode mode, SceneType scene_type, bool override_lightmap);
17
18 // Address: 0x02971B34
19 // void func(); // Sets _22C and _230
20
21 // Address: 0x02971B4C
22 void getBottomJointPos(sead::Vector3f* pos);
23
24 // Address: 0x02971BC4
25 void play() override;
26
27 // Address: 0x02971BFC
28 void draw() override;
29
30 // Address: 0x02971C10
31 void setModelDrawBufferIndex(s32 idx_opa, s32 idx_xlu) override;
32 // Address: 0x02971C2C
33 void setModelDrawFlagDirect(u32 flag) override;
34
35 f32 getBaseScale() override
36 {
37 return 1.0f;
38 }
39
40 // Address: 0x02971CC0
41 void setColorType(ColorType color_type, bool keep_head_konst3) override;
42
43 // Address: 0x02971CCC
45 // Address: 0x02971D84
47 // Address: 0x02971D88
49
50 // Address: 0x02971F3C
52
53 // Address: 0x02971FD4
54 void setModeModel(PlayerModeModel mode_mdl) override;
55
56 // Address: 0x02971FE4
57 void setTexAnmTypeImpl(TexAnmType type) override;
58 // Address: 0x02971FE8
59 void setTexAnmType(TexAnmType type) override;
60
61 bool setPersonalAnm(ModelResource** anm_res, sead::BufferedSafeString* anm_name, s32 anm_id, bool body) override
62 {
63 return false;
64 }
65
66 // Address: 0x02971FEC
67 bool setPersonalRideAnm(ModelResource** anm_res, sead::BufferedSafeString* anm_name, s32 anm_id) override;
68
70 {
71 return 1.0f;
72 }
73
74 // Address: 0x02971FF4
75 f32 getAnmRate(s32 anm_id) override;
76 // Address: 0x02972008
77 f32 getAnmBlendDuration(s32 anm_id) override;
78
79 // Address: 0x029720E4
80 void setAnm(s32 anm_id, f32 rate, f32 blend_duration = 0.0f, f32 frame = 0.0f) override;
81 // Address: 0x029724C4
82 void setFootAnmImpl(const ModelResource* anm_res, const sead::SafeString& anm_name, FrameCtrl::PlayMode mode, f32 rate, f32 frame, f32 blend_duration) override;
83 // Address: 0x029725A0
84 void setBodyAnmImpl(const ModelResource* anm_res, const sead::SafeString& anm_name, FrameCtrl::PlayMode mode, f32 rate, f32 frame, f32 blend_duration) override;
85
86 void releaseBodyAnm(f32 blend_duration) override
87 {
88 }
89
90 // Address: 0x029725A4
91 void setCarryBodyAnm(f32 blend_duration, bool bubble_reset_frame) override;
92
93 // Address: 0x029725A8
95
96 void setBodyRate(f32 rate) override
97 {
98 }
99
100 void setBodyFrame(f32 frame) override
101 {
102 }
103
104 // Address: 0x02972654
106
107 f32 vf144() override
108 {
109 return 0.0f;
110 }
111
112 // Address: 0x0297265C
113 f32 getTevColor0Alpha(s32 idx_material) override;
114 // Address: 0x02972678
115 void setTevColor0Alpha(s32 idx_material, f32 value) override;
116
117 // Address: 0x02972694
118 void setInvTevColor0(f32 value) override;
119 // Address: 0x0297275C
120 void setTevKColor3(f32 value) override;
121
122 // Address: 0x0297289C
124
125protected:
130};
131static_assert(sizeof(ShadowModel) == 0x234);
Definition PlayerModelImpl3_Shadow.h:6
void setCarryBodyAnm(f32 blend_duration, bool bubble_reset_frame) override
s32 _22C
Definition PlayerModelImpl3_Shadow.h:128
void setModelDrawFlagDirect(u32 flag) override
f32 getAnmRate(s32 anm_id) override
f32 vf144() override
Definition PlayerModelImpl3_Shadow.h:107
f32 getTevColor0Alpha(s32 idx_material) override
void setBodyAnmImpl(const ModelResource *anm_res, const sead::SafeString &anm_name, FrameCtrl::PlayMode mode, f32 rate, f32 frame, f32 blend_duration) override
void draw() override
void onPMusaChange() override
f32 getAimMotionShareScale() override
Definition PlayerModelImpl3_Shadow.h:69
void setAnmBind() override
f32 getAnmBlendDuration(s32 anm_id) override
void setTexAnmTypeImpl(TexAnmType type) override
void setFootAnmImpl(const ModelResource *anm_res, const sead::SafeString &anm_name, FrameCtrl::PlayMode mode, f32 rate, f32 frame, f32 blend_duration) override
void setModeModel(PlayerModeModel mode_mdl) override
void setTevKColor3(f32 value) override
void setColorType(ColorType color_type, bool keep_head_konst3) override
f32 getBaseScale() override
Definition PlayerModelImpl3_Shadow.h:35
void setJointMap() override
void setModelDrawBufferIndex(s32 idx_opa, s32 idx_xlu) override
ShadowModel(Type type, PlayerMode mode, SceneType scene_type, bool override_lightmap)
f32 _230
Definition PlayerModelImpl3_Shadow.h:129
bool setPersonalAnm(ModelResource **anm_res, sead::BufferedSafeString *anm_name, s32 anm_id, bool body) override
Definition PlayerModelImpl3_Shadow.h:61
void releaseBodyAnm(f32 blend_duration) override
Definition PlayerModelImpl3_Shadow.h:86
sead::SafeArray< f32, cMaterialMaxNum > mTevColor0Alpha
Definition PlayerModelImpl3_Shadow.h:127
void setTexAnmType(TexAnmType type) override
void getBottomJointPos(sead::Vector3f *pos)
void removeStarAnm_OldModeModel() override
void removeStarAnm_NowModeModel() override
ModelResource * mShadowAnmRes
Definition PlayerModelImpl3_Shadow.h:126
void setStarAnm() override
void setInvTevColor0(f32 value) override
bool setPersonalRideAnm(ModelResource **anm_res, sead::BufferedSafeString *anm_name, s32 anm_id) override
void setBodyFrame(f32 frame) override
Definition PlayerModelImpl3_Shadow.h:100
void setAnm(s32 anm_id, f32 rate, f32 blend_duration=0.0f, f32 frame=0.0f) override
void setBodyRate(f32 rate) override
Definition PlayerModelImpl3_Shadow.h:96
void setTevColor0Alpha(s32 idx_material, f32 value) override
void calcImpl() override
void play() override