Alchemy
Loading...
Searching...
No Matches

debug.c File Reference

Debug: the party presets, the message viewer and the battle test menu. More...

Go to the source code of this file.

Data Structures

struct  DebugPartyEntry
 One row of the debug party presets (presets.tsv): a party member, the level to raise them to, the djinn of each element to give them, the items to equip and up to two abilities to teach. More...

Macros

#define WINDOW_WORK_MESSAGE_BUSY   0x12f8
#define DEBUG_SECOND_FORM   MsgBecameCursed
#define DEBUG_PRESET_LAST_ROW   332
 The last row of presets.tsv; the scan reports a missing preset past it.
#define DEBUG_PRESET_END   -1
#define DEBUG_VIEW_LIMIT
 The highest message index the viewer reaches.
#define DEBUG_FIRST_ENCOUNTER   257
 The encounter the debug battle starts with, and the Djinn tutorial's.
#define DJINN_TUTORIAL_ENCOUNTER   28

Functions

s32 DebugParty_LoadPreset (s32 preset)
 Debug: replaces the party with the members of preset number preset.
void DebugBattle_ViewMessages (void)
 Debug: a message viewer that never returns.
void DebugBattle_RunMenu (void)
 Debug: the battle test menu, which never returns.

Variables

struct DebugPartyEntry gDebug_PartyPresets []

Detailed Description

Debug: the party presets, the message viewer and the battle test menu.

Part of battle.c, the battle object, compiled only through it.

Definition in file debug.c.

Macro Definition Documentation

◆ WINDOW_WORK_MESSAGE_BUSY

#define WINDOW_WORK_MESSAGE_BUSY   0x12f8

Definition at line 10 of file debug.c.

Referenced by DebugBattle_ViewMessages().

◆ DEBUG_SECOND_FORM

#define DEBUG_SECOND_FORM   MsgBecameCursed

Definition at line 19 of file debug.c.

Referenced by DebugBattle_ViewMessages().

◆ DEBUG_PRESET_LAST_ROW

#define DEBUG_PRESET_LAST_ROW   332

The last row of presets.tsv; the scan reports a missing preset past it.

Definition at line 42 of file debug.c.

Referenced by DebugParty_LoadPreset().

◆ DEBUG_PRESET_END

#define DEBUG_PRESET_END   -1

Definition at line 43 of file debug.c.

Referenced by DebugParty_LoadPreset().

◆ DEBUG_VIEW_LIMIT

#define DEBUG_VIEW_LIMIT
Value:
(MsgLaliveroHowDidSearchForSheba - \
MsgBabiLighthouseTheyWereTerribleWeWereAbsolutely + 5)

The highest message index the viewer reaches.

Definition at line 138 of file debug.c.

Referenced by DebugBattle_ViewMessages().

◆ DEBUG_FIRST_ENCOUNTER

#define DEBUG_FIRST_ENCOUNTER   257

The encounter the debug battle starts with, and the Djinn tutorial's.

Definition at line 240 of file debug.c.

Referenced by DebugBattle_RunMenu().

◆ DJINN_TUTORIAL_ENCOUNTER

#define DJINN_TUTORIAL_ENCOUNTER   28

Definition at line 241 of file debug.c.

Referenced by DebugBattle_RunMenu().

Function Documentation

◆ DebugParty_LoadPreset()

s32 DebugParty_LoadPreset ( s32 preset)

Debug: replaces the party with the members of preset number preset.

Each member is raised to the row's level, given the row's Djinn (Set, in order of their numbers across the party), the row's abilities, and an emptied inventory holding the row's items, each equipped. Called by DebugBattle_RunMenu and, through its far stub, by the link lobby's LinkLobby_ChooseDebugPartyPreset. Changes the active party and each member's level, Djinn, abilities and inventory. Returns 1 when the table ends before that preset, 0 otherwise.

Definition at line 53 of file debug.c.

Referenced by DebugBattle_RunMenu(), DebugParty_LoadPreset(), and LinkLobby_ChooseDebugPartyPreset().

◆ DebugBattle_ViewMessages()

void DebugBattle_ViewMessages ( void )

Debug: a message viewer that never returns.

Names the first party member "Ha hi fu he ho" (MsgDebugSampleName), fills the message arguments with sample values and shows one message at a time, counted from the Babi Lighthouse dialogue (MsgBabiLighthouseTheyWereTerribleWeWereAbsolutely) or, in the second range, from DEBUG_SECOND_FORM. Right and Left step the index, R and L step it by ten, Up and Down pick the range, and B alternates between the ranges, moving on one message each time it leaves the first. A closes the window and shows the message again. Called by DebugBattle_RunMenu when Start is pressed. Renames party member 0, sets REG_DISPCNT and gGameState.messageSpeed, and clears the window work's message busy byte after each window.

Definition at line 153 of file debug.c.

Referenced by DebugBattle_RunMenu(), and DebugBattle_ViewMessages().

◆ DebugBattle_RunMenu()

void DebugBattle_RunMenu ( void )

Debug: the battle test menu, which never returns.

Without Down held it fights encounter 257 again and again with auto battle on. Holding Down at the start opens the chooser: Right and Left step the encounter, Up and Down by ten, R and L pick the party preset, Start opens the message viewer and A fights; B marks every later battle with start mode 5. Holding Down when A is pressed makes it a link battle. Exported as DebugBattle_RunMenuFar; nothing in the source calls it. Sets FLAG_DEBUG_BATTLE and, as chosen, FLAG_AUTO_BATTLE, FLAG_LINK_BATTLE and FLAG_DJINN_TUTORIAL, and resets the task table, heap and VRAM cache before each battle.

Definition at line 253 of file debug.c.

Referenced by DebugBattle_RunMenu().

Variable Documentation

◆ gDebug_PartyPresets

struct DebugPartyEntry gDebug_PartyPresets[]
extern

Referenced by DebugParty_LoadPreset().