mirror of
https://github.com/pret/pmd-red.git
synced 2026-08-11 11:36:31 -05:00
Merge branch 'master' into stuff
This commit is contained in:
@@ -52,6 +52,9 @@ enum SpawnFlags
|
||||
SPAWN_FLAG_UNK7 = 1 << 7, // 0x80 - Not fully understood field. In the dungeon algorithm, it is set to true for all tiles in a Divider secondary structure room.
|
||||
};
|
||||
|
||||
#define VISIBILITY_FLAG_REVEALED 1 // When using Luminous Orb - whole layout is shown, but grayed-out
|
||||
#define VISIBILITY_FLAG_VISITED 2 // Tile was visited, show filled/white layout
|
||||
|
||||
// size: 0x18
|
||||
typedef struct Tile
|
||||
{
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
#ifndef GUARD_STR_202ED28_H
|
||||
#define GUARD_STR_202ED28_H
|
||||
|
||||
#include "structs/str_position.h"
|
||||
|
||||
struct unkStruct_202ED28
|
||||
{
|
||||
SpriteOAM sprite;
|
||||
s16 x;
|
||||
s16 y;
|
||||
DungeonPos pos;
|
||||
};
|
||||
|
||||
extern struct unkStruct_202ED28 gUnknown_202ED28[][6];
|
||||
|
||||
18
include/structs/str_202EDE8.h
Normal file
18
include/structs/str_202EDE8.h
Normal file
@@ -0,0 +1,18 @@
|
||||
#ifndef GUARD_STR_202EDE8_H
|
||||
#define GUARD_STR_202EDE8_H
|
||||
|
||||
#include "structs/dungeon_entity.h"
|
||||
|
||||
struct UnkStruct_202EDE8
|
||||
{
|
||||
s16 unk0;
|
||||
s16 unk2;
|
||||
Entity *unk4;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
s32 unk10;
|
||||
};
|
||||
|
||||
extern struct UnkStruct_202EDE8 gUnknown_202EDE8;
|
||||
|
||||
#endif
|
||||
@@ -82,16 +82,16 @@ typedef struct UnkDungeonGlobal_unk181E8_sub
|
||||
u8 priority; // x20
|
||||
/* 0x18209 */ u8 visibilityRange; // x21 Dungeon light level.
|
||||
/* 0x1820A */ bool8 blinded; // x22 Blacks out the screen when the player has the Blinker status.
|
||||
bool8 unk1820B; // x23
|
||||
bool8 allTilesRevealed; // x23
|
||||
bool8 unk1820C; // x24
|
||||
bool8 unk1820D; // x25
|
||||
bool8 unk1820E; // x26
|
||||
bool8 unk1820F; // x27
|
||||
bool8 showAllFloorItems; // x26
|
||||
bool8 showInvisibleTrapsMonsters; // x27
|
||||
/* 0x18210 */ bool8 hallucinating; // x28 Displays Substitute and flower sprites when the player has the Cross-Eyed status.
|
||||
bool8 unk18211; // x29
|
||||
u8 unk18212; // x2A
|
||||
bool8 unk18213; // x2B
|
||||
u8 unk18214; // x2C
|
||||
bool8 inFloorMapMode; // x2C
|
||||
u8 unk18215; // x2D
|
||||
u8 unk18216; // x2E
|
||||
u8 unk18217; // x2F
|
||||
@@ -332,6 +332,35 @@ typedef struct unkDungeon57C
|
||||
#define UNK12A18_ARR_COUNT 29
|
||||
#define UNK12A18_ARR_COUNT_2 9
|
||||
|
||||
// Some palette?
|
||||
struct UnkDungeonGlobal_1822C_Sub
|
||||
{
|
||||
u32 arr[8];
|
||||
};
|
||||
|
||||
#define DUNGEON_MAP_MAX_Y (DUNGEON_MAX_SIZE_Y / 2)
|
||||
#define DUNGEON_MAP_MAX_X (DUNGEON_MAX_SIZE_X / 2)
|
||||
|
||||
struct DungeonMapVramCopy
|
||||
{
|
||||
u32 *vramPtr;
|
||||
u32 *mapArrayPtr;
|
||||
bool8 *boolPtr;
|
||||
};
|
||||
|
||||
#define MAX_SCHEDULED_DUNGEON_MAP_COPIES 40
|
||||
|
||||
struct DungeonMap
|
||||
{
|
||||
struct UnkDungeonGlobal_1822C_Sub perTile[DUNGEON_MAP_MAX_Y][DUNGEON_MAP_MAX_X];
|
||||
bool8 tileScheduledForCopy[DUNGEON_MAP_MAX_Y][DUNGEON_MAP_MAX_X];
|
||||
struct DungeonMapVramCopy vramCopies[MAX_SCHEDULED_DUNGEON_MAP_COPIES];
|
||||
s32 scheduledVramCopiesCount;
|
||||
bool8 copyToVram;
|
||||
bool8 copyAllAtOnce;
|
||||
bool8 resetTilesScheduledForCopy;
|
||||
};
|
||||
|
||||
// size: 0x1CEDC
|
||||
typedef struct Dungeon
|
||||
{
|
||||
@@ -447,8 +476,8 @@ typedef struct Dungeon
|
||||
/* 0x17B44 */ OpenedFile *sprites[MONSTER_MAX];
|
||||
/* 0x181E4 */ OpenedFile *paletFile;
|
||||
/* 0x181E8 */ UnkDungeonGlobal_unk181E8_sub unk181e8;
|
||||
u8 fill18220[0x1BDD4 - 0x1822C];
|
||||
struct UnkStructDungeon1BDD4 unk1BDD4;
|
||||
/* 0x1822C */ struct DungeonMap dungeonMap;
|
||||
/* 0x1BDD4 */ struct UnkStructDungeon1BDD4 unk1BDD4;
|
||||
/* 0x1BE14 */ struct MessageLogString messageLogStrings[MESSAGE_LOG_STRINGS_COUNT];
|
||||
/* 0x1C570 */ DungeonLocation unk1C570;
|
||||
/* 0x1C574 */ FloorProperties unk1C574;
|
||||
|
||||
Reference in New Issue
Block a user