mirror of
https://github.com/zeldaret/mm.git
synced 2026-06-25 17:24:27 -04:00
ovl_en_ossan OK and documented (#223)
* Lots of progress, some came for OOT WIP * Some small cleanup * Fix merge conflict * Bring over updated z_en_girla.h * Fix merge error * some cleanup * fix msgcontext and add sfx ids * func_808AAB30 is ugly but it matches * Cleanup * More cleanup and matched func_808AA8E8 * Matched last two functions * Brought over data as a comment * Figured out data, but not late rodata * Document EnOssan * Cleanup * Added ShopItemIds * Cleanup * Switch left and right stick prompts * Remove testing NON_MATCHING define * Cleanup * Add header to .c file * Adjust header * Rename InitCutscenes to GetCutscenes * Cleanup * Cleanup before merge with upstream * More cleanup * Lower case Shopkeeper * More cleanup * More general cleaning * Found the late rodata issue * Format * Rename InitalUpdate * PR suggestions except texture stuff * Texture stuff * Rename Texture typedef to UNK_TEXPTR * One more rename * Remove * from TexturePtr arrays * Update src/overlays/actors/ovl_En_Ossan/z_en_ossan.c Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * Update src/overlays/actors/ovl_En_Ossan/z_en_ossan.c Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * Update src/overlays/actors/ovl_En_Ossan/z_en_ossan.c Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * Update src/overlays/actors/ovl_En_Ossan/z_en_ossan.c Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * Update src/overlays/actors/ovl_En_Ossan/z_en_ossan.c Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * Update src/overlays/actors/ovl_En_Ossan/z_en_ossan.c Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * Update src/overlays/actors/ovl_En_Ossan/z_en_ossan.c Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * Update src/overlays/actors/ovl_En_Ossan/z_en_ossan.c Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * Update src/overlays/actors/ovl_En_Ossan/z_en_ossan.c Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * Update src/overlays/actors/ovl_En_Ossan/z_en_ossan.c Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * Update src/overlays/actors/ovl_En_Ossan/z_en_ossan.c Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> Co-authored-by: Derek Hensley <d.hensley@tempered.io> Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
This commit is contained in:
@@ -131,4 +131,9 @@ typedef struct {
|
||||
/* 0x34 */ s32 isEnabled;
|
||||
} StickDirectionPrompt; // size = 0x38
|
||||
|
||||
typedef struct ShopItem {
|
||||
/* 0x00 */ s16 shopItemId;
|
||||
/* 0x02 */ Vec3s spawnPos;
|
||||
} ShopItem; // size = 0x8;
|
||||
|
||||
#endif // Z_EN_GIRLA_H
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -3,13 +3,82 @@
|
||||
|
||||
#include <global.h>
|
||||
|
||||
#include "overlays/actors/ovl_En_GirlA/z_en_girla.h"
|
||||
|
||||
struct EnOssan;
|
||||
|
||||
typedef void (*EnOssanActionFunc)(struct EnOssan*, GlobalContext*);
|
||||
typedef void (*EnOssanBlinkFunc)(struct EnOssan*);
|
||||
|
||||
typedef struct EnOssan {
|
||||
/* 0x000 */ Actor actor;
|
||||
/* 0x144 */ char unk_144[0x2C8];
|
||||
/* 0x144 */ SkelAnime skelAnime;
|
||||
/* 0x188 */ EnOssanActionFunc actionFunc;
|
||||
/* 0x18C */ EnOssanActionFunc tmpActionFunc; // Used to restore back to correct browsing function
|
||||
/* 0x190 */ ColliderCylinder collider;
|
||||
/* 0x1DC */ s16 delayTimer;
|
||||
/* 0x1DE */ s8 objIndex;
|
||||
/* 0x1E0 */ s16 eyeTexIndex;
|
||||
/* 0x1E2 */ s16 blinkTimer;
|
||||
/* 0x1E4 */ EnOssanBlinkFunc blinkFunc;
|
||||
/* 0x1E8 */ EnGirlA* items[8];
|
||||
/* 0x208 */ s32 stickAccumX;
|
||||
/* 0x20C */ s32 stickAccumY;
|
||||
/* 0x210 */ u8 moveHorizontal;
|
||||
/* 0x211 */ u8 moveVertical;
|
||||
/* 0x214 */ f32 cursorX;
|
||||
/* 0x218 */ f32 cursorY;
|
||||
/* 0x21C */ f32 cursorZ;
|
||||
/* 0x220 */ u32 cursorColorR;
|
||||
/* 0x224 */ u32 cursorColorG;
|
||||
/* 0x228 */ u32 cursorColorB;
|
||||
/* 0x22C */ u32 cursorColorA;
|
||||
/* 0x230 */ f32 cursorAnimTween;
|
||||
/* 0x234 */ u8 cursorAnimState;
|
||||
/* 0x235 */ u8 drawCursor;
|
||||
/* 0x236 */ u8 cursorIdx;
|
||||
/* 0x238 */ StickDirectionPrompt stickLeftPrompt;
|
||||
/* 0x270 */ StickDirectionPrompt stickRightPrompt;
|
||||
/* 0x2A8 */ f32 arrowAnimTween;
|
||||
/* 0x2AC */ f32 stickAnimTween;
|
||||
/* 0x2B0 */ u8 arrowAnimState;
|
||||
/* 0x2B1 */ u8 stickAnimState;
|
||||
/* 0x2B4 */ f32 shopItemSelectedTween;
|
||||
/* 0x2B8 */ s16 lookToShopkeeperCutscene;
|
||||
/* 0x2BA */ s16 lookToLeftShelfCutscene;
|
||||
/* 0x2BC */ s16 lookToRightShelfCutscene;
|
||||
/* 0x2BE */ s16 lookToShopKeeperFromShelfCutscene;
|
||||
/* 0x2C0 */ s16 cutscene;
|
||||
/* 0x2C2 */ s16 cutsceneState;
|
||||
/* 0x2C4 */ u16 textId;
|
||||
/* 0x2C6 */ Vec3s headRot;
|
||||
/* 0x2CC */ Vec3s unk2CC; // Set but never used
|
||||
/* 0x2D2 */ s16 limbRotTableY[19];
|
||||
/* 0x2F8 */ s16 limbRotTableZ[19];
|
||||
/* 0x31E */ Vec3s limbDrawTbl[19];
|
||||
/* 0x390 */ Vec3s transitionDrawTbl[19];
|
||||
/* 0x402 */ s16 animationIdx;
|
||||
/* 0x404 */ Vec3s headRotPartTimeWorker;
|
||||
/* 0x40A */ u16 flags;
|
||||
} EnOssan; // size = 0x40C
|
||||
|
||||
/* Note:
|
||||
* Items on shelves are indexed as:
|
||||
* 7 5 3 1
|
||||
* 6 4 2 0
|
||||
*/
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ ENOSSAN_CURIOSITY_SHOP_MAN,
|
||||
/* 1 */ ENOSSAN_PART_TIME_WORKER
|
||||
} EnOssanWorker;
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ ENOSSAN_CUTSCENESTATE_STOPPED,
|
||||
/* 1 */ ENOSSAN_CUTSCENESTATE_WAITING,
|
||||
/* 2 */ ENOSSAN_CUTSCENESTATE_PLAYING
|
||||
} EnOssanCutsceneState;
|
||||
|
||||
extern const ActorInit En_Ossan_InitVars;
|
||||
|
||||
#endif // Z_EN_OSSAN_H
|
||||
|
||||
Reference in New Issue
Block a user