Paper Mario DX
Paper Mario (N64) modding
 
Loading...
Searching...
No Matches
hud_element.h
Go to the documentation of this file.
1#ifndef HUD_ELEMENT_H
2#define HUD_ELEMENT_H
3
4#include "common_structs.h"
5#include "icon_offsets.h"
6
7#define HUD_ELEMENT_BATTLE_ID_MASK 0x800
8
9typedef s32 HudScript[];
10
11enum {
40};
41
42enum {
68};
69
104
105enum {
109};
110
111typedef struct HudCacheEntry {
112 /* 0x00 */ s32 id;
113 /* 0x04 */ u8* data;
114} HudCacheEntry; // size = 0x8;
115
116typedef struct PopupMenu {
117 /* 0x000 */ HudScript* ptrIcon[32];
118 /* 0x080 */ char unk_80[0x4];
119 /* 0x084 */ s32 nameMsg[32];
120 /* 0x104 */ char unk_104[0x4];
121 /* 0x108 */ s32 userIndex[32]; // used to map menu order to a user-ID for each item
122 /* 0x188 */ char unk_188[0x4];
123 /* 0x18C */ b32 enabled[32];
124 /* 0x20C */ char unk_20C[0x4];
125 /* 0x210 */ s32 value[32]; // sale price, etc
126 /* 0x290 */ char unk_290[0x4];
127 /* 0x294 */ s32 descMsg[32];
128 /* 0x314 */ char unk_314[0x4];
129 /* 0x318 */ s32 popupType;
130 /* 0x31C */ s32 dipMode;
131 /* 0x320 */ s32 titleNumber; // used to display 2/3 with double/triple dip
132 /* 0x324 */ s32 numEntries;
133 /* 0x328 */ s32 initialPos;
134 /* 0x32C */ s16 result;
135 /* 0x32E */ char unk_32E[0x2];
136#if VERSION_PAL
137 /* 0x330 */ s32 unk_330; // message ID
138 /* 0x334 */ s32 unk_334; // x offset
139 /* 0x338 */ s32 unk_338;
140 /* 0x33C */ s32 unk_33C; // message ID
141 /* 0x340 */ s32 unk_340;
142#endif
143} PopupMenu; // size = 0x330
144
145typedef struct Shop {
146 /* 0x000 */ s16 flags;
147 /* 0x002 */ s16 numItems;
148 /* 0x004 */ s16 numSpecialPrices;
149 /* 0x006 */ char unk_06[0x2];
150 /* 0x008 */ s32 curItemSlot;
151 /* 0x00C */ s32 selectedStoreItemSlot;
152 /* 0x010 */ ShopOwner* owner;
156 /* 0x020 */ HudElemID costHID;
157 /* 0x024 */ s32 inventoryItemFlags;
159 /* 0x358 */ s32 unk_358;
160} Shop; // size = 0x35C
161
162typedef struct IconHudScriptPair {
163 /* 0x00 */ HudScript* enabled;
164 /* 0x04 */ HudScript* disabled;
165} IconHudScriptPair; // size = 0x08
166
167typedef struct VtxRect {
168 Vtx vtx[4];
169} VtxRect; // size = 0x40
170
171typedef struct HudTransform {
172 /* 0x00 */ s32 imgfxIdx;
173 /* 0x04 */ Vec3f pos;
174 /* 0x10 */ Vec3f rot;
175 /* 0x1C */ Vec3f scale;
176 /* 0x28 */ Vec2s pivot;
177 /* 0x30 */ VtxRect unk_30[3];
178} HudTransform; // size = 0xF0
179
180typedef struct HudElement {
181 /* 0x00 */ u32 flags;
182 /* 0x04 */ HudScript* readPos;
183 /* 0x08 */ HudScript* anim;
185 /* 0x10 */ u8* imageAddr;
186 /* 0x14 */ u8* paletteAddr;
187 /* 0x18 */ s32 memOffset;
189 /* 0x20 */ f32 deltaSizeX;
190 /* 0x24 */ f32 deltaSizeY;
191 /* 0x28 */ f32 unkImgScale[2];
192 /* 0x30 */ f32 uniformScale;
193 /* 0x34 */ s32 widthScale;
194 /* 0x38 */ s32 heightScale;
195 /* 0x3C */ s16 renderPosX;
196 /* 0x3E */ s16 renderPosY;
199 /* 0x45 */ s8 drawSizePreset;
200 /* 0x46 */ s8 tileSizePreset;
201 /* 0x47 */ s8 updateTimer;
202 /* 0x48 */ u8 sizeX; /* screen size? */
203 /* 0x49 */ u8 sizeY; /* screen size? */
204 /* 0x4A */ u8 opacity;
205 /* 0x4B */ Color_RGB8 tint;
208} HudElement; // size = 0x54
209
211
214extern HudScript HES_Refund;
215#if VERSION_PAL
216extern HudScript HES_Refund_de;
217extern HudScript HES_Refund_fr;
218extern HudScript HES_Refund_es;
219#endif
221
223 /* 0x00 */ s32 nameMsg;
224 /* 0x04 */ s32 unk_04;
225 /* 0x08 */ s32 worldDescMsg;
226 /* 0x0C */ s32 battleDescMsg;
227} PartnerPopupProperties; // size = 0x10
228
232
233#define HS_PTR(sym) (s32)&sym
234
235#define hs_End HUD_ELEMENT_OP_End,
236#define hs_SetRGBA(time, image) HUD_ELEMENT_OP_SetRGBA, time, (s32)image,
237#define hs_SetCI(time, name) HUD_ELEMENT_OP_SetCI, time, (s32)name##_png, (s32)name##_pal,
238#define hs_SetCI_Explicit(time, raster, palette) HUD_ELEMENT_OP_SetCI, time, (s32)raster##_png, (s32)palette##_pal,
239#define hs_Restart HUD_ELEMENT_OP_Restart,
240#define hs_Loop HUD_ELEMENT_OP_Loop,
241#define hs_SetTileSize(size) HUD_ELEMENT_OP_SetTileSize, size,
242#define hs_SetSizesAutoScale(size1, size2) HUD_ELEMENT_OP_SetSizesAutoScale, size1, size2,
243#define hs_SetSizesFixedScale(size1, size2) HUD_ELEMENT_OP_SetSizesFixedScale, size1, size2,
244#define hs_SetVisible HUD_ELEMENT_OP_SetVisible,
245#define hs_SetHidden HUD_ELEMENT_OP_SetHidden,
246#define hs_AddTexelOffsetX(x) HUD_ELEMENT_OP_AddTexelOffsetX, x,
247#define hs_AddTexelOffsetY(y) HUD_ELEMENT_OP_AddTexelOffsetY, y,
248#define hs_SetTexelOffset(x, y) HUD_ELEMENT_OP_SetTexelOffset, x, y,
249#define hs_SetIcon(time, icon) HUD_ELEMENT_OP_SetImage, time, ICON_##icon##_raster, ICON_##icon##_palette, 0, 0,
250#define hs_SetScale(scale) HUD_ELEMENT_OP_SetScale, (s32)(scale * 65536.0f),
251#define hs_SetAlpha(alpha) HUD_ELEMENT_OP_SetAlpha, alpha,
252#define hs_RandomDelay(arg0, arg1) HUD_ELEMENT_OP_RandomDelay, arg0, arg1,
253#define hs_Delete HUD_ELEMENT_OP_Delete,
254#define hs_UseIA8 HUD_ELEMENT_OP_UseIA8,
255#define hs_SetCustomSize(arg0, arg1) HUD_ELEMENT_OP_SetCustomSize, arg0, arg1,
256
258#define hs_RandomRestart(max, cutoff) HUD_ELEMENT_OP_RandomRestart, max, cutoff,
259
260#define hs_op_15(arg0) HUD_ELEMENT_OP_op_15, arg0,
261#define hs_RandomBranch(args...) HUD_ELEMENT_OP_RandomBranch, (sizeof((s32[]){args})/sizeof(s32)), args,
262#define hs_SetFlags(arg0) HUD_ELEMENT_OP_SetFlags, arg0,
263#define hs_ClearFlags(arg0) HUD_ELEMENT_OP_ClearFlags, arg0,
264#define hs_PlaySound(arg0) HUD_ELEMENT_OP_PlaySound, arg0,
265#define hs_SetPivot(arg0, arg1) HUD_ELEMENT_OP_SetPivot, arg0, arg1,
266
268#define HES_TEMPLATE_CI_ENUM_SIZE(name, sizeX, sizeY) \
269 { \
270 hs_SetVisible \
271 hs_SetTileSize(HUD_ELEMENT_SIZE_##sizeX##x##sizeY) \
272 hs_Loop \
273 hs_SetCI(60, name) \
274 hs_Restart \
275 hs_End \
276 }
277
279#define HES_TEMPLATE_CI_CUSTOM_SIZE(name, sizeX, sizeY) \
280 { \
281 hs_SetVisible \
282 hs_SetCustomSize(sizeX, sizeY) \
283 hs_Loop \
284 hs_SetCI(60, name) \
285 hs_Restart \
286 hs_End \
287 }
288
289// hud script templates used to generate item scripts
290
291#define HES_TEMPLATE_ITEM(icon) \
292 { \
293 hs_SetVisible \
294 hs_SetTileSize(HUD_ELEMENT_SIZE_32x32) \
295 hs_Loop \
296 hs_SetIcon(60, icon) \
297 hs_Restart \
298 hs_End \
299 }
300
301#define HES_TEMPLATE_ITEM_HEART_PIECE() \
302 { \
303 hs_SetVisible \
304 hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) \
305 hs_Loop \
306 hs_SetIcon(60, anim_heart_piece) \
307 hs_Restart \
308 hs_End \
309 }
310
311#define HES_TEMPLATE_ITEM_HEART() \
312 { \
313 hs_SetVisible \
314 hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) \
315 hs_Loop \
316 hs_SetIcon(10, anim_heart_0) \
317 hs_SetIcon(6, anim_heart_1) \
318 hs_Restart \
319 hs_End \
320 }
321
322#define HES_TEMPLATE_ITEM_STAR_POINT() \
323 { \
324 hs_SetVisible \
325 hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) \
326 hs_Loop \
327 hs_SetIcon(2, anim_sp_0) \
328 hs_SetIcon(2, anim_sp_1) \
329 hs_SetIcon(2, anim_sp_2) \
330 hs_SetIcon(2, anim_sp_3) \
331 hs_SetIcon(2, anim_sp_4) \
332 hs_SetIcon(2, anim_sp_5) \
333 hs_SetIcon(2, anim_sp_6) \
334 hs_SetIcon(2, anim_sp_7) \
335 hs_Restart \
336 hs_End \
337 }
338
339#define HES_TEMPLATE_ITEM_HEART_POINT() \
340 { \
341 hs_SetVisible \
342 hs_SetTileSize(HUD_ELEMENT_SIZE_32x32) \
343 hs_Loop \
344 hs_SetIcon(8, anim_hp_0) \
345 hs_SetIcon(5, anim_hp_1) \
346 hs_SetIcon(8, anim_hp_2) \
347 hs_Restart \
348 hs_End \
349 }
350
351#define HES_TEMPLATE_ITEM_FLOWER_POINT() \
352 { \
353 hs_SetVisible \
354 hs_SetTileSize(HUD_ELEMENT_SIZE_32x32) \
355 hs_Loop \
356 hs_SetIcon(8, anim_fp_0) \
357 hs_SetIcon(5, anim_fp_1) \
358 hs_SetIcon(8, anim_fp_2) \
359 hs_Restart \
360 hs_End \
361 }
362
363#define HES_TEMPLATE_ITEM_STAR_PIECE() \
364 { \
365 hs_SetVisible \
366 hs_SetTileSize(HUD_ELEMENT_SIZE_32x32) \
367 hs_Loop \
368 hs_SetIcon(12, anim_star_piece_0) \
369 hs_SetIcon(4, anim_star_piece_1) \
370 hs_SetIcon(12, anim_star_piece_2) \
371 hs_SetIcon(4, anim_star_piece_1) \
372 hs_Restart \
373 hs_End \
374 }
375
376#define HES_TEMPLATE_ITEM_COIN() \
377 { \
378 hs_SetVisible \
379 hs_SetTileSize(HUD_ELEMENT_SIZE_24x24) \
380 hs_Loop \
381 hs_op_15(0) \
382 hs_SetIcon(3, anim_coin_0) \
383 hs_SetIcon(3, anim_coin_1) \
384 hs_SetIcon(3, anim_coin_4) \
385 hs_SetIcon(3, anim_coin_5) \
386 hs_SetIcon(3, anim_coin_6) \
387 hs_SetIcon(3, anim_coin_7) \
388 hs_SetIcon(3, anim_coin_8) \
389 hs_SetIcon(3, anim_coin_9) \
390 hs_RandomRestart(100, 70) \
391 hs_op_15(1) \
392 hs_SetIcon(3, anim_coin_0) \
393 hs_SetIcon(2, anim_coin_1) \
394 hs_SetIcon(1, anim_coin_2) \
395 hs_SetIcon(1, anim_coin_3) \
396 hs_SetIcon(2, anim_coin_4) \
397 hs_SetIcon(3, anim_coin_5) \
398 hs_SetIcon(3, anim_coin_6) \
399 hs_SetIcon(3, anim_coin_7) \
400 hs_SetIcon(3, anim_coin_8) \
401 hs_SetIcon(3, anim_coin_9) \
402 hs_Restart \
403 hs_End \
404 }
405
406#define HES_COIN_SPARKLE(dx, dy) \
407 { \
408 hs_SetTexelOffset(dx, dy) \
409 hs_SetIcon(1, anim_shimmer_0) \
410 hs_SetIcon(1, anim_shimmer_1) \
411 hs_SetIcon(1, anim_shimmer_2) \
412 hs_SetIcon(2, anim_shimmer_6) \
413 hs_SetIcon(1, anim_shimmer_2) \
414 hs_SetIcon(1, anim_shimmer_3) \
415 hs_SetIcon(1, anim_shimmer_6) \
416 hs_SetIcon(1, anim_shimmer_4) \
417 hs_SetIcon(1, anim_shimmer_6) \
418 hs_SetIcon(1, anim_shimmer_5) \
419 hs_SetIcon(16, anim_shimmer_6) \
420 hs_End \
421 }
422
423void hud_element_load_script(HudElement* hudElement, HudScript* anim);
424
427void hud_element_draw_rect(HudElement* hudElement, s16 texSizeX, s16 texSizeY, s16 drawSizeX, s16 drawSizeY, s16 offsetX, s16 offsetY, s32 clamp, s32 dropShadow);
428
429void hud_element_clear_cache(void);
430
431void init_hud_element_list(void);
432
435
436void update_hud_elements(void);
437
439s32 hud_element_update(HudElement* hudElement);
440
442
444
445void render_hud_element(HudElement* hudElement);
446
448
449void func_80143C48(s32 arg0, s32 arg1, s32 camID);
450void func_80144218(s32 arg0);
451void func_80144238(s32 arg0);
452void func_80144258(s32 arg0);
453void func_80144278(s32 arg0);
454
455void draw_hud_element_internal(s32 id, s32 clipMode);
456void hud_element_draw_clipped(s32 id);
457void hud_element_draw_next(s32 id);
459
460void hud_element_set_script(s32 id, HudScript* anim);
461
463
465
466void hud_element_free(s32 id);
467
468void hud_element_set_render_pos(s32 id, s32 x, s32 y);
469
470void hud_element_get_render_pos(s32 id, s32* x, s32* y);
471
472void hud_element_set_render_depth(s32 id, s32 z);
473
475void hud_element_set_flags(s32 id, s32 flags);
476
478void hud_element_clear_flags(s32 id, s32 flags);
479
482
483void hud_element_set_scale(s32 index, f32 scale);
484
485void hud_element_use_preset_size(s32 id, s8 size);
486
487s32 func_80144E4C(s32 id);
488
489void func_80144E74(s32 id, s32 arg1);
490
492void hud_element_set_alpha(s32 id, s32 opacity);
493
494void hud_element_set_tint(s32 id, s32 r, s32 g, s32 b);
495
497
499
501
502void hud_element_free_transform(s32 id);
503
504void hud_element_set_transform_pos(s32 id, f32 x, f32 y, f32 z);
505
506void hud_element_set_transform_scale(s32 id, f32 x, f32 y, f32 z);
507
508void hud_element_set_transform_rotation(s32 id, f32 x, f32 y, f32 z);
509
510void hud_element_set_transform_rotation_pivot(s32 id, s32 dx, s32 dy);
511
512void copy_world_hud_element_ref_to_battle(s32 worldID, s32 battleID);
513
514void hud_element_set_aux_cache(void* base, s32 size);
515
517
518#endif
s32 HudElemID
s32 b32
s8 flags
Definition demo_api.c:15
HudScript * loopStartPos
char unk_104[0x4]
void func_80144258(s32 arg0)
Color_RGB8 tint
s32 func_80144E4C(s32 id)
VtxRect unk_30[3]
char unk_32E[0x2]
char unk_188[0x4]
HudScript HES_Refund
void hud_element_create_transform_C(s32 id)
HudScript * wDisabledPartnerHudScripts[]
Definition partners.c:136
HudScript * anim
void hud_element_get_render_pos(s32 id, s32 *x, s32 *y)
s32 userIndex[32]
s32 inventoryItemFlags
void hud_element_set_aux_cache(void *base, s32 size)
f32 unkImgScale[2]
void func_80144238(s32 arg0)
void func_80144218(s32 arg0)
PopupMenu itemSelectMenu
void render_hud_element(HudElement *hudElement)
char unk_80[0x4]
void hud_element_create_transform_A(s32 id)
void hud_element_set_scale(s32 index, f32 scale)
void hud_element_set_alpha(s32 id, s32 opacity)
HudScript * wPartnerHudScripts[]
Definition partners.c:130
void render_hud_elements_frontUI(void)
s32 hud_element_update(HudElement *hudElement)
s32 nameMsg[32]
HudElement * HudElementList[320]
void hud_element_draw_without_clipping(s32 id)
void hud_element_use_preset_size(s32 id, s8 size)
char unk_314[0x4]
void hud_element_set_script(s32 id, HudScript *anim)
void update_hud_elements(void)
HudScript * readPos
ShopSellPriceData * staticPriceList
void render_hud_elements_backUI(void)
ShopItemLocation * itemDataPositions
@ HUD_ELEMENT_OP_SetCI
Definition hud_element.h:14
@ HUD_ELEMENT_OP_Restart
Definition hud_element.h:15
@ HUD_ELEMENT_OP_End
Definition hud_element.h:12
@ HUD_ELEMENT_OP_SetPivot
Definition hud_element.h:39
@ HUD_ELEMENT_OP_op_16
Definition hud_element.h:34
@ HUD_ELEMENT_OP_SetVisible
Definition hud_element.h:20
@ HUD_ELEMENT_OP_AddTexelOffsetY
Definition hud_element.h:23
@ HUD_ELEMENT_OP_SetScale
Definition hud_element.h:26
@ HUD_ELEMENT_OP_SetImage
Definition hud_element.h:25
@ HUD_ELEMENT_OP_RandomBranch
Definition hud_element.h:35
@ HUD_ELEMENT_OP_PlaySound
Definition hud_element.h:38
@ HUD_ELEMENT_OP_SetSizesAutoScale
Definition hud_element.h:18
@ HUD_ELEMENT_OP_SetTexelOffset
Definition hud_element.h:24
@ HUD_ELEMENT_OP_RandomDelay
Definition hud_element.h:28
@ HUD_ELEMENT_OP_Loop
Definition hud_element.h:16
@ HUD_ELEMENT_OP_SetFlags
Definition hud_element.h:36
@ HUD_ELEMENT_OP_SetAlpha
Definition hud_element.h:27
@ HUD_ELEMENT_OP_SetTileSize
Definition hud_element.h:17
@ HUD_ELEMENT_OP_SetSizesFixedScale
Definition hud_element.h:19
@ HUD_ELEMENT_OP_RandomRestart
Definition hud_element.h:32
@ HUD_ELEMENT_OP_SetCustomSize
Definition hud_element.h:31
@ HUD_ELEMENT_OP_AddTexelOffsetX
Definition hud_element.h:22
@ HUD_ELEMENT_OP_SetRGBA
Definition hud_element.h:13
@ HUD_ELEMENT_OP_UseIA8
Definition hud_element.h:30
@ HUD_ELEMENT_OP_ClearFlags
Definition hud_element.h:37
@ HUD_ELEMENT_OP_SetHidden
Definition hud_element.h:21
@ HUD_ELEMENT_OP_Delete
Definition hud_element.h:29
@ HUD_ELEMENT_OP_op_15
Definition hud_element.h:33
u8 * paletteAddr
HudElementFlags
Definition hud_element.h:70
@ HUD_ELEMENT_FLAG_200000
Definition hud_element.h:92
@ HUD_ELEMENT_FLAG_ANTIALIASING
Definition hud_element.h:94
@ HUD_ELEMENT_FLAG_4000000
Definition hud_element.h:97
@ HUD_ELEMENT_FLAG_DELETE
Definition hud_element.h:89
@ HUD_ELEMENT_FLAG_DISABLED
Definition hud_element.h:72
@ HUD_ELEMENT_FLAG_SCALED
Definition hud_element.h:75
@ HUD_ELEMENT_FLAG_FLIPX
Definition hud_element.h:83
@ HUD_ELEMENT_FLAG_1000000
Definition hud_element.h:95
@ HUD_ELEMENT_FLAG_10000000
Definition hud_element.h:99
@ HUD_ELEMENT_FLAG_MEMOFFSET
Definition hud_element.h:93
@ HUD_ELEMENT_FLAG_80
Definition hud_element.h:78
@ HUD_ELEMENT_FLAG_FMT_IA8
Definition hud_element.h:90
@ HUD_ELEMENT_FLAG_CUSTOM_SIZE
Definition hud_element.h:91
@ HUD_ELEMENT_FLAG_8
Definition hud_element.h:74
@ HUD_ELEMENT_FLAG_FIXEDSCALE
Definition hud_element.h:79
@ HUD_ELEMENT_FLAG_REPEATED
Definition hud_element.h:82
@ HUD_ELEMENT_FLAG_INITIALIZED
Definition hud_element.h:71
@ HUD_ELEMENT_FLAG_FLIPY
Definition hud_element.h:84
@ HUD_ELEMENT_FLAG_80000000
@ HUD_ELEMENT_FLAG_8000000
Definition hud_element.h:98
@ HUD_ELEMENT_FLAG_DROP_SHADOW
@ HUD_ELEMENT_FLAG_2000000
Definition hud_element.h:96
@ HUD_ELEMENT_FLAG_40000000
@ HUD_ELEMENT_FLAG_NO_FOLD
Definition hud_element.h:88
@ HUD_ELEMENT_FLAG_ANIMATION_FINISHED
Definition hud_element.h:73
@ HUD_ELEMENT_FLAG_BATTLE
Definition hud_element.h:81
@ HUD_ELEMENT_FLAG_FRONTUI
Definition hud_element.h:77
@ HUD_ELEMENT_FLAG_FMT_CI4
Definition hud_element.h:85
@ HUD_ELEMENT_FLAG_200
Definition hud_element.h:80
@ HUD_ELEMENT_FLAG_TRANSFORM
Definition hud_element.h:87
@ HUD_ELEMENT_FLAG_FILTER_TEX
Definition hud_element.h:86
@ HUD_ELEMENT_FLAG_TRANSPARENT
Definition hud_element.h:76
Vec3b worldPosOffset
HudScript * disabled
s16 numSpecialPrices
HudScript HES_AnimatedHandPointer
void hud_element_set_render_depth(s32 id, s32 z)
void hud_element_create_transform_B(s32 id)
Vtx vtx[4]
s16 numItems
HudScript * hud_element_get_script(s32 id)
s32 titleNumber
ShopOwner * owner
Vec2b screenPosOffset
void hud_element_set_transform_pos(s32 id, f32 x, f32 y, f32 z)
void hud_element_clear_cache(void)
HudScript HES_StatusCoin
void hud_element_draw_rect(HudElement *hudElement, s16 texSizeX, s16 texSizeY, s16 drawSizeX, s16 drawSizeY, s16 offsetX, s16 offsetY, s32 clamp, s32 dropShadow)
void hud_element_draw_next(s32 id)
s32 curItemSlot
void func_80144278(s32 arg0)
void init_hud_element_list(void)
void hud_element_set_tint(s32 id, s32 r, s32 g, s32 b)
void create_standard_popup_menu(PopupMenu *)
void hud_element_set_transform_rotation(s32 id, f32 x, f32 y, f32 z)
HudElemID costHID
HudTransform * hudTransform
HudScript * ptrIcon[32]
void hud_element_set_render_pos(s32 id, s32 x, s32 y)
PartnerPopupProperties gPartnerPopupProperties[13]
Definition 5B320.c:331
@ HUD_ELEMENT_SIZE_24x24
Definition hud_element.h:45
@ HUD_ELEMENT_SIZE_192x32
Definition hud_element.h:61
@ HUD_ELEMENT_SIZE_32x16
Definition hud_element.h:54
@ HUD_ELEMENT_SIZE_64x64
Definition hud_element.h:48
@ HUD_ELEMENT_SIZE_40x40
Definition hud_element.h:62
@ HUD_ELEMENT_SIZE_40x24
Definition hud_element.h:66
@ HUD_ELEMENT_SIZE_32x24
Definition hud_element.h:67
@ HUD_ELEMENT_SIZE_12x12
Definition hud_element.h:55
@ HUD_ELEMENT_SIZE_64x16
Definition hud_element.h:59
@ HUD_ELEMENT_SIZE_24x8
Definition hud_element.h:58
@ HUD_ELEMENT_SIZE_40x16
Definition hud_element.h:65
@ HUD_ELEMENT_SIZE_32x40
Definition hud_element.h:64
@ HUD_ELEMENT_SIZE_16x24
Definition hud_element.h:51
@ HUD_ELEMENT_SIZE_16x16
Definition hud_element.h:44
@ HUD_ELEMENT_SIZE_64x32
Definition hud_element.h:53
@ HUD_ELEMENT_SIZE_8x16
Definition hud_element.h:49
@ HUD_ELEMENT_SIZE_32x8
Definition hud_element.h:57
@ HUD_ELEMENT_SIZE_48x24
Definition hud_element.h:56
@ HUD_ELEMENT_SIZE_16x32
Definition hud_element.h:52
@ HUD_ELEMENT_SIZE_48x48
Definition hud_element.h:47
@ HUD_ELEMENT_SIZE_16x8
Definition hud_element.h:50
@ HUD_ELEMENT_SIZE_16x64
Definition hud_element.h:60
@ HUD_ELEMENT_SIZE_32x32
Definition hud_element.h:46
@ HUD_ELEMENT_SIZE_8x8
Definition hud_element.h:43
@ HUD_ELEMENT_SIZE_24x16
Definition hud_element.h:63
void hud_element_set_transform_rotation_pivot(s32 id, s32 dx, s32 dy)
s32 hud_element_create(HudScript *anim)
Creates a new HUD element and returns its ID.
b32 enabled[32]
void hud_element_load_script(HudElement *hudElement, HudScript *anim)
HudElement * get_hud_element(s32 id)
void hud_element_set_flags(s32 id, s32 flags)
Turns on the given flags.
s32 value[32]
HudScript HES_MenuTimes
void hud_element_clear_flags(s32 id, s32 flags)
Turns off the given flags.
char unk_20C[0x4]
void func_80143C48(s32 arg0, s32 arg1, s32 camID)
s32 unk_358
@ HUD_ELEMENT_DRAW_NEXT
@ HUD_ELEMENT_DRAW_FIRST_WITH_CLIPPING
@ HUD_ELEMENT_DRAW_FIRST_WITHOUT_CLIPPING
void hud_element_draw_clipped(s32 id)
void hud_element_set_transform_scale(s32 id, f32 x, f32 y, f32 z)
s16 flags
s32 heightScale
X10.
void hud_element_free(s32 id)
s32 selectedStoreItemSlot
void render_transformed_hud_elements(void)
ShopItemData * staticInventory
void func_80144E74(s32 id, s32 arg1)
s32 widthScale
X10.
char unk_06[0x2]
Vec2bu customImageSize
void hud_element_free_transform(s32 id)
s32 HudScript[]
Definition hud_element.h:9
void copy_world_hud_element_ref_to_battle(s32 worldID, s32 battleID)
char unk_290[0x4]
void draw_hud_element_internal(s32 id, s32 clipMode)
HudScript * enabled
void ALT_clear_hud_element_cache(void)
Vec2bu customDrawSize
s32 descMsg[32]