summaryrefslogtreecommitdiff
path: root/src/koopatlas/hud.h
blob: 982b38aad0bd2266ba54c08a0e9bbc372fdd9682 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#ifndef __KOOPATLAS_HUD_H
#define __KOOPATLAS_HUD_H

#include "koopatlas/core.h"
#include "texmapcolouriser.h"

class dWMHud_c : public dBase_c {
	public:
		dWMHud_c();

		int onCreate();
		int onDelete();
		int onExecute();
		int onDraw();

		bool layoutLoaded;
		m2d::EmbedLayout_c layout;

		static dWMHud_c *build();
		static dWMHud_c *instance;

		void enteredNode(dKPNode_s *node = 0);
		void leftNode();

		void hideFooter();
		void showFooter();

		void setupLives();

		void hideAll();
		void unhideAll();

	private:
		void playShowAnim(int id);
		void playHideAnim(int id);
		void loadHeaderInfo();

		bool willShowHeader;
		dKPNode_s *nodeForHeader;

		int displayedControllerType;
		void updatePressableButtonThingies();

		void loadFooterInfo();
		bool willShowFooter;
		bool isFooterVisible;

		dTexMapColouriser_c headerCol, footerCol;


		nw4r::lyt::Pane
			*N_IconPosXP_00[4];

		nw4r::lyt::Picture
			*Header_Centre, *Header_Right, *Footer,
			*NormalExitFlag, *SecretExitFlag,
			*StarCoinOff[3],
			*StarCoinOn[3],
			*P_marioFace_00, *P_luigiFace_00,
			*P_BkinoFace_00, *P_YkinoFace_00,
			*Star[3];

		nw4r::lyt::TextBox
			*LevelName, *LevelNameS,
			*LevelNumber, *LevelNumberS,
			*WorldName, *WorldNameS,
			*StarCoinCounter,
			*T_lifeNumber[4];
};

#endif