* try to resolve merge conflict
* feat: TU19 (Dec 2014) Features & Content (#32)
* December 2014 files
* Working release build
* Fix compilation issues
* Add sound to Windows64Media
* Add DLC content and force Tutorial DLC
* Revert "Add DLC content and force Tutorial DLC"
This reverts commit 97a4399472.
* Disable broken light packing
* Disable breakpoint during DLC texture map load
Allows DLC loading but the DLC textures are still broken
* Fix post build not working
* ...
* fix vs2022 build
* fix cmake build
---------
Co-authored-by: Loki <lokirautio@gmail.com>
164 lines
4.3 KiB
C++
164 lines
4.3 KiB
C++
#include "stdafx.h"
|
|
#include "UI.h"
|
|
#include "UIComponent_PressStartToPlay.h"
|
|
#include "..\..\..\Minecraft.World\StringHelpers.h"
|
|
|
|
UIComponent_PressStartToPlay::UIComponent_PressStartToPlay(int iPad, void *initData, UILayer *parentLayer) : UIScene(iPad, parentLayer)
|
|
{
|
|
// Setup all the Iggy references we need for this scene
|
|
initialiseMovie();
|
|
|
|
m_showingSaveIcon = false;
|
|
m_showingAutosaveTimer = false;
|
|
m_showingTrialTimer = false;
|
|
for(unsigned int i = 0; i < XUSER_MAX_COUNT; ++i)
|
|
{
|
|
m_showingPressStart[i] = false;
|
|
}
|
|
m_trialTimer = L"";
|
|
m_autosaveTimer = L"";
|
|
|
|
m_labelTrialTimer.init(L"");
|
|
m_labelTrialTimer.setVisible(false);
|
|
|
|
// 4J-JEV: This object is persistent, so this string needs to be able to handle language changes.
|
|
#ifdef __ORBIS__
|
|
m_labelPressStart.init( (UIString) [] { return replaceAll(app.GetString(IDS_PRESS_X_TO_JOIN), L"{*CONTROLLER_VK_A*}", app.GetVKReplacement(VK_PAD_A) ); });
|
|
#elif defined _XBOX_ONE
|
|
m_labelPressStart.init( (UIString) [] { return replaceAll(app.GetString(IDS_PRESS_START_TO_JOIN), L"{*CONTROLLER_VK_START*}", app.GetVKReplacement(VK_PAD_START) ); });
|
|
#else
|
|
m_labelPressStart.init(IDS_PRESS_START_TO_JOIN);
|
|
#endif
|
|
|
|
m_controlSaveIcon.setVisible(false);
|
|
m_controlPressStartPanel.setVisible(false);
|
|
m_playerDisplayName.setVisible(false);
|
|
}
|
|
|
|
wstring UIComponent_PressStartToPlay::getMoviePath()
|
|
{
|
|
return L"PressStartToPlay";
|
|
}
|
|
|
|
void UIComponent_PressStartToPlay::handleReload()
|
|
{
|
|
// 4J Stu - It's possible these could change during the reload, so can't use the normal controls refresh of it's state
|
|
m_controlSaveIcon.setVisible(m_showingSaveIcon);
|
|
m_labelTrialTimer.setVisible(m_showingAutosaveTimer);
|
|
m_labelTrialTimer.setLabel(m_autosaveTimer);
|
|
m_labelTrialTimer.setVisible(m_showingTrialTimer);
|
|
m_labelTrialTimer.setLabel(m_trialTimer);
|
|
|
|
bool showPressStart = false;
|
|
for(unsigned int i = 0; i < XUSER_MAX_COUNT; ++i)
|
|
{
|
|
bool show = m_showingPressStart[i];
|
|
showPressStart |= show;
|
|
|
|
if(show)
|
|
{
|
|
addTimer(0,3000);
|
|
|
|
IggyDataValue result;
|
|
IggyDataValue value[1];
|
|
value[0].type = IGGY_DATATYPE_number;
|
|
value[0].number = i;
|
|
|
|
IggyResult out = IggyPlayerCallMethodRS ( getMovie() , &result, IggyPlayerRootPath( getMovie() ), m_funcShowController , 1 , value );
|
|
}
|
|
}
|
|
m_controlPressStartPanel.setVisible(showPressStart);
|
|
}
|
|
|
|
void UIComponent_PressStartToPlay::handleTimerComplete(int id)
|
|
{
|
|
m_controlPressStartPanel.setVisible(false);
|
|
for(unsigned int i = 0; i < XUSER_MAX_COUNT; ++i)
|
|
{
|
|
m_showingPressStart[i] = false;
|
|
}
|
|
ui.ClearPressStart();
|
|
}
|
|
|
|
void UIComponent_PressStartToPlay::showPressStart(int iPad, bool show)
|
|
{
|
|
m_showingPressStart[iPad] = show;
|
|
if(!ui.IsExpectingOrReloadingSkin() && hasMovie())
|
|
{
|
|
m_controlPressStartPanel.setVisible(show);
|
|
|
|
if(show)
|
|
{
|
|
addTimer(0,3000);
|
|
|
|
IggyDataValue result;
|
|
IggyDataValue value[1];
|
|
value[0].type = IGGY_DATATYPE_number;
|
|
value[0].number = iPad;
|
|
|
|
IggyResult out = IggyPlayerCallMethodRS ( getMovie() , &result, IggyPlayerRootPath( getMovie() ), m_funcShowController , 1 , value );
|
|
}
|
|
}
|
|
}
|
|
|
|
void UIComponent_PressStartToPlay::setTrialTimer(const wstring &label)
|
|
{
|
|
m_trialTimer = label;
|
|
if(!ui.IsExpectingOrReloadingSkin() && hasMovie())
|
|
{
|
|
m_labelTrialTimer.setLabel(label);
|
|
}
|
|
}
|
|
|
|
void UIComponent_PressStartToPlay::showTrialTimer(bool show)
|
|
{
|
|
m_showingTrialTimer = show;
|
|
if(!ui.IsExpectingOrReloadingSkin() && hasMovie())
|
|
{
|
|
m_labelTrialTimer.setVisible(show);
|
|
}
|
|
}
|
|
|
|
void UIComponent_PressStartToPlay::setAutosaveTimer(const wstring &label)
|
|
{
|
|
m_autosaveTimer = label;
|
|
if(!ui.IsExpectingOrReloadingSkin() && hasMovie())
|
|
{
|
|
m_labelTrialTimer.setLabel(label);
|
|
}
|
|
}
|
|
|
|
void UIComponent_PressStartToPlay::showAutosaveTimer(bool show)
|
|
{
|
|
m_showingAutosaveTimer = show;
|
|
if(!ui.IsExpectingOrReloadingSkin() && hasMovie())
|
|
{
|
|
m_labelTrialTimer.setVisible(show);
|
|
}
|
|
}
|
|
|
|
void UIComponent_PressStartToPlay::showSaveIcon(bool show)
|
|
{
|
|
m_showingSaveIcon = show;
|
|
if(!ui.IsExpectingOrReloadingSkin() && hasMovie())
|
|
{
|
|
m_controlSaveIcon.setVisible(show);
|
|
}
|
|
else
|
|
{
|
|
if(show) app.DebugPrintf("Tried to show save icon while texture pack reload was in progress\n");
|
|
}
|
|
}
|
|
|
|
void UIComponent_PressStartToPlay::showPlayerDisplayName(bool show)
|
|
{
|
|
#ifdef _XBOX_ONE
|
|
if(show)
|
|
{
|
|
m_playerDisplayName.setLabel(ProfileManager.GetDisplayName(ProfileManager.GetPrimaryPad()));
|
|
}
|
|
m_playerDisplayName.setVisible(show);
|
|
#else
|
|
m_playerDisplayName.setVisible(false);
|
|
#endif
|
|
} |