mirror of
https://github.com/zeldaret/oot.git
synced 2024-11-25 09:45:02 +00:00
ccae1f7387
* Split z64.h more * fix speedmeter.h (expect this kind of issue resolution to pop up eventually) * fix z64object.h * fix z64state.h * fix (probably only partially) z64play.h * fix fix speedmeter.h :) * revert making a play header (sadge), add/split transition & transition_instances * move stuff to cutscene, interface * Move `TransitionCircle%` enums to `z64transition_instances.h` * z64state.h -> z64game.h with a "this is not final" comment * forward declare GraphicsContext in z64game.h instead of including the header file for it * don't comment on where the forward declarations are from reasoning: 1) it's easy to go out of sync (like this comment, it was outdated anyway) 2) any IDE can easily find the struct anyway
35 lines
1.1 KiB
C
35 lines
1.1 KiB
C
#ifndef SPEEDMETER_H
|
|
#define SPEEDMETER_H
|
|
|
|
#include "ultra64/ultratypes.h"
|
|
|
|
struct GraphicsContext;
|
|
struct GameState;
|
|
|
|
typedef struct {
|
|
/* 0x00 */ char unk_00[0x18];
|
|
/* 0x18 */ s32 unk_18;
|
|
/* 0x1C */ s32 y;
|
|
} SpeedMeter; // size = 0x20
|
|
|
|
typedef struct {
|
|
/* 0x00 */ s32 maxval;
|
|
/* 0x04 */ s32 val;
|
|
/* 0x08 */ u16 backColor;
|
|
/* 0x0A */ u16 foreColor;
|
|
/* 0x0C */ s32 ulx;
|
|
/* 0x10 */ s32 lrx;
|
|
/* 0x14 */ s32 uly;
|
|
/* 0x18 */ s32 lry;
|
|
} SpeedMeterAllocEntry; // size = 0x1C
|
|
|
|
void SpeedMeter_InitImpl(SpeedMeter* this, u32 arg1, u32 y);
|
|
void SpeedMeter_Init(SpeedMeter* this);
|
|
void SpeedMeter_Destroy(SpeedMeter* this);
|
|
void SpeedMeter_DrawTimeEntries(SpeedMeter* this, struct GraphicsContext* gfxCtx);
|
|
void SpeedMeter_InitAllocEntry(SpeedMeterAllocEntry* this, u32 maxval, u32 val, u16 backColor, u16 foreColor, u32 ulx,
|
|
u32 lrx, u32 uly, u32 lry);
|
|
void SpeedMeter_DrawAllocEntry(SpeedMeterAllocEntry* this, struct GraphicsContext* gfxCtx);
|
|
void SpeedMeter_DrawAllocEntries(SpeedMeter* meter, struct GraphicsContext* gfxCtx, struct GameState* state);
|
|
|
|
#endif
|