From a200de3b5f6ed19711325d7bfe5aaae5dd397c38 Mon Sep 17 00:00:00 2001 From: azazel Date: Fri, 20 Aug 2010 12:19:14 +0600 Subject: Core * Cleanup in LoadScripts method and related stuff (use enum instead of string to differentiate between script maps) * Fix creation of id and sanity checks for spell_scripts. Should fix warnings about missing spells with id > 65535 --HG-- branch : trunk --- src/server/game/Maps/Map.cpp | 29 ++++------------------------- 1 file changed, 4 insertions(+), 25 deletions(-) (limited to 'src/server/game/Maps/Map.cpp') diff --git a/src/server/game/Maps/Map.cpp b/src/server/game/Maps/Map.cpp index e5d6e36d269..fb9419210e7 100644 --- a/src/server/game/Maps/Map.cpp +++ b/src/server/game/Maps/Map.cpp @@ -3440,34 +3440,13 @@ void Map::ScriptsProcess() } //Lets choose our ScriptMap map - ScriptMapMap *datamap = NULL; - switch (step.script->dataint) - { - case 1: //QUEST END SCRIPTMAP - datamap = &sQuestEndScripts; - break; - case 2: //QUEST START SCRIPTMAP - datamap = &sQuestStartScripts; - break; - case 3: //SPELLS SCRIPTMAP - datamap = &sSpellScripts; - break; - case 4: //GAMEOBJECTS SCRIPTMAP - datamap = &sGameObjectScripts; - break; - case 5: //EVENTS SCRIPTMAP - datamap = &sEventScripts; - break; - case 6: //WAYPOINTS SCRIPTMAP - datamap = &sWaypointScripts; - break; - default: - sLog.outError("SCRIPT_COMMAND_CALLSCRIPT (script id: %u) unknown scriptmap (%u) specified, skipping.", step.script->id, step.script->dataint); - break; - } + ScriptMapMap *datamap = GetScriptsMapByType(ScriptsType(step.script->dataint)); //if no scriptmap present... if (!datamap) + { + sLog.outError("SCRIPT_COMMAND_CALLSCRIPT (script id: %u) unknown scriptmap (%u) specified, skipping.", step.script->id, step.script->dataint); break; + } // Insert script into schedule but do not start it ScriptsStart(*datamap, step.script->datalong2, cTarget, NULL); -- cgit v1.2.3