From e585187b248f48b3c6e9247b49fa07c6565d65e5 Mon Sep 17 00:00:00 2001 From: maximius Date: Sat, 17 Oct 2009 15:51:44 -0700 Subject: *Backed out changeset 3be01fb200a5 --HG-- branch : trunk --- src/bindings/scripts/system/system.h | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'src/bindings/scripts/system/system.h') diff --git a/src/bindings/scripts/system/system.h b/src/bindings/scripts/system/system.h index 83742a3c329..479f856514a 100644 --- a/src/bindings/scripts/system/system.h +++ b/src/bindings/scripts/system/system.h @@ -1,10 +1,14 @@ /* Copyright (C) 2006 - 2009 ScriptDev2 * This program is free software licensed under GPL version 2 * Please see the included DOCS/LICENSE.TXT for more information */ + #ifndef SC_SYSTEM_H #define SC_SYSTEM_H + extern DatabaseType TScriptDB; + #define TEXT_SOURCE_RANGE -1000000 //the amount of entries each text source has available + //TODO: find better namings and definitions. //N=Neutral, A=Alliance, H=Horde. //NEUTRAL or FRIEND = Hostility to player surroundings (not a good definition) @@ -14,16 +18,21 @@ enum eEscortFaction FACTION_ESCORT_A_NEUTRAL_PASSIVE = 10, FACTION_ESCORT_H_NEUTRAL_PASSIVE = 33, FACTION_ESCORT_N_NEUTRAL_PASSIVE = 113, + FACTION_ESCORT_A_NEUTRAL_ACTIVE = 231, FACTION_ESCORT_H_NEUTRAL_ACTIVE = 232, FACTION_ESCORT_N_NEUTRAL_ACTIVE = 250, + FACTION_ESCORT_N_FRIEND_PASSIVE = 290, FACTION_ESCORT_N_FRIEND_ACTIVE = 495, + FACTION_ESCORT_A_PASSIVE = 774, FACTION_ESCORT_H_PASSIVE = 775, + FACTION_ESCORT_N_ACTIVE = 1986, FACTION_ESCORT_H_ACTIVE = 2046 }; + struct ScriptPointMove { uint32 uiCreatureEntry; @@ -33,6 +42,7 @@ struct ScriptPointMove float fZ; uint32 uiWaitTime; }; + struct StringTextData { uint32 uiSoundId; @@ -40,39 +50,53 @@ struct StringTextData uint32 uiLanguage; uint32 uiEmote; }; + #define pSystemMgr SystemMgr::Instance() + class SystemMgr { public: SystemMgr(); ~SystemMgr() {} + static SystemMgr& Instance(); + //Maps and lists typedef UNORDERED_MAP TextDataMap; typedef UNORDERED_MAP > PointMoveMap; + //Database void LoadVersion(); void LoadScriptTexts(); void LoadScriptTextsCustom(); void LoadScriptWaypoints(); + //Retrive from storage StringTextData const* GetTextData(int32 uiTextId) const { TextDataMap::const_iterator itr = m_mTextDataMap.find(uiTextId); + if (itr == m_mTextDataMap.end()) return NULL; + return &itr->second; } + std::vector const &GetPointMoveList(uint32 uiCreatureEntry) const { static std::vector vEmpty; + PointMoveMap::const_iterator itr = m_mPointMoveMap.find(uiCreatureEntry); + if (itr == m_mPointMoveMap.end()) return vEmpty; + return itr->second; } + protected: TextDataMap m_mTextDataMap; //additional data for text strings PointMoveMap m_mPointMoveMap; //coordinates for waypoints }; + #endif -- cgit v1.2.3