New Super Mario Bros. U Headers
Loading...
Searching...
No Matches
PlayerModelImpl4_Mii.h
Go to the documentation of this file.
1#pragma once
2
3#include <graphics/Mii_SlotID.h>
4#include <player/PlayerModel.h>
5
6#include <common/aglTextureData.h>
7
8class ModelFFL;
9
10class MiiModel : public PlayerModel // vtbl Address: 0x10174D6C
11{
12 // getRuntimeTypeInfoStatic()::typeInfo initialization guard variable Address: 0x101E9E84
13 // getRuntimeTypeInfoStatic()::typeInfo Address: 0x101EBA70
14 SEAD_RTTI_OVERRIDE(MiiModel, PlayerModel)
15
16public:
17 static const s32 cMaterialMaxNum = 7;
18
27 static_assert(cModeHeadModel_Num == 4);
28
29public:
30 // Address: 0x029735D8
31 MiiModel(Type type, PlayerMode mode, SceneType scene_type, PlayerCharacter color, const Mii::SlotID& slot_id, sead::Heap* ffl_tmp_heap, bool override_lightmap);
32
33 // Address: 0x02973800
34 void play() override;
35
36 // Address: 0x029738CC
37 void draw() override;
38
39 // Address: 0x02973908
40 void setModelDrawBufferIndex(s32 idx_opa, s32 idx_xlu) override;
41 // Address: 0x029739B0
42 void setModelDrawFlagDirect(u32 flag) override;
43
44 // Address: 0x02973BA0
45 void setColorType(ColorType color_type, bool keep_head_konst3) override;
46
47 // Address: 0x02973EB4
48 void setMiiColor(PlayerCharacter mii_color) override;
49
50 void setMiiCapVisible(bool visible) override
51 {
52 mIsCapVisible = visible;
53 }
54
56 {
57 return mIsCapVisible;
58 }
59
60 // Address: 0x02974354
62
63 // Address: 0x0297444C
64 void setModeModel(PlayerModeModel mode_mdl) override;
65
66 // Address: 0x029744EC
67 void setTexAnmTypeImpl(TexAnmType type) override;
68
69 // Address: 0x0297453C
70 bool setPersonalAnm(ModelResource** anm_res, sead::BufferedSafeString* anm_name, s32 anm_id, bool body) override;
71 // Address: 0x029748B4
72 bool setPersonalRideAnm(ModelResource** anm_res, sead::BufferedSafeString* anm_name, s32 anm_id) override;
73
74 // Address: 0x029749F0
76
77 // Address: 0x02974ADC
79
80 // Address: 0x02974B68
82 // Address: 0x02974CD0
84 // Address: 0x02974CDC
86
87 // Address: 0x02974D18
88 f32 vf144() override;
89
90 f32 getTevColor0Alpha(s32 idx_material) override
91 {
92 return mTevColor0Alpha[idx_material];
93 }
94
95 void setTevColor0Alpha(s32 idx_material, f32 value) override
96 {
97 mTevColor0Alpha[idx_material] = value;
98 }
99
100 // Address: 0x02974D7C
101 void setInvTevColor0(f32 value) override;
102 // Address: 0x02974E68
103 void setTevKColor3(f32 value) override;
104
105protected:
119 AnimModel*,
125};
126static_assert(sizeof(MiiModel) == 0x3A8);
Definition PlayerModelImpl4_Mii.h:11
void play() override
ModeHeadModel mOldModeHeadModel
Definition PlayerModelImpl4_Mii.h:117
void setStarAnm() override
void setColorType(ColorType color_type, bool keep_head_konst3) override
ModelFFL * mFaceModel
Definition PlayerModelImpl4_Mii.h:109
void setInvTevColor0(f32 value) override
f32 vf144() override
agl::TextureData mEnvTexture_P
Definition PlayerModelImpl4_Mii.h:111
f32 getAimMotionShareScale() override
bool mIsCapVisible
Definition PlayerModelImpl4_Mii.h:124
PlayerCharacter mColor
Definition PlayerModelImpl4_Mii.h:107
void setModeModel(PlayerModeModel mode_mdl) override
ModeHeadModel
Definition PlayerModelImpl4_Mii.h:20
@ cModeHeadModel_Penguin
Definition PlayerModelImpl4_Mii.h:23
@ cModeHeadModel_Propeller
Definition PlayerModelImpl4_Mii.h:22
@ cModeHeadModel_Squirrel
Definition PlayerModelImpl4_Mii.h:24
@ cModeHeadModel_Num
Definition PlayerModelImpl4_Mii.h:25
@ cModeHeadModel_Normal
Definition PlayerModelImpl4_Mii.h:21
void removeStarAnm_OldModeModel() override
void setModelDrawBufferIndex(s32 idx_opa, s32 idx_xlu) override
void setModelDrawFlagDirect(u32 flag) override
sead::SafeArray< AnimModel *, cModeHeadModel_Num > mModeHeadModelArray
Definition PlayerModelImpl4_Mii.h:121
void removeStarAnm_NowModeModel() override
ModeHeadModel mNowModeHeadModel
Definition PlayerModelImpl4_Mii.h:116
void setMiiColor(PlayerCharacter mii_color) override
AnimModel * mModeHeadModel
Definition PlayerModelImpl4_Mii.h:122
sead::BitFlag16 mModeHeadModelLoadFlag
Definition PlayerModelImpl4_Mii.h:123
bool setPersonalAnm(ModelResource **anm_res, sead::BufferedSafeString *anm_name, s32 anm_id, bool body) override
void draw() override
agl::TextureData mEnvTexture_Star
Definition PlayerModelImpl4_Mii.h:110
f32 mHeadPatAnmFrame
Definition PlayerModelImpl4_Mii.h:112
Mii::SlotID mSlotID
Definition PlayerModelImpl4_Mii.h:108
void onPMusaChange() override
void setTevColor0Alpha(s32 idx_material, f32 value) override
Definition PlayerModelImpl4_Mii.h:95
void setMiiCapVisible(bool visible) override
Definition PlayerModelImpl4_Mii.h:50
void setTexAnmTypeImpl(TexAnmType type) override
sead::SafeArray< f32, cMaterialMaxNum > mTevColor0Alpha
Definition PlayerModelImpl4_Mii.h:115
f32 getTevColor0Alpha(s32 idx_material) override
Definition PlayerModelImpl4_Mii.h:90
MiiModel(Type type, PlayerMode mode, SceneType scene_type, PlayerCharacter color, const Mii::SlotID &slot_id, sead::Heap *ffl_tmp_heap, bool override_lightmap)
void setTevKColor3(f32 value) override
bool setPersonalRideAnm(ModelResource **anm_res, sead::BufferedSafeString *anm_name, s32 anm_id) override
void calcImpl() override
f32 mHeadPatAnmRate
Definition PlayerModelImpl4_Mii.h:113
ModelResource * mMiiAnmRes
Definition PlayerModelImpl4_Mii.h:106
bool isMiiCapVisible() override
Definition PlayerModelImpl4_Mii.h:55
FrameCtrl::PlayMode mHeadPatAnmPlayMode
Definition PlayerModelImpl4_Mii.h:114
Definition ModelFFL.h:14