aboutsummaryrefslogtreecommitdiff
path: root/engines/mohawk/riven_stacks/aspit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/mohawk/riven_stacks/aspit.cpp')
-rw-r--r--engines/mohawk/riven_stacks/aspit.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/engines/mohawk/riven_stacks/aspit.cpp b/engines/mohawk/riven_stacks/aspit.cpp
index b72ba01fe0..eb03ac82f0 100644
--- a/engines/mohawk/riven_stacks/aspit.cpp
+++ b/engines/mohawk/riven_stacks/aspit.cpp
@@ -68,6 +68,7 @@ ASpit::ASpit(MohawkEngine_Riven *vm) :
REGISTER_COMMAND(ASpit, xaSaveGame);
REGISTER_COMMAND(ASpit, xaResumeGame);
REGISTER_COMMAND(ASpit, xaOptions);
+ REGISTER_COMMAND(ASpit, xaNewGame);
}
struct MenuItemText {
@@ -394,6 +395,21 @@ void ASpit::xaOptions(const ArgumentArray &args) {
_vm->runOptionsDialog();
}
+void ASpit::xaNewGame(const ArgumentArray &args) {
+ _vm->startNewGame();
+
+ RivenScriptPtr script = _vm->_scriptMan->createScriptFromData(2,
+ kRivenCommandTransition, 1, kRivenTransitionBlend,
+ kRivenCommandChangeCard, 1, 2);
+
+ script->addCommand(RivenCommandPtr(new RivenStackChangeCommand(_vm, 0, 0x6E9A, false)));
+
+ script += _vm->_scriptMan->createScriptFromData(1,
+ kRivenCommandStopSound, 1, 2);
+
+ _vm->_scriptMan->runScript(script, false);
+}
+
void ASpit::xadisablemenureturn(const ArgumentArray &args) {
// This function would normally enable the Windows menu item for
// returning to the main menu. Ctrl+r will do this instead.