aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorXTZGZoReX <none@none>2010-08-06 16:33:31 +0200
committerXTZGZoReX <none@none>2010-08-06 16:33:31 +0200
commite4cab07f32c22fc0ffe8853608d26d15ffc73956 (patch)
treeb31155220143079bf58437ed9fd6a4f8ed52c906 /src
parentfd34134a455314dcd404fd928453b816554bfb3f (diff)
* Add ScriptName to conditions.
--HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Conditions/ConditionMgr.cpp3
-rw-r--r--src/server/game/Conditions/ConditionMgr.h2
-rw-r--r--src/server/game/Globals/ObjectMgr.cpp2
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)