diff options
author | PikalaxALT <PikalaxALT@users.noreply.github.com> | 2017-10-22 18:55:07 -0400 |
---|---|---|
committer | Diegoisawesome <Diegoisawesome@users.noreply.github.com> | 2017-10-22 17:55:07 -0500 |
commit | c042e5148b9fa3a51a4010922c3f9cd6ba11b51e (patch) | |
tree | 9006d66739fda70b8216f1dcb151f5e296809e08 /include/decoration.h | |
parent | 1bab62e1cd127e5e01adf839f1d74c5e59ce16bb (diff) |
Decoration + decoration_inventory (#89)
* SetDecorationInventoriesPointers
* ClearDecorationInventories
* CheckHasDecoration
* DecorationAdd
* DecorationCheckSpace
* DecorationRemove
* sub_8161A38
* CountDecorations; Funcion renaming
* Disassemble decoration data structs, tilemaps, and descriptions
* sub_8126968
* sub_81269D4
* through sub_8126A88
* through sub_8126B2C
* sub_8126B80
* sub_8126C08
* sub_8126C48
* sub_8126CA4
* sub_8126D10
* sub_8126E44
* sub_8126E8C
* sub_8126F68
* sub_8127058
* sub_8127088
* sub_81270E8
* through sub_8127208
* through sub_8127268
* sub_8127284
* through sub_81272F8
* sub_8127330
* through sub_8127480
* sub_81274A0
* sub_8127500; makefile now tells scaninc to scan headers
* Actual real fix to mapfile being in build/emerald instead of wd
* through sub_812759C
* through sub_812764C
* through sub_8127744
* through sub_81277BC
* sub_81277E8
* sub_8127814
* through sub_81279C4
* through sub_8127ACC
* sub_8127B04
* sub_8127B54
* sub_8127B90
* sub_8127D38
* sub_8127E18
* sub_8127F68
* sub_8128060
* ConfigureCameraObjectForPlacingDecoration
* SetUpPlacingDecorationPlayerAvatar
* sub_812826C
* through sub_8128414
* through sub_81284F4
* sub_812853C
* sub_8128950
* through sub_8128AAC
* through sub_8128BBC
* c1_overworld_prev_quest
* sub_8128C64
* sub_8128CD4
* sub_8128D10
* sub_8128DB4
* through sub_8128E18
* through sub_8129068
* sub_8129088
* through sub_81291E8
* sub_812925C
* sub_81292D0
* sub_81292E8
* gpu_pal_decompress_alloc_tag_and_upload
* AddDecorationIconObjectFromIconTable
* GetDecorationIconPicOrPalette
* AddDecorationIconObjectFromFieldObject
* AddDecorationIconObject
* through sub_8129708
* sub_81297F8
* sub_81298EC
* SetUpPuttingAwayDecorationPlayerAvatar
* sub_8129ABC
* sub_8129B34
* sub_8129BCC
* through sub_8129C74
* through sub_8129D8C
* sub_8129E0C
* sub_8129E74
* sub_8129F20
* sub_8129FC8
* sub_812A040
* nonmatching sub_812A0E8
* through sub_812A22C
* sub_812A25C
* sub_812A2C4
* through sub_812A39C
* Remaining fns in decoration.s
* Decompile decoration headers
* Decompile all remaining decoration data that had already been disassembled
* Disassemble two data objects
* Suggest structure of list menu template
* decompile through decoration list menu template
* Disassemble decoration icon graphics table
* Rip icon gfx
* Decompile deco icon table
* Decompile more data related to drawing decorations
* Decompile gUnknown_085A7250 structs
* Decompile two sprite templates
* Decompile remaining data in decoration.s
* Decompile decoration ewram
* deco -> decor
Diffstat (limited to 'include/decoration.h')
-rw-r--r-- | include/decoration.h | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/include/decoration.h b/include/decoration.h index bbb77d127..c426a479a 100644 --- a/include/decoration.h +++ b/include/decoration.h @@ -125,6 +125,47 @@ enum DecoId { /*120*/ DECOR_REGISTEEL_DOLL }; +enum DecorPerm { + /* + * The nomenclature here describes collision and placement permissions, in that order. + */ + DECORPERM_SOLID_FLOOR, + DECORPERM_PASS_FLOOR, + DECORPERM_BEHIND_FLOOR, + DECORPERM_NA_WALL, + DECORPERM_SOLID_MAT +}; + +enum DecorShape { + /* + * Width-x-height + */ + DECORSHAPE_1x1, + DECORSHAPE_2x1, + DECORSHAPE_3x1, // unused + DECORSHAPE_4x2, + DECORSHAPE_2x2, + DECORSHAPE_1x2, + DECORSHAPE_1x3, // unused + DECORSHAPE_2x4, + DECORSHAPE_3x3, + DECORSHAPE_3x2 +}; + +enum DecorCat { + /* + * In which category you can find the decoration in the PC. + */ + /*0*/ DECORCAT_DESK, + /*1*/ DECORCAT_CHAIR, + /*2*/ DECORCAT_PLANT, + /*3*/ DECORCAT_ORNAMENT, + /*4*/ DECORCAT_MAT, + /*5*/ DECORCAT_POSTER, + /*6*/ DECORCAT_DOLL, + /*7*/ DECORCAT_CUSHION +}; + struct Decoration { /*0x00*/ u8 id; @@ -137,6 +178,18 @@ struct Decoration /*0x1c*/ const u16 *tiles; }; +struct DecorPCPointers +{ + /* 0x00 */ u8 *items; + /* 0x04 */ u8 *pos; + /* 0x08 */ u8 size; + /* 0x09 */ u8 isPlayerRoom; +}; + extern const struct Decoration gDecorations[]; +extern EWRAM_DATA u8 *gUnknown_0203A14C; +extern EWRAM_DATA u8 gUnknown_0203A172; + +void sub_8126968(void); #endif //GUARD_DECORATION_H |