Digimon World 3 decomp
The European version, SLES_039.36
Loading...
Searching...
No Matches
menu.h File Reference

FIGHTSTG's player turn and its menus, the cursor, the HUD, the message box and the partner's info and view (player_turn.c to partner_view.c). More...

Include dependency graph for menu.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  HpTween
 A number that eases from one value to another (FIGHTSTG_stepHpTween) More...
 
struct  HpDisplay
 FIGHTSTG_createHud's task: the names and the hp of the fighters out. More...
 
struct  PlayerTurn
 The player's turn (FIGHTSTG_updatePlayerTurn, BATTLE_TASK_PLAYER_TURN): the battle menu, then the menus of its commands. More...
 
struct  DigivolveMenu
 The menu of the Digimon the active partner can digivolve into (FIGHTSTG_createDigivolveMenu), with the PartnerInfo of the one under the cursor. More...
 
struct  DigivolveMenuWindows
 FIGHTSTG_updateDigivolveMenu's children. More...
 
struct  TechMenu
 FIGHTSTG_createTechMenu's task: a menu of techniques, six a page. More...
 
struct  ItemMenu
 The battle's item menu (FIGHTSTG_updateItemMenu): the usable items, seven a page. More...
 
struct  ItemMenuWindows
 FIGHTSTG_updateItemMenu's children. More...
 
struct  SwitchInMenu
 The menu after the switch menu (FIGHTSTG_createSwitchInMenu): which of the incoming partner's Digimon comes in, then whether it just switches in or does the pair technique with the active fighter (only with FIGHTSTG_createPairSwitchMenu's techResult) More...
 
struct  SwitchInMenuWindows
 FIGHTSTG_updateSwitchInMenu's children. More...
 
struct  CommandMenu
 The battle's command menu (FIGHTSTG_createCommandMenu) More...
 
struct  CommandMenuWindows
 FIGHTSTG_updateCommandMenu's children: a cursor over six lines. More...
 
struct  PartnerView
 Shows the partner's model on layer 0x1009 (FIGHTSTG_createPartnerView), through the two FighterCamera children, a new one each time it is set up. More...
 
struct  BattleMessageBox
 A battle message box (FIGHTSTG_createMessage): shows its messages a line at a time, each until cross, then ends. More...
 
struct  BattleMessageBoxWindows
 FIGHTSTG_updateMessage's children: the lines it shows one by one. More...
 
struct  BattleMessage
 What FIGHTSTG_updateMessage's messages say, for some of their types. More...
 
struct  PartnerInfo
 A page about a partner in one of its Digimon (FIGHTSTG_createPartnerInfo): its stats, its techniques, or the techniques its other Digimon can pass on. More...
 
struct  StatLine
 A line of FIGHTSTG_showStats's stat list (FIGHTSTG_statLines): where its number goes and the stat it shows. More...
 
struct  SwitchMenu
 The battle's switch menu (FIGHTSTG_createSwitchMenu): the player's other fighters, with their HP and MP, to bring in for the active one; a message when there are none. More...
 
struct  SwitchMenuWindows
 FIGHTSTG_updateSwitchMenu's children: two of each window, one per fighter. More...
 
struct  ConfusedMenu
 A confused partner's command menu (FIGHTSTG_createConfusedMenu): a cursor over six of the shuffled lines; unless the fighter shakes off the confusion, the message of the one picked, shown like a BattleMessageBox's. More...
 
struct  ConfusedMenuWindows
 Its children: the cursor, then its six lines; the first two are the message's after a pick. More...
 
struct  CursorLayout
 A menu cursor's layout, which FIGHTSTG_createCursor copies into its task: a highlight bar over count lines, and a sprite per line (sprite -1: none) More...
 
struct  MenuCursor
 A menu cursor (FIGHTSTG_createCursor): up and down move it, its bar is drawn by FIGHTSTG_drawCursorBar at vsync and each line's sprite blinks while it is picked. More...
 
union  TechMenuChild
 One of FIGHTSTG_updateTechMenu's children: the cursor first, then the text windows. More...
 
union  PlayerTurnChild
 One of FIGHTSTG_updatePlayerTurn's seven children: 0 the HUD, 1 the command or the confused menu, 2 the partner's view, 3 the open command's menu, 4 the pair switch or switch-in menu and 6 the shot camera, which substate 0 closes alike as tasks. More...
 
struct  FighterFilter
 Which fighters FIGHTSTG_findFighters looks for. More...
 
struct  ConfusedMessage
 A result of FIGHTSTG_updateConfusedMenu. More...
 

Macros

#define TECH_MENU_LINES   6
 The lines of a page of the technique menu.
 
#define ITEM_MENU_LINES   7
 The lines of a page of the item menu.
 
#define BATTLE_COMMAND_ATTACK   0
 The command menu's lines, PlayerTurn.command.
 
#define BATTLE_COMMAND_TECH   1
 
#define BATTLE_COMMAND_DIGIVOLVE   2
 
#define BATTLE_COMMAND_SWITCH   3
 
#define BATTLE_COMMAND_ITEM   4
 
#define BATTLE_COMMAND_RUN   5
 
#define BATTLE_COMMAND_COUNT   6
 

Functions

PlayerTurn * FIGHTSTG_startPlayerTurn (void)
 The tasks FIGHTSTG starts for WFIGHTMN and WFIGHTTS.
 
BattleMessageBox * FIGHTSTG_createMessage (void)
 Creates a battle message box (FIGHTSTG_updateMessage)
 
void FIGHTSTG_setPlayerTurnStep (s32 substate)
 The events they queue for WFIGHTMN, and its turn's substate.
 
s32 FIGHTSTG_isPlayerChoosing (void)
 Whether the player's turn has a menu open (its substate isn't 0)
 
void FIGHTSTG_updateHpTweens (HpDisplay *task, TextWindow **windows)
 Every frame: the hp tween of a side whose active fighter changed jumps to that fighter's hp; every interval, a side's tween starts easing (30 frames) to its fighter's hp, clamped to 0 and the max hp, when that changed.
 
void FIGHTSTG_stepHpTween (HpTween *tween)
 Eases an HP number towards its target over its duration, along a sine.
 
void FIGHTSTG_showFighterNames (HpDisplay *task, TextWindow **windows)
 Shows the names of both sides' active fighters, when they changed.
 
void FIGHTSTG_drawHud (HpDisplay *task, TextWindow **windows)
 Draws the battle HUD: both HP bars, the technique gauge (full at 1000) and the fighters' icons.
 
void FIGHTSTG_updateHud (HpDisplay *task, TextWindow **windows)
 The battle HUD's task: makes its windows and starts the HP numbers at the fighters' HP, then each frame eases them and draws the HUD (FIGHTSTG_drawHud)
 
void FIGHTSTG_drawPartnerViewFrame (PartnerView *task, FighterCamera **cameras)
 Draws the frame around the partner view.
 
void FIGHTSTG_updatePartnerView (PartnerView *task, FighterCamera **cameras)
 The partner view's task: makes layer 0x1009 beside the menus, then once the models are there shows the player's active model on it through a new FighterCamera (ending the other one) and draws the frame each frame; when killed, takes the model off the layer and destroys it.
 
void FIGHTSTG_updatePlayerTurn (PlayerTurn *task, PlayerTurnChild *children)
 The player's turn: substate 2 opens the command menu (runCommandMenu) and then the menu of its command (runDigivolveMenu, runItemMenu, runTechMenu, runSwitchMenu), 3 the confused menu (runConfusedMenu) and 4 the switch menu after a knockout (runKnockOutSwitchMenu); each sets action and goes back to substate 0, which closes the children.
 
void FIGHTSTG_drawSwitchInMenu (SwitchInMenu *task)
 Draws the switch-in menu's frames, the second one with the pair technique.
 
void FIGHTSTG_createSwitchInWindows (SwitchInMenu *task, SwitchInMenuWindows *w)
 Makes the switch-in menu's windows: the four names, the choices and the MP.
 
void FIGHTSTG_showSwitchInNames (SwitchInMenu *task, SwitchInMenuWindows *w, s32 visible)
 Shows the names of the incoming partner's Digimon, or hides them.
 
void FIGHTSTG_showSwitchInChoices (SwitchInMenu *task, SwitchInMenuWindows *w, s32 visible)
 Shows the picked Digimon's name and the choices, switching in palette 7 when flag 0x10 bars it and the pair technique in palette 7 when it can't be done, with its MP cost and the active fighter's MP; or hides them.
 
void FIGHTSTG_updateSwitchInMenu (SwitchInMenu *task, SwitchInMenuWindows *w)
 The switch-in menu's task: L1 and R1 turn the PartnerInfo's page, cross picks the Digimon, then switching (not with flag 0x10 on either fighter) or the pair technique (with the MP, HP and none of flag 0x20 or sleep), which spends both fighters' MP; triangle goes back a step.
 
void FIGHTSTG_showDigivolveNames (DigivolveMenu *task)
 Shows the names of the Digimon the menu's partner can digivolve into, its current one in palette 7.
 
void FIGHTSTG_updateDigivolveMenu (DigivolveMenu *task, void *children)
 The digivolve menu's task: L1 and R1 turn the PartnerInfo's page, cross picks one other than the fighter's current Digimon into *result, triangle gives -2.
 
SwitchInMenu * FIGHTSTG_createSwitchInMenu (s32 *result)
 Opens the switch-in menu for fighter *result, without the pair technique.
 
void FIGHTSTG_drawItemMenu (ItemMenu *task)
 Draws the page's item icons, the page arrows (blinking) and the frame.
 
void FIGHTSTG_createItemWindows (ItemMenu *task, ItemMenuWindows *w)
 Makes the item menu's windows: the page buttons, the count's label, the seven names, the description and the count.
 
void FIGHTSTG_showItemPage (ItemMenu *task, ItemMenuWindows *w)
 Shows the page's names and the description and count of the item under the cursor, or text 0x15 and 0x1A when there are none.
 
void FIGHTSTG_updateItemMenu (ItemMenu *task, ItemMenuWindows *w)
 The item menu's task: lists the items usable in battle (flag 2), then L1 and R1 turn the pages, cross picks the item under the cursor into *result and triangle gives -2; frees the list when killed.
 
void FIGHTSTG_drawTechMenu (TechMenu *task)
 Draws the page's technique icons, the page arrows (blinking) and the frame.
 
void FIGHTSTG_createTechWindows (TechMenu *task, TechMenuChild *children)
 Makes the technique menu's windows: the page buttons, the active fighter's MP over its max (or a text by its MP for a temporary Digimon), the six names, the description and the technique's MP cost.
 
void FIGHTSTG_showTechPage (TechMenu *task, TechMenuChild *children)
 Shows the page's techniques (palette 7 for those the fighter lacks the MP for, 3 its signature one, 4 those passed on) and the description and MP cost of the one under the cursor, or text 0x13 when there are none.
 
void FIGHTSTG_updateTechMenu (TechMenu *task, TechMenuChild *children)
 The battle's technique menu: the active fighter's techniques (a Digimon of a partner's slots has its entry's, its signature one and the ones the other entries can pass on), six a page.
 
void FIGHTSTG_drawMessageBox (BattleMessageBox *task)
 Draws the message box and, once its lines are out, its blinking arrow.
 
void FIGHTSTG_stepMessage (BattleMessageBox *task, BattleMessageBoxWindows *windows)
 Shows the message's lines one by one, 3 frames apart, then on cross shows the queue's next message or ends; after finish (substate 4) it ends after 0x14 frames or on cross.
 
void FIGHTSTG_updateMessage (BattleMessageBox *task, void *children)
 The battle message box's task: draws it and steps its message each frame.
 
void FIGHTSTG_showMessage (BattleMessageBox *task, s32 type, s32 *data)
 The message box's show: sets up the lines of message type from data, mostly a fighter's name with a text, a technique or a number, and starts showing them.
 
void FIGHTSTG_finishMessage (BattleMessageBox *task)
 The message box's finish: closes it after 0x14 frames or on cross.
 
void FIGHTSTG_showCommands (CommandMenu *task)
 Shows the six commands once, greying out attack, techniques and digivolve when the active fighter is asleep and digivolve when it has flag 0x20 (the first window's setPalette is called for each)
 
void FIGHTSTG_updateCommandMenu (CommandMenu *task, CommandMenuWindows *w)
 The command menu's task: puts a cursor (FIGHTSTG_commandCursor) on the lines, starting on start; cross picks the line into *result and locks the cursor, but not the greyed-out ones (FIGHTSTG_showCommands).
 
void FIGHTSTG_drawPageArrows (PartnerInfo *task)
 Draws the PartnerInfo's blinking page arrows.
 
void FIGHTSTG_showPageButtons (PartnerInfo *task, TextWindow **windows)
 Shows the PartnerInfo's page buttons (texts 0x11 and 0x12)
 
void FIGHTSTG_drawStatsFrame (PartnerInfo *task)
 Draws the frame of the stats page.
 
void FIGHTSTG_showStats (PartnerInfo *task, TextWindow **windows)
 Creates the thirteen stat numbers of FIGHTSTG_statLines (up to 999), right aligned, in palette 6 for windows 5, 6 and 9 when stats 19, 20 and 21 are set.
 
void FIGHTSTG_drawTechIcons (PartnerInfo *task)
 Draws the techniques page's icons and frame.
 
void FIGHTSTG_showTechs (PartnerInfo *task, TextWindow **windows)
 Shows the techniques page: the level (text 0x1A for none) and the six techniques' names, the partner's own in yellow and those it can pass on in green.
 
void FIGHTSTG_updatePartnerInfo (PartnerInfo *task, TextWindow **windows)
 The PartnerInfo's task: works out its page (the stats with the slot's Digimon's added, that Digimon's techniques, or those the partner's other Digimon can pass on) and makes its windows, then draws the page each frame.
 
void FIGHTSTG_updateSwitchMenu (SwitchMenu *task, SwitchMenuWindows *w)
 The switch menu's task: puts a cursor on the other fighters, starting on line; cross picks one with HP into *result, triangle gives -2 when it can cancel.
 
void FIGHTSTG_updateConfusedMenu (ConfusedMenu *task, ConfusedMenuWindows *w)
 The confused menu's task: shuffles the lines, then on cross attacks (*result 0) when FIGHTSTG_battleFuncs.testConfusion fails; else closes the lines, the partner view and the camera and shows one of the picked line's two messages at random, giving 1 when it is done.
 
void FIGHTSTG_updateCursor (MenuCursor *task)
 The menu cursor's task: sets FIGHTSTG_drawCursorBar as the vsync callback, draws the lines' sprites and moves with up and down until locked; when killed, takes the callback off.
 
MenuCursor * FIGHTSTG_createCursor (CursorLayout *layout)
 Creates a menu cursor laid out by layout.
 
PartnerInfo * FIGHTSTG_createPartnerInfo (s32 partner, s32 page, s32 slot)
 Shows page page about the partner in slot (0 for itself)
 
HpDisplay * FIGHTSTG_createHud (void)
 Creates the battle HUD (FIGHTSTG_updateHud)
 
CommandMenu * FIGHTSTG_createCommandMenu (s32 start, s32 *result)
 Opens the battle's command menu with the cursor on start; *result gets the command (PlayerTurn.command)
 
PartnerView * FIGHTSTG_createPartnerView (void)
 Creates the partner view (FIGHTSTG_updatePartnerView), whose children are its two cameras.
 
DigivolveMenu * FIGHTSTG_createDigivolveMenu (s32 *result)
 Opens the menu of the Digimon the partner *result can digivolve into; result gets the one picked, or -2 to go back.
 
ItemMenu * FIGHTSTG_createItemMenu (s32 *result)
 Opens the battle's item menu; *result gets the item picked, or -2 to go back.
 
TechMenu * FIGHTSTG_createTechMenu (s32 *result)
 Opens the battle's technique menu; *result gets the technique picked, or -2 to go back.
 
SwitchMenu * FIGHTSTG_createSwitchMenu (s32 *result, s32 *line, s32 canCancel)
 Opens the switch menu; *result gets the fighter to bring in, or -2.
 
SwitchInMenu * FIGHTSTG_createPairSwitchMenu (s32 *result, s32 *techResult)
 Opens the switch-in menu for fighter *result, with the pair technique, which goes into *techResult.
 
ConfusedMenu * FIGHTSTG_createConfusedMenu (s32 *result, Task *partnerView, Task *shotCamera)
 Opens a confused partner's command menu; *result gets 0 for an attack or 1 for a lost turn.
 
s32 FIGHTSTG_getPairDigimon (SwitchMenu *task, s32 index, s32 member)
 Returns the Digimon fighter index has a pair technique with (its pairPartner, a 1-based DIGIMON_DATA entry) when party member member has it among its digivolutions, else 0.
 
void FIGHTSTG_drawSwitchMenu (SwitchMenu *task)
 Draws the pair technique icon by the fighters that have one with the active fighter.
 
void FIGHTSTG_createSwitchWindows (SwitchMenu *task, SwitchMenuWindows *w)
 Makes the switch menu's windows, two lines a fighter: the name, HP over max HP and MP over max MP.
 
void FIGHTSTG_showSwitchFighters (SwitchMenu *task, SwitchMenuWindows *w)
 Shows the switch menu's fighters' names, HP and MP, the knocked out ones' names in palette 7.
 
void FIGHTSTG_setMessageName (BattleMessageBox *task, BattleMessageBoxWindows *w, s32 side, s32 index)
 Puts the name of side's fighter index (a partner's own, an enemy's from the battle table) into the message's first line.
 
void FIGHTSTG_findFighters (BattleMessageBox *task, FighterFilter *filter)
 Lists in task's found the fighters of filter's side that its type picks: 0 the hurt, 1 the poisoned, 2 the paralyzed, 3 the confused, 4 those with any status, 5 the knocked out, 6 all, 7-9 those standing.
 
void FIGHTSTG_showFightersMessage (BattleMessageBox *task, BattleMessageBoxWindows *w, BattleMessage *msg)
 Sets up a message about the fighters FIGHTSTG_findFighters found: their names (text 0x15 plus their count) and what happened to them by msg's kind, or text 0x2F when there are none.
 
void FIGHTSTG_showConfusedCommands (ConfusedMenu *task)
 Shows the confused menu's six lines once, in FIGHTSTG_confusedLines's order.
 
void FIGHTSTG_drawConfusedMessageBox (ConfusedMenu *task)
 Draws the confused menu's message box and, once its lines are out, its blinking arrow.
 
void FIGHTSTG_stepConfusedMessage (ConfusedMenu *task, ConfusedMenuWindows *w)
 Shows the confused message's lines one by one, 3 frames apart, then ends on cross.
 
void FIGHTSTG_setConfusedName (ConfusedMenu *task, ConfusedMenuWindows *windows, s32 side)
 Puts the active partner's name into the message's first line (side 0 only)
 
void FIGHTSTG_showConfusedMessage (ConfusedMenu *task, s32 index, s32 unused)
 Sets up confused message index (FIGHTSTG_confusedMessages) with the partner's name and starts showing it.
 
void FIGHTSTG_drawCursorSprites (MenuCursor *task)
 Draws each line's sprite of the cursor, the picked one blinking through the palettes and the one left fading out.
 
void FIGHTSTG_drawCursorBar (s32 arg)
 The vsync callback while the list is open: draws the picked line's bar, moving through its frames, and the bar off the line picked before when the pick has changed, over the frame being drawn.
 

Variables

RECT FIGHTSTG_fighterCameraRect
 Shared between the overlay's objects.
 
DVECTOR FIGHTSTG_hpBars [2][4]
 FIGHTSTG_drawHud's HP bars.
 
CVECTOR FIGHTSTG_hpBarColors [4]
 the bars' colours: above and at a quarter of the HP
 
DVECTOR FIGHTSTG_techGauge [4]
 and its technique gauge
 
CVECTOR FIGHTSTG_techGaugeColors [4]
 
s16 FIGHTSTG_iconX [2][3]
 the fighter icons' x, for each side and slot
 
CursorLayout FIGHTSTG_commandCursor
 FIGHTSTG_updateCommandMenu's cursor.
 
CursorLayout FIGHTSTG_changeCursor
 FIGHTSTG_updateDigivolveMenu's cursor.
 
CursorLayout FIGHTSTG_itemCursor
 FIGHTSTG_updateItemMenu's cursor.
 
CursorLayout FIGHTSTG_techCursor
 FIGHTSTG_updateTechMenu's cursor.
 
CursorLayout FIGHTSTG_switchCursor
 FIGHTSTG_updateSwitchMenu's cursor.
 
CursorLayout FIGHTSTG_pairCursors [2]
 FIGHTSTG_updateSwitchInMenu's cursors.
 
CursorLayout FIGHTSTG_confusedCursor
 FIGHTSTG_updateConfusedMenu's.
 
StatLine FIGHTSTG_statLines [13]
 the stat numbers of FIGHTSTG_showStats
 
ConfusedMessage FIGHTSTG_confusedMessages [16]
 the confused menu's (FIGHTSTG_updateConfusedMenu) results, two per line, each a message (task->queue[0]) and its line of text 0x80
 
s16 FIGHTSTG_confusedLines [8]
 FIGHTSTG_updateConfusedMenu's lines, shuffled.
 
RECT FIGHTSTG_cursorBarRect
 where FIGHTSTG_drawCursorBar's bar is in VRAM
 
DR_MOVE FIGHTSTG_cursorBarMoves [4]
 FIGHTSTG_drawCursorBar's bar.
 
u_long FIGHTSTG_cursorBarOt [2]
 their OT
 
s32 FIGHTSTG_mpWindowX [4]
 FIGHTSTG_createSwitchInWindows's MP windows' x.
 

Detailed Description

FIGHTSTG's player turn and its menus, the cursor, the HUD, the message box and the partner's info and view (player_turn.c to partner_view.c).

Definition in file menu.h.

Macro Definition Documentation

◆ TECH_MENU_LINES

#define TECH_MENU_LINES   6

The lines of a page of the technique menu.

Definition at line 65 of file menu.h.

◆ ITEM_MENU_LINES

#define ITEM_MENU_LINES   7

The lines of a page of the item menu.

Definition at line 81 of file menu.h.

◆ BATTLE_COMMAND_ATTACK

#define BATTLE_COMMAND_ATTACK   0

The command menu's lines, PlayerTurn.command.

Definition at line 136 of file menu.h.

◆ BATTLE_COMMAND_TECH

#define BATTLE_COMMAND_TECH   1

Definition at line 137 of file menu.h.

◆ BATTLE_COMMAND_DIGIVOLVE

#define BATTLE_COMMAND_DIGIVOLVE   2

Definition at line 138 of file menu.h.

◆ BATTLE_COMMAND_SWITCH

#define BATTLE_COMMAND_SWITCH   3

Definition at line 139 of file menu.h.

◆ BATTLE_COMMAND_ITEM

#define BATTLE_COMMAND_ITEM   4

Definition at line 140 of file menu.h.

◆ BATTLE_COMMAND_RUN

#define BATTLE_COMMAND_RUN   5

Definition at line 141 of file menu.h.

◆ BATTLE_COMMAND_COUNT

#define BATTLE_COMMAND_COUNT   6

Definition at line 142 of file menu.h.

Function Documentation

◆ FIGHTSTG_startPlayerTurn()

PlayerTurn * FIGHTSTG_startPlayerTurn ( void  )

The tasks FIGHTSTG starts for WFIGHTMN and WFIGHTTS.

The tasks FIGHTSTG starts for WFIGHTMN and WFIGHTTS.

Definition at line 337 of file player_turn.c.

Referenced by setUpBattle(), and WFIGHTMN_updateMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createMessage()

BattleMessageBox * FIGHTSTG_createMessage ( void  )

Creates a battle message box (FIGHTSTG_updateMessage)

Definition at line 440 of file message.c.

Referenced by announceEnemyTech(), announceFirstTech(), announceTech(), boostAttack(), boostDefense(), boostElement(), boostFieldElement(), boostRandomElement(), boostSpeed(), confuseFighters(), cureStatus(), cureStatusTech(), damageEnemy(), dealTechDamage(), drainEnemy(), endBattleOnKnockOut(), FIGHTSTG_updateActionEvents(), FIGHTSTG_updateCounterattack(), FIGHTSTG_updateEnemyAttack(), FIGHTSTG_updateEnemyTurn(), FIGHTSTG_updateItem(), FIGHTSTG_updateOneHpTurn(), fillGauge(), fleeWhenWeak(), healPartner(), healWithTech(), lowerEnemySpeed(), queueFirstTurns(), restoreHalfHpMp(), restoreSide(), reviveParty(), reviveSide(), showCounterResult(), showEnemyName(), showFirstTechResult(), showLoweredStat(), showRunAway(), startSpecial(), switchEnemyOut(), useEnemyTech(), useItemTech(), useSupportTech(), wakeCounteredUp(), wakePlayerUp(), wakeUpOrCounter(), weakenEnemyDefense(), WFIGHTMN_blast(), WFIGHTMN_bringLastEnemy(), WFIGHTMN_clearField(), WFIGHTMN_cureStatus(), WFIGHTMN_digidevolve(), WFIGHTMN_digivolve(), WFIGHTMN_endAutoRecover(), WFIGHTMN_endBlast(), WFIGHTMN_endBoost(), WFIGHTMN_endRestriction(), WFIGHTMN_endSpecial(), WFIGHTMN_knockOut(), WFIGHTMN_recover(), WFIGHTMN_runAway(), WFIGHTMN_runCommand(), WFIGHTMN_tag(), and WFIGHTMN_takeDamage().

Here is the call graph for this function:

◆ FIGHTSTG_setPlayerTurnStep()

void FIGHTSTG_setPlayerTurnStep ( s32  substate)

The events they queue for WFIGHTMN, and its turn's substate.

The events they queue for WFIGHTMN, and its turn's substate.

Definition at line 342 of file player_turn.c.

Referenced by queueFirstTurns(), runPlayPage(), setUpBattle(), WFIGHTMN_knockOut(), WFIGHTMN_runCommand(), and WFIGHTMN_runConfusedCommand().

Here is the caller graph for this function:

◆ FIGHTSTG_isPlayerChoosing()

s32 FIGHTSTG_isPlayerChoosing ( void  )

Whether the player's turn has a menu open (its substate isn't 0)

Definition at line 351 of file player_turn.c.

Referenced by WFIGHTMN_knockOut(), WFIGHTMN_runCommand(), and WFIGHTMN_runConfusedCommand().

Here is the caller graph for this function:

◆ FIGHTSTG_updateHpTweens()

void FIGHTSTG_updateHpTweens ( HpDisplay *  task,
TextWindow **  windows 
)

Every frame: the hp tween of a side whose active fighter changed jumps to that fighter's hp; every interval, a side's tween starts easing (30 frames) to its fighter's hp, clamped to 0 and the max hp, when that changed.

The match depends on a counter for each loop and the side's row of fighters.

Definition at line 9 of file hud.c.

Referenced by FIGHTSTG_updateHud().

Here is the caller graph for this function:

◆ FIGHTSTG_stepHpTween()

void FIGHTSTG_stepHpTween ( HpTween *  tween)

Eases an HP number towards its target over its duration, along a sine.

Definition at line 49 of file hud.c.

Referenced by FIGHTSTG_updateHud().

Here is the caller graph for this function:

◆ FIGHTSTG_showFighterNames()

void FIGHTSTG_showFighterNames ( HpDisplay *  task,
TextWindow **  windows 
)

Shows the names of both sides' active fighters, when they changed.

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< DIGNAM

Definition at line 65 of file hud.c.

Referenced by FIGHTSTG_drawHud(), and FIGHTSTG_updateHud().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_drawHud()

void FIGHTSTG_drawHud ( HpDisplay *  task,
TextWindow **  windows 
)

Draws the battle HUD: both HP bars, the technique gauge (full at 1000) and the fighters' icons.

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< battle 0x144, the last one: its first enemy

Definition at line 124 of file hud.c.

Referenced by FIGHTSTG_updateHud().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_updateHud()

void FIGHTSTG_updateHud ( HpDisplay *  task,
TextWindow **  windows 
)

The battle HUD's task: makes its windows and starts the HP numbers at the fighters' HP, then each frame eases them and draws the HUD (FIGHTSTG_drawHud)

< the HUD, the menus and the messages

< MFIGHT: WFIGHTMN's

< the HUD, the menus and the messages

< the HUD, the menus and the messages

Definition at line 226 of file hud.c.

Referenced by FIGHTSTG_createHud().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_drawPartnerViewFrame()

void FIGHTSTG_drawPartnerViewFrame ( PartnerView *  task,
FighterCamera **  cameras 
)

Draws the frame around the partner view.

< the HUD, the menus and the messages

Definition at line 6 of file partner_view.c.

Referenced by FIGHTSTG_updatePartnerView().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_updatePartnerView()

void FIGHTSTG_updatePartnerView ( PartnerView *  task,
FighterCamera **  cameras 
)

The partner view's task: makes layer 0x1009 beside the menus, then once the models are there shows the player's active model on it through a new FighterCamera (ending the other one) and draws the frame each frame; when killed, takes the model off the layer and destroys it.

< the fighters'

< the fighters'

Definition at line 19 of file partner_view.c.

Referenced by FIGHTSTG_createPartnerView().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_updatePlayerTurn()

void FIGHTSTG_updatePlayerTurn ( PlayerTurn *  task,
PlayerTurnChild *  children 
)

The player's turn: substate 2 opens the command menu (runCommandMenu) and then the menu of its command (runDigivolveMenu, runItemMenu, runTechMenu, runSwitchMenu), 3 the confused menu (runConfusedMenu) and 4 the switch menu after a knockout (runKnockOutSwitchMenu); each sets action and goes back to substate 0, which closes the children.

The match depends on the menus' results being switches with case -1 first and on each of the two endings of the command menu's last step being written out.

Definition at line 269 of file player_turn.c.

Referenced by FIGHTSTG_startPlayerTurn().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_drawSwitchInMenu()

void FIGHTSTG_drawSwitchInMenu ( SwitchInMenu *  task)

Draws the switch-in menu's frames, the second one with the pair technique.

< the HUD, the menus and the messages

Definition at line 7 of file switch_in_menu.c.

Referenced by FIGHTSTG_updateSwitchInMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createSwitchInWindows()

void FIGHTSTG_createSwitchInWindows ( SwitchInMenu *  task,
SwitchInMenuWindows *  w 
)

Makes the switch-in menu's windows: the four names, the choices and the MP.

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

Definition at line 23 of file switch_in_menu.c.

Referenced by listSwitchInDigimon().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_showSwitchInNames()

void FIGHTSTG_showSwitchInNames ( SwitchInMenu *  task,
SwitchInMenuWindows *  w,
s32  visible 
)

Shows the names of the incoming partner's Digimon, or hides them.

< DIGNAM

Definition at line 40 of file switch_in_menu.c.

Referenced by FIGHTSTG_updateSwitchInMenu().

Here is the caller graph for this function:

◆ FIGHTSTG_showSwitchInChoices()

void FIGHTSTG_showSwitchInChoices ( SwitchInMenu *  task,
SwitchInMenuWindows *  w,
s32  visible 
)

Shows the picked Digimon's name and the choices, switching in palette 7 when flag 0x10 bars it and the pair technique in palette 7 when it can't be done, with its MP cost and the active fighter's MP; or hides them.

< MFIGHT: WFIGHTMN's

< DIGNAM

< can't switch out or run away (TECH_EFFECT_NO_SWITCH)

< can't switch out or run away (TECH_EFFECT_NO_SWITCH)

< what is unavailable

< what is unavailable

< can't digivolve or use a switch-in technique (TECH_EFFECT_NO_DIGIVOLVE)

< can't digivolve or use a switch-in technique (TECH_EFFECT_NO_DIGIVOLVE)

< can't act or run away; a hit may wake it up

< what is unavailable

< what is unavailable

Definition at line 63 of file switch_in_menu.c.

Referenced by confirmSwitchIn(), and FIGHTSTG_updateSwitchInMenu().

Here is the caller graph for this function:

◆ FIGHTSTG_updateSwitchInMenu()

void FIGHTSTG_updateSwitchInMenu ( SwitchInMenu *  task,
SwitchInMenuWindows *  w 
)

The switch-in menu's task: L1 and R1 turn the PartnerInfo's page, cross picks the Digimon, then switching (not with flag 0x10 on either fighter) or the pair technique (with the MP, HP and none of flag 0x20 or sleep), which spends both fighters' MP; triangle goes back a step.

< SYSTEM01

< SYSTEM07

< SYSTEM06

< SYSTEM06

< SYSTEM01

< SYSTEM06

< SYSTEM06

Definition at line 231 of file switch_in_menu.c.

Referenced by FIGHTSTG_createSwitchInMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_showDigivolveNames()

void FIGHTSTG_showDigivolveNames ( DigivolveMenu *  task)

Shows the names of the Digimon the menu's partner can digivolve into, its current one in palette 7.

< the HUD, the menus and the messages

< DIGNAM

< what is unavailable

Definition at line 8 of file digivolve_menu.c.

Referenced by FIGHTSTG_updateDigivolveMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_updateDigivolveMenu()

void FIGHTSTG_updateDigivolveMenu ( DigivolveMenu *  task,
void *  children 
)

The digivolve menu's task: L1 and R1 turn the PartnerInfo's page, cross picks one other than the fighter's current Digimon into *result, triangle gives -2.

The match depends on taking the children as the update's void * and copying them: as a parameter of their own type they are equivalent to their argument slot, whose doubled live length gives their register to changed

< SYSTEM06

< SYSTEM06

< SYSTEM07

< SYSTEM01

Definition at line 61 of file digivolve_menu.c.

Referenced by FIGHTSTG_createDigivolveMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createSwitchInMenu()

SwitchInMenu * FIGHTSTG_createSwitchInMenu ( s32 *  result)

Opens the switch-in menu for fighter *result, without the pair technique.

Definition at line 349 of file switch_in_menu.c.

Referenced by FIGHTSTG_createPairSwitchMenu(), and runKnockOutSwitchMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_drawItemMenu()

void FIGHTSTG_drawItemMenu ( ItemMenu *  task)

Draws the page's item icons, the page arrows (blinking) and the frame.

< the HUD, the menus and the messages

Definition at line 7 of file item_menu.c.

Referenced by FIGHTSTG_updateItemMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createItemWindows()

void FIGHTSTG_createItemWindows ( ItemMenu *  task,
ItemMenuWindows *  w 
)

Makes the item menu's windows: the page buttons, the count's label, the seven names, the description and the count.

< MFIGHT: WFIGHTMN's

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

Definition at line 41 of file item_menu.c.

Referenced by FIGHTSTG_updateItemMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_showItemPage()

void FIGHTSTG_showItemPage ( ItemMenu *  task,
ItemMenuWindows *  w 
)

Shows the page's names and the description and count of the item under the cursor, or text 0x15 and 0x1A when there are none.

< ITMNAM

< ITMINF

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

Definition at line 63 of file item_menu.c.

Referenced by FIGHTSTG_updateItemMenu().

Here is the caller graph for this function:

◆ FIGHTSTG_updateItemMenu()

void FIGHTSTG_updateItemMenu ( ItemMenu *  task,
ItemMenuWindows *  w 
)

The item menu's task: lists the items usable in battle (flag 2), then L1 and R1 turn the pages, cross picks the item under the cursor into *result and triangle gives -2; frees the list when killed.

< usable in battle (FIGHTSTG's item menu)

< usable in battle (FIGHTSTG's item menu)

< SYSTEM06

< SYSTEM07

< SYSTEM01

Definition at line 105 of file item_menu.c.

Referenced by FIGHTSTG_createItemMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_drawTechMenu()

void FIGHTSTG_drawTechMenu ( TechMenu *  task)

Draws the page's technique icons, the page arrows (blinking) and the frame.

< the HUD, the menus and the messages

< the skill, from 1 (TECHS[id - 1])

Definition at line 6 of file tech_menu.c.

Referenced by FIGHTSTG_updateTechMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createTechWindows()

void FIGHTSTG_createTechWindows ( TechMenu *  task,
TechMenuChild *  children 
)

Makes the technique menu's windows: the page buttons, the active fighter's MP over its max (or a text by its MP for a temporary Digimon), the six names, the description and the technique's MP cost.

< MFIGHT: WFIGHTMN's

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

Definition at line 45 of file tech_menu.c.

Referenced by FIGHTSTG_updateTechMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_showTechPage()

void FIGHTSTG_showTechPage ( TechMenu *  task,
TechMenuChild *  children 
)

Shows the page's techniques (palette 7 for those the fighter lacks the MP for, 3 its signature one, 4 those passed on) and the description and MP cost of the one under the cursor, or text 0x13 when there are none.

< SKLNAM

< the skill, from 1 (TECHS[id - 1])

< marked in the lab (STGDGLAB_updateSkillPanel)

< what is unavailable

< marked in the lab (STGDGLAB_updateSkillPanel)

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< what is unavailable

< what is unavailable

< SKLINF

< the skill, from 1 (TECHS[id - 1])

< MFIGHT: WFIGHTMN's

< marked in the lab (STGDGLAB_updateSkillPanel)

< MFIGHT: WFIGHTMN's

Definition at line 87 of file tech_menu.c.

Referenced by FIGHTSTG_updateTechMenu(), and showNewTechPage().

Here is the caller graph for this function:

◆ FIGHTSTG_updateTechMenu()

void FIGHTSTG_updateTechMenu ( TechMenu *  task,
TechMenuChild *  children 
)

The battle's technique menu: the active fighter's techniques (a Digimon of a partner's slots has its entry's, its signature one and the ones the other entries can pass on), six a page.

L1 and R1 turn the pages, cross picks the technique under the cursor into *result, spending its MP (a temporary Digimon spends none), and triangle gives -2

< SYSTEM07

< the skill, from 1 (TECHS[id - 1])

< the skill, from 1 (TECHS[id - 1])

< SYSTEM01

Definition at line 258 of file tech_menu.c.

Referenced by FIGHTSTG_createTechMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_drawMessageBox()

void FIGHTSTG_drawMessageBox ( BattleMessageBox *  task)

Draws the message box and, once its lines are out, its blinking arrow.

< the HUD, the menus and the messages

Definition at line 6 of file message.c.

Referenced by FIGHTSTG_updateMessage().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_stepMessage()

void FIGHTSTG_stepMessage ( BattleMessageBox *  task,
BattleMessageBoxWindows *  windows 
)

Shows the message's lines one by one, 3 frames apart, then on cross shows the queue's next message or ends; after finish (substate 4) it ends after 0x14 frames or on cross.

< SYSTEM07

Definition at line 33 of file message.c.

Referenced by FIGHTSTG_updateMessage().

Here is the caller graph for this function:

◆ FIGHTSTG_updateMessage()

void FIGHTSTG_updateMessage ( BattleMessageBox *  task,
void *  children 
)

The battle message box's task: draws it and steps its message each frame.

Definition at line 78 of file message.c.

Referenced by FIGHTSTG_createMessage().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_showMessage()

void FIGHTSTG_showMessage ( BattleMessageBox *  task,
s32  type,
s32 *  data 
)

The message box's show: sets up the lines of message type from data, mostly a fighter's name with a text, a technique or a number, and starts showing them.

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< SKLNAM

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< SKLNAM

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< DIGNAM

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< DIGNAM

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< ITMNAM

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< ITMNAM

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< SKLNAM

Definition at line 257 of file message.c.

Referenced by FIGHTSTG_createMessage(), and FIGHTSTG_showMessage().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_finishMessage()

void FIGHTSTG_finishMessage ( BattleMessageBox *  task)

The message box's finish: closes it after 0x14 frames or on cross.

Definition at line 433 of file message.c.

Referenced by FIGHTSTG_createMessage().

Here is the caller graph for this function:

◆ FIGHTSTG_showCommands()

void FIGHTSTG_showCommands ( CommandMenu *  task)

Shows the six commands once, greying out attack, techniques and digivolve when the active fighter is asleep and digivolve when it has flag 0x20 (the first window's setPalette is called for each)

< MFIGHT: WFIGHTMN's

< the HUD, the menus and the messages

< can't act or run away; a hit may wake it up

< what is unavailable

< can't digivolve or use a switch-in technique (TECH_EFFECT_NO_DIGIVOLVE)

< what is unavailable

Definition at line 8 of file command_menu.c.

Referenced by FIGHTSTG_updateCommandMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_updateCommandMenu()

void FIGHTSTG_updateCommandMenu ( CommandMenu *  task,
CommandMenuWindows *  w 
)

The command menu's task: puts a cursor (FIGHTSTG_commandCursor) on the lines, starting on start; cross picks the line into *result and locks the cursor, but not the greyed-out ones (FIGHTSTG_showCommands).

The match depends on the early exits being breaks out of a do/while.

< SYSTEM07

< can't act or run away; a hit may wake it up

< can't digivolve or use a switch-in technique (TECH_EFFECT_NO_DIGIVOLVE)

Definition at line 42 of file command_menu.c.

Referenced by FIGHTSTG_createCommandMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_drawPageArrows()

void FIGHTSTG_drawPageArrows ( PartnerInfo *  task)

Draws the PartnerInfo's blinking page arrows.

< the HUD, the menus and the messages

Definition at line 6 of file partner_info.c.

Referenced by FIGHTSTG_updatePartnerInfo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_showPageButtons()

void FIGHTSTG_showPageButtons ( PartnerInfo *  task,
TextWindow **  windows 
)

Shows the PartnerInfo's page buttons (texts 0x11 and 0x12)

< MFIGHT: WFIGHTMN's

< the HUD, the menus and the messages

< the HUD, the menus and the messages

Definition at line 20 of file partner_info.c.

Referenced by FIGHTSTG_updatePartnerInfo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_drawStatsFrame()

void FIGHTSTG_drawStatsFrame ( PartnerInfo *  task)

Draws the frame of the stats page.

< the HUD, the menus and the messages

Definition at line 32 of file partner_info.c.

Referenced by FIGHTSTG_updatePartnerInfo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_showStats()

void FIGHTSTG_showStats ( PartnerInfo *  task,
TextWindow **  windows 
)

Creates the thirteen stat numbers of FIGHTSTG_statLines (up to 999), right aligned, in palette 6 for windows 5, 6 and 9 when stats 19, 20 and 21 are set.

The match depends on reading the stat through a pointer sum.

< the HUD, the menus and the messages

Definition at line 66 of file partner_info.c.

Referenced by FIGHTSTG_updatePartnerInfo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_drawTechIcons()

void FIGHTSTG_drawTechIcons ( PartnerInfo *  task)

Draws the techniques page's icons and frame.

< the HUD, the menus and the messages

< the skill, from 1 (TECHS[id - 1])

Definition at line 91 of file partner_info.c.

Referenced by FIGHTSTG_updatePartnerInfo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_showTechs()

void FIGHTSTG_showTechs ( PartnerInfo *  task,
TextWindow **  windows 
)

Shows the techniques page: the level (text 0x1A for none) and the six techniques' names, the partner's own in yellow and those it can pass on in green.

< MFIGHT: WFIGHTMN's

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< SKLNAM

< the skill, from 1 (TECHS[id - 1])

< marked in the lab (STGDGLAB_updateSkillPanel)

Definition at line 115 of file partner_info.c.

Referenced by FIGHTSTG_updatePartnerInfo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_updatePartnerInfo()

void FIGHTSTG_updatePartnerInfo ( PartnerInfo *  task,
TextWindow **  windows 
)

The PartnerInfo's task: works out its page (the stats with the slot's Digimon's added, that Digimon's techniques, or those the partner's other Digimon can pass on) and makes its windows, then draws the page each frame.

< the first of the seven resistances

< marked in the lab (STGDGLAB_updateSkillPanel)

< the skill, from 1 (TECHS[id - 1])

Definition at line 146 of file partner_info.c.

Referenced by FIGHTSTG_createPartnerInfo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_updateSwitchMenu()

void FIGHTSTG_updateSwitchMenu ( SwitchMenu *  task,
SwitchMenuWindows *  w 
)

The switch menu's task: puts a cursor on the other fighters, starting on line; cross picks one with HP into *result, triangle gives -2 when it can cancel.

With none to pick it shows message 0x14 and its blinking arrow until cross gives -2

< the HUD, the menus and the messages

< SYSTEM01

< SYSTEM07

< SYSTEM07

< the HUD, the menus and the messages

< MFIGHT: WFIGHTMN's

Definition at line 102 of file switch_menu.c.

Referenced by FIGHTSTG_createSwitchMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_updateConfusedMenu()

void FIGHTSTG_updateConfusedMenu ( ConfusedMenu *  task,
ConfusedMenuWindows *  w 
)

The confused menu's task: shuffles the lines, then on cross attacks (*result 0) when FIGHTSTG_battleFuncs.testConfusion fails; else closes the lines, the partner view and the camera and shows one of the picked line's two messages at random, giving 1 when it is done.

< SYSTEM07

Definition at line 136 of file confused_menu.c.

Referenced by FIGHTSTG_createConfusedMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_updateCursor()

void FIGHTSTG_updateCursor ( MenuCursor *  task)

The menu cursor's task: sets FIGHTSTG_drawCursorBar as the vsync callback, draws the lines' sprites and moves with up and down until locked; when killed, takes the callback off.

< SYSTEM06

< SYSTEM06

Definition at line 87 of file cursor.c.

Referenced by FIGHTSTG_createCursor().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createCursor()

MenuCursor * FIGHTSTG_createCursor ( CursorLayout *  layout)

Creates a menu cursor laid out by layout.

Definition at line 136 of file cursor.c.

Referenced by FIGHTSTG_updateCommandMenu(), FIGHTSTG_updateConfusedMenu(), FIGHTSTG_updateDigivolveMenu(), FIGHTSTG_updateItemMenu(), FIGHTSTG_updateSwitchInMenu(), FIGHTSTG_updateSwitchMenu(), and FIGHTSTG_updateTechMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createPartnerInfo()

PartnerInfo * FIGHTSTG_createPartnerInfo ( s32  partner,
s32  page,
s32  slot 
)

Shows page page about the partner in slot (0 for itself)

Definition at line 273 of file partner_info.c.

Referenced by FIGHTSTG_updateDigivolveMenu(), and updatePartnerInfoPage().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createHud()

HpDisplay * FIGHTSTG_createHud ( void  )

Creates the battle HUD (FIGHTSTG_updateHud)

Definition at line 273 of file hud.c.

Referenced by FIGHTSTG_updatePlayerTurn(), and runCommandMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createCommandMenu()

CommandMenu * FIGHTSTG_createCommandMenu ( s32  start,
s32 *  result 
)

Opens the battle's command menu with the cursor on start; *result gets the command (PlayerTurn.command)

Definition at line 79 of file command_menu.c.

Referenced by runCommandMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createPartnerView()

PartnerView * FIGHTSTG_createPartnerView ( void  )

Creates the partner view (FIGHTSTG_updatePartnerView), whose children are its two cameras.

Definition at line 76 of file partner_view.c.

Referenced by runCommandMenu(), and runConfusedMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createDigivolveMenu()

DigivolveMenu * FIGHTSTG_createDigivolveMenu ( s32 *  result)

Opens the menu of the Digimon the partner *result can digivolve into; result gets the one picked, or -2 to go back.

Definition at line 169 of file digivolve_menu.c.

Referenced by runDigivolveMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createItemMenu()

ItemMenu * FIGHTSTG_createItemMenu ( s32 *  result)

Opens the battle's item menu; *result gets the item picked, or -2 to go back.

Definition at line 213 of file item_menu.c.

Referenced by runItemMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createTechMenu()

TechMenu * FIGHTSTG_createTechMenu ( s32 *  result)

Opens the battle's technique menu; *result gets the technique picked, or -2 to go back.

Definition at line 344 of file tech_menu.c.

Referenced by runTechMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createSwitchMenu()

SwitchMenu * FIGHTSTG_createSwitchMenu ( s32 *  result,
s32 *  line,
s32  canCancel 
)

Opens the switch menu; *result gets the fighter to bring in, or -2.

Definition at line 201 of file switch_menu.c.

Referenced by runKnockOutSwitchMenu(), and runSwitchMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createPairSwitchMenu()

SwitchInMenu * FIGHTSTG_createPairSwitchMenu ( s32 *  result,
s32 *  techResult 
)

Opens the switch-in menu for fighter *result, with the pair technique, which goes into *techResult.

Definition at line 361 of file switch_in_menu.c.

Referenced by runSwitchMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createConfusedMenu()

ConfusedMenu * FIGHTSTG_createConfusedMenu ( s32 *  result,
Task *  partnerView,
Task *  shotCamera 
)

Opens a confused partner's command menu; *result gets 0 for an attack or 1 for a lost turn.

Definition at line 198 of file confused_menu.c.

Referenced by runConfusedMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_getPairDigimon()

s32 FIGHTSTG_getPairDigimon ( SwitchMenu *  task,
s32  index,
s32  member 
)

Returns the Digimon fighter index has a pair technique with (its pairPartner, a 1-based DIGIMON_DATA entry) when party member member has it among its digivolutions, else 0.

Definition at line 8 of file switch_menu.c.

Referenced by FIGHTSTG_updateSwitchMenu().

Here is the caller graph for this function:

◆ FIGHTSTG_drawSwitchMenu()

void FIGHTSTG_drawSwitchMenu ( SwitchMenu *  task)

Draws the pair technique icon by the fighters that have one with the active fighter.

< the HUD, the menus and the messages

Definition at line 33 of file switch_menu.c.

Referenced by FIGHTSTG_updateSwitchMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_createSwitchWindows()

void FIGHTSTG_createSwitchWindows ( SwitchMenu *  task,
SwitchMenuWindows *  w 
)

Makes the switch menu's windows, two lines a fighter: the name, HP over max HP and MP over max MP.

< MFIGHT: WFIGHTMN's

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< the HUD, the menus and the messages

Definition at line 51 of file switch_menu.c.

Referenced by FIGHTSTG_updateSwitchMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_showSwitchFighters()

void FIGHTSTG_showSwitchFighters ( SwitchMenu *  task,
SwitchMenuWindows *  w 
)

Shows the switch menu's fighters' names, HP and MP, the knocked out ones' names in palette 7.

< what is unavailable

Definition at line 75 of file switch_menu.c.

Referenced by FIGHTSTG_updateSwitchMenu().

Here is the caller graph for this function:

◆ FIGHTSTG_setMessageName()

void FIGHTSTG_setMessageName ( BattleMessageBox *  task,
BattleMessageBoxWindows *  w,
s32  side,
s32  index 
)

Puts the name of side's fighter index (a partner's own, an enemy's from the battle table) into the message's first line.

< DIGNAM

Definition at line 96 of file message.c.

Referenced by FIGHTSTG_showMessage().

Here is the caller graph for this function:

◆ FIGHTSTG_findFighters()

void FIGHTSTG_findFighters ( BattleMessageBox *  task,
FighterFilter *  filter 
)

Lists in task's found the fighters of filter's side that its type picks: 0 the hurt, 1 the poisoned, 2 the paralyzed, 3 the confused, 4 those with any status, 5 the knocked out, 6 all, 7-9 those standing.

< takes damage (EVENT_STATUS_DAMAGE)

< loses turns at random (FIGHTSTG_battleFuncs.testParalysis)

Definition at line 112 of file message.c.

Referenced by FIGHTSTG_showMessage().

Here is the caller graph for this function:

◆ FIGHTSTG_showFightersMessage()

void FIGHTSTG_showFightersMessage ( BattleMessageBox *  task,
BattleMessageBoxWindows *  w,
BattleMessage *  msg 
)

Sets up a message about the fighters FIGHTSTG_findFighters found: their names (text 0x15 plus their count) and what happened to them by msg's kind, or text 0x2F when there are none.

< MFIGHT: WFIGHTMN's

< DIGNAM

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

Definition at line 185 of file message.c.

Referenced by FIGHTSTG_showMessage().

Here is the caller graph for this function:

◆ FIGHTSTG_showConfusedCommands()

void FIGHTSTG_showConfusedCommands ( ConfusedMenu *  task)

Shows the confused menu's six lines once, in FIGHTSTG_confusedLines's order.

< MFIGHT: WFIGHTMN's

< the HUD, the menus and the messages

Definition at line 6 of file confused_menu.c.

Referenced by FIGHTSTG_updateConfusedMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_drawConfusedMessageBox()

void FIGHTSTG_drawConfusedMessageBox ( ConfusedMenu *  task)

Draws the confused menu's message box and, once its lines are out, its blinking arrow.

< the HUD, the menus and the messages

Definition at line 22 of file confused_menu.c.

Referenced by FIGHTSTG_updateConfusedMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_stepConfusedMessage()

void FIGHTSTG_stepConfusedMessage ( ConfusedMenu *  task,
ConfusedMenuWindows *  w 
)

Shows the confused message's lines one by one, 3 frames apart, then ends on cross.

< SYSTEM07

Definition at line 48 of file confused_menu.c.

Referenced by FIGHTSTG_updateConfusedMenu().

Here is the caller graph for this function:

◆ FIGHTSTG_setConfusedName()

void FIGHTSTG_setConfusedName ( ConfusedMenu *  task,
ConfusedMenuWindows *  windows,
s32  side 
)

Puts the active partner's name into the message's first line (side 0 only)

Definition at line 87 of file confused_menu.c.

Referenced by FIGHTSTG_showConfusedMessage().

Here is the caller graph for this function:

◆ FIGHTSTG_showConfusedMessage()

void FIGHTSTG_showConfusedMessage ( ConfusedMenu *  task,
s32  index,
s32  unused 
)

Sets up confused message index (FIGHTSTG_confusedMessages) with the partner's name and starts showing it.

< the HUD, the menus and the messages

< the HUD, the menus and the messages

< MFIGHT: WFIGHTMN's

< MFIGHT: WFIGHTMN's

Definition at line 108 of file confused_menu.c.

Referenced by FIGHTSTG_updateConfusedMenu().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_drawCursorSprites()

void FIGHTSTG_drawCursorSprites ( MenuCursor *  task)

Draws each line's sprite of the cursor, the picked one blinking through the palettes and the one left fading out.

< the HUD, the menus and the messages

Definition at line 49 of file cursor.c.

Referenced by FIGHTSTG_updateCursor().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FIGHTSTG_drawCursorBar()

void FIGHTSTG_drawCursorBar ( s32  arg)

The vsync callback while the list is open: draws the picked line's bar, moving through its frames, and the bar off the line picked before when the pick has changed, over the frame being drawn.

The match depends on the task coming as the callback's s32 argument, cast into a variable.

Definition at line 12 of file cursor.c.

Referenced by FIGHTSTG_updateCursor().

Here is the caller graph for this function:

Variable Documentation

◆ FIGHTSTG_fighterCameraRect

RECT FIGHTSTG_fighterCameraRect
extern

Shared between the overlay's objects.

FIGHTSTG_updatePartnerView's layer

Shared between the overlay's objects.

Definition at line 1083 of file model_mesh.c.

Referenced by FIGHTSTG_updatePartnerView().

◆ FIGHTSTG_hpBars

DVECTOR FIGHTSTG_hpBars[2][4]
extern

FIGHTSTG_drawHud's HP bars.

FIGHTSTG_drawHud's HP bars.

Definition at line 97 of file hud.c.

Referenced by FIGHTSTG_drawHud().

◆ FIGHTSTG_hpBarColors

CVECTOR FIGHTSTG_hpBarColors[4]
extern

the bars' colours: above and at a quarter of the HP

Definition at line 103 of file hud.c.

Referenced by FIGHTSTG_drawHud().

◆ FIGHTSTG_techGauge

DVECTOR FIGHTSTG_techGauge[4]
extern

and its technique gauge

and its technique gauge

Definition at line 110 of file hud.c.

Referenced by FIGHTSTG_drawHud().

◆ FIGHTSTG_techGaugeColors

CVECTOR FIGHTSTG_techGaugeColors[4]
extern

Definition at line 113 of file hud.c.

Referenced by FIGHTSTG_drawHud().

◆ FIGHTSTG_iconX

s16 FIGHTSTG_iconX[2][3]
extern

the fighter icons' x, for each side and slot

Definition at line 117 of file hud.c.

Referenced by FIGHTSTG_drawHud().

◆ FIGHTSTG_commandCursor

CursorLayout FIGHTSTG_commandCursor
extern

FIGHTSTG_updateCommandMenu's cursor.

FIGHTSTG_updateCommandMenu's cursor.

Definition at line 34 of file command_menu.c.

Referenced by FIGHTSTG_updateCommandMenu().

◆ FIGHTSTG_changeCursor

CursorLayout FIGHTSTG_changeCursor
extern

FIGHTSTG_updateDigivolveMenu's cursor.

FIGHTSTG_updateDigivolveMenu's cursor.

Definition at line 51 of file digivolve_menu.c.

Referenced by FIGHTSTG_updateDigivolveMenu().

◆ FIGHTSTG_itemCursor

CursorLayout FIGHTSTG_itemCursor
extern

FIGHTSTG_updateItemMenu's cursor.

FIGHTSTG_updateItemMenu's cursor.

Definition at line 92 of file item_menu.c.

Referenced by FIGHTSTG_updateItemMenu().

◆ FIGHTSTG_techCursor

CursorLayout FIGHTSTG_techCursor
extern

FIGHTSTG_updateTechMenu's cursor.

Definition at line 95 of file item_menu.c.

Referenced by FIGHTSTG_updateTechMenu(), and setTechPages().

◆ FIGHTSTG_switchCursor

CursorLayout FIGHTSTG_switchCursor
extern

FIGHTSTG_updateSwitchMenu's cursor.

Definition at line 98 of file item_menu.c.

Referenced by FIGHTSTG_updateSwitchMenu().

◆ FIGHTSTG_pairCursors

CursorLayout FIGHTSTG_pairCursors[2]
extern

FIGHTSTG_updateSwitchInMenu's cursors.

FIGHTSTG_updateSwitchInMenu's cursors.

Definition at line 118 of file switch_in_menu.c.

Referenced by FIGHTSTG_updateSwitchInMenu(), and listSwitchInDigimon().

◆ FIGHTSTG_confusedCursor

CursorLayout FIGHTSTG_confusedCursor
extern

FIGHTSTG_updateConfusedMenu's.

FIGHTSTG_updateConfusedMenu's.

Definition at line 128 of file confused_menu.c.

Referenced by FIGHTSTG_updateConfusedMenu().

◆ FIGHTSTG_statLines

StatLine FIGHTSTG_statLines[13]
extern

the stat numbers of FIGHTSTG_showStats

Definition at line 47 of file partner_info.c.

Referenced by FIGHTSTG_showStats().

◆ FIGHTSTG_confusedMessages

ConfusedMessage FIGHTSTG_confusedMessages[16]
extern

the confused menu's (FIGHTSTG_updateConfusedMenu) results, two per line, each a message (task->queue[0]) and its line of text 0x80

Definition at line 95 of file confused_menu.c.

Referenced by FIGHTSTG_showConfusedMessage().

◆ FIGHTSTG_confusedLines

s16 FIGHTSTG_confusedLines[8]
extern

FIGHTSTG_updateConfusedMenu's lines, shuffled.

FIGHTSTG_updateConfusedMenu's lines, shuffled.

Definition at line 102 of file confused_menu.c.

Referenced by FIGHTSTG_showConfusedCommands(), and FIGHTSTG_updateConfusedMenu().

◆ FIGHTSTG_cursorBarRect

RECT FIGHTSTG_cursorBarRect
extern

where FIGHTSTG_drawCursorBar's bar is in VRAM

where FIGHTSTG_drawCursorBar's bar is in VRAM

Definition at line 6 of file cursor.c.

Referenced by FIGHTSTG_drawCursorBar().

◆ FIGHTSTG_cursorBarMoves

DR_MOVE FIGHTSTG_cursorBarMoves[4]
extern

FIGHTSTG_drawCursorBar's bar.

FIGHTSTG_drawCursorBar's bar.

Definition at line 1084 of file model_mesh.c.

Referenced by FIGHTSTG_drawCursorBar().

◆ FIGHTSTG_cursorBarOt

u_long FIGHTSTG_cursorBarOt[2]
extern

their OT

their OT

Definition at line 1085 of file model_mesh.c.

Referenced by FIGHTSTG_drawCursorBar().

◆ FIGHTSTG_mpWindowX

s32 FIGHTSTG_mpWindowX[4]
extern

FIGHTSTG_createSwitchInWindows's MP windows' x.

FIGHTSTG_createSwitchInWindows's MP windows' x.

Definition at line 123 of file switch_in_menu.c.

Referenced by FIGHTSTG_createSwitchInWindows().