mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-12-26 11:44:17 +01:00
79 lines
1.7 KiB
C
79 lines
1.7 KiB
C
#ifndef GUARD_DECORATION_H
|
|
#define GUARD_DECORATION_H
|
|
|
|
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;
|
|
/*0x01*/ u8 name[16];
|
|
/*0x11*/ u8 permission;
|
|
/*0x12*/ u8 shape;
|
|
/*0x13*/ u8 category;
|
|
/*0x14*/ u16 price;
|
|
/*0x18*/ const u8 *description;
|
|
/*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 *gCurDecorInventoryItems;
|
|
extern EWRAM_DATA u8 gCurDecorationIndex;
|
|
|
|
void sub_8126968(void);
|
|
void sub_8126AD8(u8 taskId);
|
|
void sub_8127D38(u16 mapX, u16 mapY, u16 decor);
|
|
void sub_8126B2C(u8 taskId);
|
|
void sub_8127208(u8 taskId);
|
|
void sub_8127250(u8 *dest, u8 decorCat);
|
|
bool8 IsSelectedDecorInThePC(void);
|
|
u8 AddDecorationIconObject(u8 decor, s16 x, s16 y, u8 priority, u16 tilesTag, u16 paletteTag);
|
|
|
|
#endif //GUARD_DECORATION_H
|