1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-02-04 03:40:14 +00:00

Chargen cleanup.

Move common gui state pop out of if checks.
Move health update before gui state push (used as input for some windows).
This commit is contained in:
Jordan Ayers 2013-11-05 19:38:45 -06:00
parent d85360e7fd
commit e94da61ff0

View File

@ -332,24 +332,22 @@ namespace MWGui
mPickClassDialog = 0; mPickClassDialog = 0;
} }
updatePlayerHealth();
//TODO This bit gets repeated a few times; wrap it in a function //TODO This bit gets repeated a few times; wrap it in a function
MWBase::Environment::get().getWindowManager()->popGuiMode();
if (mCreationStage == CSE_ReviewNext) if (mCreationStage == CSE_ReviewNext)
{ {
MWBase::Environment::get().getWindowManager()->popGuiMode();
MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Review); MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Review);
} }
else if (mCreationStage >= CSE_ClassChosen) else if (mCreationStage >= CSE_ClassChosen)
{ {
MWBase::Environment::get().getWindowManager()->popGuiMode();
MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Birth); MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Birth);
} }
else else
{ {
mCreationStage = CSE_ClassChosen; mCreationStage = CSE_ClassChosen;
MWBase::Environment::get().getWindowManager()->popGuiMode();
} }
updatePlayerHealth();
} }
void CharacterCreation::onPickClassDialogBack() void CharacterCreation::onPickClassDialogBack()
@ -403,20 +401,18 @@ namespace MWGui
mNameDialog = 0; mNameDialog = 0;
} }
MWBase::Environment::get().getWindowManager()->popGuiMode();
if (mCreationStage == CSE_ReviewNext) if (mCreationStage == CSE_ReviewNext)
{ {
MWBase::Environment::get().getWindowManager()->popGuiMode();
MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Review); MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Review);
} }
else if (mCreationStage >= CSE_NameChosen) else if (mCreationStage >= CSE_NameChosen)
{ {
MWBase::Environment::get().getWindowManager()->popGuiMode();
MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Race); MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Race);
} }
else else
{ {
mCreationStage = CSE_NameChosen; mCreationStage = CSE_NameChosen;
MWBase::Environment::get().getWindowManager()->popGuiMode();
} }
} }
@ -462,23 +458,21 @@ namespace MWGui
mRaceDialog = 0; mRaceDialog = 0;
} }
updatePlayerHealth();
MWBase::Environment::get().getWindowManager()->popGuiMode();
if (mCreationStage == CSE_ReviewNext) if (mCreationStage == CSE_ReviewNext)
{ {
MWBase::Environment::get().getWindowManager()->popGuiMode();
MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Review); MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Review);
} }
else if (mCreationStage >= CSE_RaceChosen) else if (mCreationStage >= CSE_RaceChosen)
{ {
MWBase::Environment::get().getWindowManager()->popGuiMode();
MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Class); MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Class);
} }
else else
{ {
mCreationStage = CSE_RaceChosen; mCreationStage = CSE_RaceChosen;
MWBase::Environment::get().getWindowManager()->popGuiMode();
} }
updatePlayerHealth();
} }
void CharacterCreation::onBirthSignDialogDone(WindowBase* parWindow) void CharacterCreation::onBirthSignDialogDone(WindowBase* parWindow)
@ -492,18 +486,17 @@ namespace MWGui
mBirthSignDialog = 0; mBirthSignDialog = 0;
} }
updatePlayerHealth();
MWBase::Environment::get().getWindowManager()->popGuiMode();
if (mCreationStage >= CSE_BirthSignChosen) if (mCreationStage >= CSE_BirthSignChosen)
{ {
MWBase::Environment::get().getWindowManager()->popGuiMode();
MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Review); MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Review);
} }
else else
{ {
mCreationStage = CSE_BirthSignChosen; mCreationStage = CSE_BirthSignChosen;
MWBase::Environment::get().getWindowManager()->popGuiMode();
} }
updatePlayerHealth();
} }
void CharacterCreation::onBirthSignDialogBack() void CharacterCreation::onBirthSignDialogBack()
@ -552,23 +545,21 @@ namespace MWGui
mCreateClassDialog = 0; mCreateClassDialog = 0;
} }
updatePlayerHealth();
MWBase::Environment::get().getWindowManager()->popGuiMode();
if (mCreationStage == CSE_ReviewNext) if (mCreationStage == CSE_ReviewNext)
{ {
MWBase::Environment::get().getWindowManager()->popGuiMode();
MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Review); MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Review);
} }
else if (mCreationStage >= CSE_ClassChosen) else if (mCreationStage >= CSE_ClassChosen)
{ {
MWBase::Environment::get().getWindowManager()->popGuiMode();
MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Birth); MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Birth);
} }
else else
{ {
mCreationStage = CSE_ClassChosen; mCreationStage = CSE_ClassChosen;
MWBase::Environment::get().getWindowManager()->popGuiMode();
} }
updatePlayerHealth();
} }
void CharacterCreation::onCreateClassDialogBack() void CharacterCreation::onCreateClassDialogBack()
@ -722,23 +713,21 @@ namespace MWGui
mPlayerClass = *klass; mPlayerClass = *klass;
MWBase::Environment::get().getWindowManager()->setPlayerClass(mPlayerClass); MWBase::Environment::get().getWindowManager()->setPlayerClass(mPlayerClass);
updatePlayerHealth();
MWBase::Environment::get().getWindowManager()->popGuiMode();
if (mCreationStage == CSE_ReviewNext) if (mCreationStage == CSE_ReviewNext)
{ {
MWBase::Environment::get().getWindowManager()->popGuiMode();
MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Review); MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Review);
} }
else if (mCreationStage >= CSE_ClassChosen) else if (mCreationStage >= CSE_ClassChosen)
{ {
MWBase::Environment::get().getWindowManager()->popGuiMode();
MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Birth); MWBase::Environment::get().getWindowManager()->pushGuiMode(GM_Birth);
} }
else else
{ {
mCreationStage = CSE_ClassChosen; mCreationStage = CSE_ClassChosen;
MWBase::Environment::get().getWindowManager()->popGuiMode();
} }
updatePlayerHealth();
} }
CharacterCreation::~CharacterCreation() CharacterCreation::~CharacterCreation()