1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-07-14 20:05:02 +00:00

Interface improvements (#822)

* Add symbols, does NOT build OK

* parameter OK with syms

* Use `static` more and inline arrays

* wip docs

* Start on Interface_Draw, NOT OK yet

* rename variables since interface dev is weird

* nonmatching for now

* kaleido

* Update src/code/z_parameter.c

Co-authored-by: louist103 <35883445+louist103@users.noreply.github.com>

* Make most texture rectangles use shifts

* fix symbols for all interface things

* done with interface_draw for now

* Update z_parameter.c

* format files

* fix wrong function calls

* fix bss

* improvements in matching

* remove button enum for now

* (void)0 to fix warning

* make conditional look nicer

* fix

* fix wrong combiner

* Update src/overlays/actors/ovl_kaleido_scope/z_lmap_mark.c

Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>

* format

* remove "HUD" naming

* review suggestions

Co-authored-by: louist103 <35883445+louist103@users.noreply.github.com>
Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com>
This commit is contained in:
Zelllll 2021-06-15 12:29:10 -05:00 committed by GitHub
parent 566d107e55
commit c644aaa2ee
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
30 changed files with 954 additions and 842 deletions

View file

@ -90,7 +90,7 @@
#define R_B_LABEL_DD WREG(0)
#define R_OW_MINIMAP_X WREG(29)
#define R_OW_MINIMAP_Y WREG(30)
#define R_MINIMAP_TOGGLED WREG(31)
#define R_MINIMAP_DISABLED WREG(31)
#define R_B_LABEL_X(i) WREG(40 + i)
#define R_B_LABEL_Y(i) WREG(43 + i)
#define R_DGN_MINIMAP_X WREG(68)

View file

@ -4,26 +4,6 @@
#include "z64.h"
#include "segment_symbols.h"
extern u8 D_02000000[];
extern u8 D_02000400[];
extern u8 D_02000500[];
extern u8 D_02000900[];
extern u8 D_02000A00[][0x400];
extern u8 D_02001E00[];
extern u8 D_02001F00[];
extern u8 D_02002FC0[];
extern u8 D_02002000[];
extern u8 D_02002100[];
extern u8 D_02002500[];
extern u8 D_02002580[];
extern u8 D_02002600[];
extern u8 D_02002900[];
//extern ? D_02002E40;
extern u8 D_02003040[][0x80];
extern u8 D_020035C0[][0x40];
extern u8 D_020038C0[];
extern u8 D_02003940[];
extern u8 D_02003AC0[];
extern u32 D_0300AA48;
extern u32 D_03012B20;
extern Gfx D_06025218[];
@ -36,7 +16,6 @@ extern Gfx D_0602A738[];
extern Gfx D_0602CB48[];
//extern ? D_070380D4;
//extern ? D_0703811C;
extern u8 D_080895C0[];
//extern ? D_80000004;
//extern ? D_80000008;

View file

@ -21,6 +21,7 @@
#include "z64math.h"
#include "z64map_mark.h"
#include "z64transition.h"
#include "z64interface.h"
#include "bgm.h"
#include "sfx.h"
#include "color.h"

71
include/z64interface.h Normal file
View file

@ -0,0 +1,71 @@
#ifndef _Z64INTERFACE_H_
#define _Z64INTERFACE_H_
/**
* Button HUD Positions (Upper Left)
*/
#define A_BUTTON_X 186
#define A_BUTTON_Y 9
#define B_BUTTON_X 160
#define B_BUTTON_Y 17
#define C_LEFT_BUTTON_X 227
#define C_LEFT_BUTTON_Y 18
#define C_DOWN_BUTTON_X 249
#define C_DOWN_BUTTON_Y 34
#define C_RIGHT_BUTTON_X 271
#define C_RIGHT_BUTTON_Y 18
#define C_UP_BUTTON_X 254
#define C_UP_BUTTON_Y 16
/**
* These are the colors for the hearts in the interface. The prim color is the red color of the heart
* for the base hearts, while the prim color for the double defense hearts is the white outline. The
* env color for the base hearts is the purple-ish outline, while the env color for the double defense
* hearts is the red color of the hearts.
*/
#define HEARTS_PRIM_R 255
#define HEARTS_PRIM_G 70
#define HEARTS_PRIM_B 50
#define HEARTS_ENV_R 50
#define HEARTS_ENV_G 40
#define HEARTS_ENV_B 60
#define HEARTS_DD_PRIM_R 255
#define HEARTS_DD_PRIM_G 255
#define HEARTS_DD_PRIM_B 255
#define HEARTS_DD_ENV_R 200
#define HEARTS_DD_ENV_G 0
#define HEARTS_DD_ENV_B 0
/**
* The burn and drown colors listed here are unused. Prerelease footage of the game confirms that at one
* point in development the orange color was to be used while taking damage from hot environments.
* Based on this, we can assume that the blue heart color was to be used while drowning.
* In the final game these environments only have a timer and do not damage you continuously.
*/
#define HEARTS_BURN_PRIM_R 255
#define HEARTS_BURN_PRIM_G 190
#define HEARTS_BURN_PRIM_B 0
#define HEARTS_BURN_ENV_R 255
#define HEARTS_BURN_ENV_G 0
#define HEARTS_BURN_ENV_B 0
#define HEARTS_DROWN_PRIM_R 100
#define HEARTS_DROWN_PRIM_G 100
#define HEARTS_DROWN_PRIM_B 255
#define HEARTS_DROWN_ENV_R 0
#define HEARTS_DROWN_ENV_G 0
#define HEARTS_DROWN_ENV_B 255
#endif