Go to the source code of this file.
◆ InspectIconData
Data Fields |
Vec3f |
pos |
|
f32 |
yaw |
|
f32 |
scale |
|
s32 |
holdTime |
|
char |
unk_18[0x4] |
|
s32 |
alpha |
|
char |
unk_20[0x1] |
|
s8 |
iconBounceVel |
|
s8 |
iconBounceDir |
|
u8 |
state |
|
u8 |
brightness |
|
char |
unk_25[0x3] |
|
◆ anonymous enum
Enumerator |
---|
INSPECT_ICON_APPEAR | |
INSPECT_ICON_HOLD | |
INSPECT_ICON_IDLE | |
INSPECT_ICON_VANISH | |
Definition at line 23 of file inspect_icon.c.
◆ INCLUDE_IMG()
INCLUDE_IMG |
( |
"inspect_icon.png" | , |
|
|
inspect_icon_img | ) |
◆ INCLUDE_PAL()
INCLUDE_PAL |
( |
"inspect_icon.pal" | , |
|
|
inspect_icon_pal | ) |
◆ interact_inspect_update()
void interact_inspect_update |
( |
void | | ) |
|
Definition at line 197 of file inspect_icon.c.
197 {
199 s32 brightness = 255;
200 f32 angle;
201 s32 actionState;
202
204
213 }
214 break;
220 }
221 break;
224 angle += 10.0f;
225 if (angle >= 360.0f) {
226 angle -= 360.0f;
227 }
230 break;
233 angle += 25.0f;
234 if (angle >= 360.0f) {
235 angle -= 360.0f;
236 }
241 }
242 if ((angle >= 70.0f && angle <= 110.0f) || (angle >= 250.0f && angle <= 290.0f)) {
243
245 }
247 break;
248 }
250
256 ) {
258 }
259
263 ) {
265 }
266}
s32 N GetIconBrightnessForAngle(f32 angle)
@ ENTITY_FLAG_SHOWS_INSPECT_PROMPT
Entity * get_entity_by_index(s32 index)
s32 should_continue_inspect(void)
InspectIconData * InspectIconPtr
void update_inspect_icon_pos(void)
void interact_inspect_dismiss(void)
#define COLLISION_WITH_ENTITY_BIT
PlayerStatus gPlayerStatus
void(* InteractNotificationCallback)(void)
Referenced by interact_inspect_setup().
◆ interact_inspect_dismiss()
void interact_inspect_dismiss |
( |
void | | ) |
|
◆ interact_inspect_setup()
void interact_inspect_setup |
( |
void | | ) |
|
Definition at line 43 of file inspect_icon.c.
43 {
45 f32 new_var;
46
60 }
61}
@ PA_FLAG_USING_PEACH_PHYSICS
@ PA_FLAG_INTERACT_PROMPT_AVAILABLE
! prompt
void interact_inspect_update(void)
Referenced by check_for_interactables().
◆ appendGfx_interact_prompt()
void appendGfx_interact_prompt |
( |
void | | ) |
|
Definition at line 63 of file inspect_icon.c.
63 {
66
74
76 G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
78
79 ifxImg.
raster = inspect_icon_img;
80 ifxImg.
palette = inspect_icon_pal;
81 ifxImg.
width = inspect_icon_img_width;
82 ifxImg.
height = inspect_icon_img_height;
91
93 }
94}
s32 imgfx_appendGfx_component(s32, ImgFXTexture *, u32, Matrix4f)
void imgfx_update(u32, ImgFXType, s32, s32, s32, s32, s32)
DisplayContext * gDisplayContext
Referenced by render_interact_prompt().
◆ should_continue_inspect()
s32 should_continue_inspect |
( |
void | | ) |
|
Definition at line 97 of file inspect_icon.c.
97 {
100 s32 curInteraction = collisionStatus->
curWall;
102
105
107 curInteraction = floor;
117 break;
118 }
121 && (npc != NULL)
123 ) {
126 return TRUE;
127 }
128 } else {
130 playerStatus->
flags &= ~PS_FLAG_INTERACTED;
131 return FALSE;
132 }
133 } else {
138 playerStatus->
flags &= ~PS_FLAG_INTERACTED;
139 return FALSE;
140 }
141 }
142 } else {
145 playerStatus->
flags &= ~PS_FLAG_INTERACTED;
146 return FALSE;
147 }
148 }
149 }
152 return FALSE;
153 }
154 } else {
155 playerStatus->
flags &= ~PS_FLAG_INTERACTED;
156 }
157
159 return TRUE;
160}
@ PS_FLAG_HAS_CONVERSATION_NPC
@ ENTITY_TYPE_PADLOCK_RED_FACE
@ ENTITY_TYPE_PADLOCK_RED_FRAME
@ ENTITY_TYPE_PADLOCK_BLUE_FACE
@ NPC_FLAG_USE_INSPECT_ICON
s32 phys_can_player_interact(void)
u32 get_entity_type(s32 arg0)
s32 should_collider_allow_interact(s32)
#define COLLISION_WITH_NPC_BIT
CollisionStatus gCollisionStatus
Referenced by interact_inspect_update().
◆ update_inspect_icon_pos()
void update_inspect_icon_pos |
( |
void | | ) |
|
Definition at line 162 of file inspect_icon.c.
162 {
164 f32 bounceDeltaY;
165 f32 playerHeadY;
166 f32 lastPosY;
167 f32 delta;
168
169
171
175 }
179 }
180
185
190 delta = (playerHeadY + 8.0f + bounceDeltaY - lastPosY) * 0.25f;
191 } else {
192 delta = (playerHeadY + 2.0f + bounceDeltaY - lastPosY) * 0.25f;
193 }
195}
Referenced by interact_inspect_dismiss(), and interact_inspect_update().
◆ D_8010C950
◆ InspectIcon
◆ InspectIconPtr