Alchemy
Loading...
Searching...
No Matches

SelectionScreen Struct Reference

The selection screen (heap block 18): the row of icons the player picks from, with arrows at each end and a pointing hand over the chosen target. More...

#include <menu/select.h>

Data Fields

struct SelectionNode records [16]
 The icons; 14 is the pointing hand, whose picture is loaded at setup.
struct AffineTransform transform
 a zooming icon's scale
struct SelectionNode * head
 the first icon of the row
struct SelectionNode * path
 the icons chosen so far
struct UiWindow * window
 the window naming the chosen entry
u16 baseX
 screen pixels
u16 baseY
 screen pixels
u16 unk39a
 cleared with the list; not read by name in TBS
u16 top
 the first listed entry shown
u16 cursorIndex
 The entry under the hand, from top; bit 7 asks the next list to start again from its first entry.
u16 verticalScroll
 pixels added to the icons' y; 32 at setup
u16 status
 1 shown, 33 while scrolling; counts up each frame drawn
u16 pathTop [5]
 top, kept for each icon chosen on the path
u16 pathCursor [5]
 cursorIndex, kept for each icon chosen on the path
u16 locked
 999 from setup on.
u8 unk3ba [42]
 not named by TBS code
u16 kinds [16]
 The listed entries, up to 16 (Resource_PushPendingPair).
u16 bases [16]
u16 count

Detailed Description

The selection screen (heap block 18): the row of icons the player picks from, with arrows at each end and a pointing hand over the chosen target.

Definition at line 55 of file select.h.

Field Documentation

◆ records

◆ transform

struct AffineTransform SelectionScreen::transform

a zooming icon's scale

Definition at line 58 of file select.h.

Referenced by SelectionScreen_Draw().

◆ head

◆ path

struct SelectionNode* SelectionScreen::path

the icons chosen so far

Definition at line 60 of file select.h.

Referenced by Menu_ConfirmSelection(), Resource_ResetOwnerEntries(), SelectionScreen_Draw(), and UiGlyph_ResetWorkState().

◆ window

struct UiWindow* SelectionScreen::window

the window naming the chosen entry

Definition at line 61 of file select.h.

Referenced by Menu_OpenSelectionWindow(), Resource_ResetOwnerEntries(), and UiGlyph_ResetWorkState().

◆ kinds

u16 SelectionScreen::kinds[16]

The listed entries, up to 16 (Resource_PushPendingPair).

Definition at line 64 of file select.h.

Referenced by Menu_ScrollSelectionList(), Menu_StepLeft(), Menu_StepRight(), MenuSelection_BuildEntries(), and Resource_PushPendingPair().

◆ bases

u16 SelectionScreen::bases[16]

◆ count

◆ baseX

◆ baseY

u16 SelectionScreen::baseY

◆ unk39a

u16 SelectionScreen::unk39a

cleared with the list; not read by name in TBS

Definition at line 70 of file select.h.

Referenced by Menu_ConfirmSelection(), Resource_ClearOwnerListAndCounters(), and UiGlyph_ResetWorkState().

◆ top

◆ cursorIndex

u16 SelectionScreen::cursorIndex

◆ verticalScroll

u16 SelectionScreen::verticalScroll

◆ status

u16 SelectionScreen::status

1 shown, 33 while scrolling; counts up each frame drawn

Definition at line 76 of file select.h.

Referenced by Menu_ConfirmSelection(), Menu_MoveSelectionBackward(), Menu_MoveSelectionForward(), Menu_StepLeft(), Menu_StepRight(), and SelectionScreen_Draw().

◆ pathTop

u16 SelectionScreen::pathTop[5]

top, kept for each icon chosen on the path

Definition at line 77 of file select.h.

Referenced by Menu_ConfirmSelection().

◆ pathCursor

u16 SelectionScreen::pathCursor[5]

cursorIndex, kept for each icon chosen on the path

Definition at line 78 of file select.h.

Referenced by Menu_ConfirmSelection().

◆ locked

u16 SelectionScreen::locked

999 from setup on.

While 0, kind 6 icons sit at the top of the screen and the window opens there; no TBS code clears it by name.

Definition at line 81 of file select.h.

Referenced by Menu_OpenSelectionWindow(), Menu_RunSelectionForValue(), MenuSelection_BuildEntries(), and UiGlyph_ResetWorkState().

◆ unk3ba

u8 SelectionScreen::unk3ba[42]

not named by TBS code

Definition at line 82 of file select.h.