diff options
| author | XTZGZoReX <none@none> | 2010-08-06 16:33:31 +0200 |
|---|---|---|
| committer | XTZGZoReX <none@none> | 2010-08-06 16:33:31 +0200 |
| commit | e4cab07f32c22fc0ffe8853608d26d15ffc73956 (patch) | |
| tree | b31155220143079bf58437ed9fd6a4f8ed52c906 /src | |
| parent | fd34134a455314dcd404fd928453b816554bfb3f (diff) | |
* Add ScriptName to conditions.
--HG--
branch : trunk
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/game/Conditions/ConditionMgr.cpp | 3 | ||||
| -rw-r--r-- | src/server/game/Conditions/ConditionMgr.h | 2 | ||||
| -rw-r--r-- | src/server/game/Globals/ObjectMgr.cpp | 2 |
3 files changed, 6 insertions, 1 deletions
diff --git a/src/server/game/Conditions/ConditionMgr.cpp b/src/server/game/Conditions/ConditionMgr.cpp index c835b4e8963..2ce666bede5 100644 --- a/src/server/game/Conditions/ConditionMgr.cpp +++ b/src/server/game/Conditions/ConditionMgr.cpp @@ -313,7 +313,7 @@ void ConditionMgr::LoadConditions(bool isReload) } uint32 count = 0; - QueryResult_AutoPtr result = WorldDatabase.Query("SELECT SourceTypeOrReferenceId, SourceGroup, SourceEntry, ElseGroup, ConditionTypeOrReference, ConditionValue1, ConditionValue2, ConditionValue3, ErrorTextId FROM conditions"); + QueryResult_AutoPtr result = WorldDatabase.Query("SELECT SourceTypeOrReferenceId, SourceGroup, SourceEntry, ElseGroup, ConditionTypeOrReference, ConditionValue1, ConditionValue2, ConditionValue3, ErrorTextId, ScriptName FROM conditions"); if (!result) { @@ -344,6 +344,7 @@ void ConditionMgr::LoadConditions(bool isReload) cond->mConditionValue2 = fields[6].GetUInt32(); cond->mConditionValue3 = fields[7].GetUInt32(); cond->ErrorTextd = fields[8].GetUInt32(); + cond->mScriptId = objmgr.GetScriptId(fields[9].GetString()); if (iConditionTypeOrReference >= 0) cond->mConditionType = ConditionType(iConditionTypeOrReference); diff --git a/src/server/game/Conditions/ConditionMgr.h b/src/server/game/Conditions/ConditionMgr.h index bb9fc2708fa..11c148783ea 100644 --- a/src/server/game/Conditions/ConditionMgr.h +++ b/src/server/game/Conditions/ConditionMgr.h @@ -95,6 +95,7 @@ struct Condition uint32 mConditionValue3; uint32 ErrorTextd; uint32 mReferenceId; + uint32 mScriptId; Condition() { @@ -108,6 +109,7 @@ struct Condition mConditionValue3 = 0; mReferenceId = 0; ErrorTextd = 0; + mScriptId = 0; } bool Meets(Player * player, Unit* targetOverride = NULL); bool isLoaded() { return mConditionType > CONDITION_NONE || mReferenceId; } diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index 5ab7c515601..23ce129d0d3 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -8748,6 +8748,8 @@ void ObjectMgr::LoadScriptNames() "UNION " "SELECT DISTINCT(ScriptName) FROM game_weather WHERE ScriptName <> '' " "UNION " + "SELECT DISTINCT(ScriptName) FROM conditions WHERE ScriptName <> '' " + "UNION " "SELECT DISTINCT(script) FROM instance_template WHERE script <> ''"); if (!result) |
