aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/Common/UI/IUIScene_StartGame.h
blob: a3361011f179444737bddb867dadd006fefa574b (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
#pragma once

#include "UIScene.h"

// Shared functions between CreteWorld, Load and Join
class IUIScene_StartGame : public UIScene
{
protected:
	UIControl_TexturePackList m_texturePackList;

	UIControl m_controlTexturePackPanel;
	UIControl_Label m_labelTexturePackName, m_labelTexturePackDescription;
	UIControl_BitmapIcon m_bitmapTexturePackIcon, m_bitmapComparison;

	UI_BEGIN_MAP_ELEMENTS_AND_NAMES(UIScene)
		UI_MAP_ELEMENT( m_controlTexturePackPanel, "TexturePackPanel" )
		UI_BEGIN_MAP_CHILD_ELEMENTS( m_controlTexturePackPanel )
			UI_MAP_ELEMENT( m_labelTexturePackName, "TexturePackName")
			UI_MAP_ELEMENT( m_labelTexturePackDescription, "TexturePackDescription")
			UI_MAP_ELEMENT( m_bitmapTexturePackIcon, "Icon")
			UI_MAP_ELEMENT( m_bitmapComparison, "ComparisonPic")
		UI_END_MAP_CHILD_ELEMENTS()
	UI_END_MAP_ELEMENTS_AND_NAMES()

	LaunchMoreOptionsMenuInitData m_MoreOptionsParams;
	bool m_bIgnoreInput;
	
	int m_iTexturePacksNotInstalled;
	unsigned int m_currentTexturePackIndex;
	bool m_bShowTexturePackDescription;
	bool m_texturePackDescDisplayed;
	int m_iSetTexturePackDescription;

	IUIScene_StartGame(int iPad, UILayer *parentLayer);

	virtual void checkStateAndStartGame() = 0;
	
	virtual void handleSelectionChanged(F64 selectedId);

	virtual void HandleDLCMountingComplete();

	void UpdateTexturePackDescription(int index);
	void UpdateCurrentTexturePack(int iSlot);

	static int TrialTexturePackWarningReturned(void *pParam,int iPad,C4JStorage::EMessageResult result);
	static int UnlockTexturePackReturned(void *pParam,int iPad,C4JStorage::EMessageResult result);
	static int TexturePackDialogReturned(void *pParam,int iPad,C4JStorage::EMessageResult result);
};