New Super Mario Bros. U Headers
Loading...
Searching...
No Matches
AttentionScreen.h
Go to the documentation of this file.
1#pragma once
2
3#include <layout_sys/AnimLayout.h>
4#include <state/FStateMgr.h>
5
6#include <layer/aglRenderInfo.h>
7
8class AttentionScreen // vtbl Address: 0x100C52A0
9{
10public:
11 enum Type
12 {
13 cType_DRC = 0, // Appears on DRC, attention towards TV
14 cType_TV // Appears on TV, attention towards DRC
15 };
16 static_assert(sizeof(Type) == 4);
17
18public:
19 // Address: 0x02532B04
21 // Address: 0x02532C74
22 virtual ~AttentionScreen();
23
24 // Address: 0x02532D14
25 void create();
26
27 // Address: 0x02532FB0
28 void execute();
29
30 // Address: 0x02532FFC
31 void draw(const agl::lyr::RenderInfo& render_info) const;
32
33 // Address: 0x02533050
34 void drawDRC(const agl::lyr::RenderInfo& render_info) const;
35
36 // Address: 0x025330A4
37 void open(Type type);
38
39 void forceOpen(Type type)
40 {
41 open(type);
42 mIsVisible = true;
43 }
44
45 bool isVisible() const
46 {
47 return mIsVisible;
48 }
49
51 {
52 mRequestClose = true;
53 }
54
55 // Address: 0x02533104
56 void requestCloseNow(); // Skips "In" animation
57
58 // Address: 0x025331A0
59 void forceClose();
60
61 // StateID_In Address: 0x1020B588
62 // initializeState_In Address: 0x02533228
63 // executeState_In Address: 0x025332D4
64 // finalizeState_In Address: 0x02533A34
65 DECLARE_STATE_ID(AttentionScreen, In)
66
67 bool isFadein() const
68 {
69 return *mStateMgr.getStateID() == StateID_In;
70 }
71
72protected:
77 bool mIsOpen;
81};
82static_assert(sizeof(AttentionScreen) == 0xEF8);
Definition AttentionScreen.h:9
sead::SafeArray< nw::lyt::Picture *, 3 > mPPane
Definition AttentionScreen.h:76
void drawDRC(const agl::lyr::RenderInfo &render_info) const
void forceOpen(Type type)
Definition AttentionScreen.h:39
void open(Type type)
sead::SafeArray< nw::lyt::Pane *, 2 > mNPane
Definition AttentionScreen.h:75
AnimLayout< 2 > mLayout
Definition AttentionScreen.h:74
virtual ~AttentionScreen()
void requestClose()
Definition AttentionScreen.h:50
Type
Definition AttentionScreen.h:12
@ cType_TV
Definition AttentionScreen.h:14
@ cType_DRC
Definition AttentionScreen.h:13
Type mType
Definition AttentionScreen.h:80
bool isVisible() const
Definition AttentionScreen.h:45
void draw(const agl::lyr::RenderInfo &render_info) const
bool mRequestClose
Definition AttentionScreen.h:78
void requestCloseNow()
bool mIsVisible
Definition AttentionScreen.h:79
bool mIsOpen
Definition AttentionScreen.h:77