From 0a3daf9484c55fa5dfa5053593d24341b04824eb Mon Sep 17 00:00:00 2001 From: Marianne Gagnon Date: Thu, 21 May 2015 20:26:28 -0400 Subject: [PATCH] Scripting work : the tutorial is now completely scripting-powered, nothing hardcoded anymore --- src/scriptengine/script_track.cpp | 9 ++++++++- src/tracks/track_object_presentation.cpp | 6 ------ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/scriptengine/script_track.cpp b/src/scriptengine/script_track.cpp index 921e5f440..b99589ac6 100644 --- a/src/scriptengine/script_track.cpp +++ b/src/scriptengine/script_track.cpp @@ -101,6 +101,12 @@ namespace Scripting tobj->setID(*triggerID); World::getWorld()->getTrack()->getTrackObjectManager()->insertObject(tobj); } + + /** Exits the race to the main menu */ + void exitRace() + { + World::getWorld()->scheduleExitRace(); + } } /** \cond DOXYGEN_IGNORE */ @@ -245,7 +251,8 @@ namespace Scripting r = engine->RegisterGlobalFunction("void createTrigger(const string &in, const Vec3 &in, float distance)", asFUNCTION(createTrigger), asCALL_CDECL); assert(r >= 0); r = engine->RegisterGlobalFunction("TrackObject@ getTrackObject(const string &in)", asFUNCTION(getTrackObject), asCALL_CDECL); assert(r >= 0); - + r = engine->RegisterGlobalFunction("void exitRace()", asFUNCTION(exitRace), asCALL_CDECL); assert(r >= 0); + // TrackObject r = engine->RegisterObjectMethod("TrackObject", "void setEnable(bool status)", asMETHOD(TrackObject, setEnable), asCALL_THISCALL); assert(r >= 0); r = engine->RegisterObjectMethod("TrackObject", "SoundEmitter@ getSoundEmitter()", asMETHOD(TrackObject, getSoundEmitter), asCALL_THISCALL); assert(r >= 0); diff --git a/src/tracks/track_object_presentation.cpp b/src/tracks/track_object_presentation.cpp index cf4be74ef..35bb110a1 100644 --- a/src/tracks/track_object_presentation.cpp +++ b/src/tracks/track_object_presentation.cpp @@ -940,12 +940,6 @@ void TrackObjectPresentationActionTrigger::onTriggerItemApproached(Item* who) _("Complete all challenges to unlock the big door!"), true); } } - else if (m_action == "tutorial_exit") - { - // TODO: move to scripting - World::getWorld()->scheduleExitRace(); - return; - } else { Scripting::ScriptEngine* script_engine =