aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/database/Database/Implementation/WorldDatabase.cpp2
-rw-r--r--src/server/game/Entities/Creature/Creature.cpp1
-rw-r--r--src/server/game/Entities/Creature/CreatureData.h1
-rw-r--r--src/server/game/Globals/ObjectMgr.cpp29
4 files changed, 18 insertions, 15 deletions
diff --git a/src/server/database/Database/Implementation/WorldDatabase.cpp b/src/server/database/Database/Implementation/WorldDatabase.cpp
index 1a5275f0a13..ef9ca9165cb 100644
--- a/src/server/database/Database/Implementation/WorldDatabase.cpp
+++ b/src/server/database/Database/Implementation/WorldDatabase.cpp
@@ -76,7 +76,7 @@ void WorldDatabaseConnection::DoPrepareStatements()
PrepareStatement(WORLD_SEL_WAYPOINT_SCRIPT_ID_BY_GUID, "SELECT id FROM waypoint_scripts WHERE guid = ?", CONNECTION_SYNCH);
PrepareStatement(WORLD_DEL_CREATURE, "DELETE FROM creature WHERE guid = ?", CONNECTION_ASYNC);
PrepareStatement(WORLD_SEL_COMMANDS, "SELECT name, help FROM command", CONNECTION_SYNCH);
- PrepareStatement(WORLD_SEL_CREATURE_TEMPLATE, "SELECT entry, KillCredit1, KillCredit2, name, femaleName, subname, TitleAlt, IconName, RequiredExpansion, VignetteID, faction, npcflag, speed_walk, speed_run, scale, `rank`, dmgschool, BaseAttackTime, RangeAttackTime, BaseVariance, RangeVariance, unit_class, unit_flags, unit_flags2, unit_flags3, family, trainer_class, type, VehicleId, AIName, MovementType, ctm.Ground, ctm.Swim, ctm.Flight, ctm.Rooted, ctm.Chase, ctm.Random, ctm.InteractionPauseTimer, ExperienceModifier, RacialLeader, movementId, WidgetSetID, WidgetSetUnitConditionID, RegenHealth, mechanic_immune_mask, spell_school_immune_mask, flags_extra, ScriptName, StringId FROM creature_template ct LEFT JOIN creature_template_movement ctm ON ct.entry = ctm.CreatureId WHERE entry = ? OR 1 = ?", CONNECTION_SYNCH);
+ PrepareStatement(WORLD_SEL_CREATURE_TEMPLATE, "SELECT entry, KillCredit1, KillCredit2, name, femaleName, subname, TitleAlt, IconName, RequiredExpansion, VignetteID, faction, npcflag, speed_walk, speed_run, scale, `rank`, dmgschool, BaseAttackTime, RangeAttackTime, BaseVariance, RangeVariance, unit_class, unit_flags, unit_flags2, unit_flags3, family, trainer_class, type, VehicleId, AIName, MovementType, ctm.Ground, ctm.Swim, ctm.Flight, ctm.Rooted, ctm.Chase, ctm.Random, ctm.InteractionPauseTimer, ExperienceModifier, Civilian, RacialLeader, movementId, WidgetSetID, WidgetSetUnitConditionID, RegenHealth, mechanic_immune_mask, spell_school_immune_mask, flags_extra, ScriptName, StringId FROM creature_template ct LEFT JOIN creature_template_movement ctm ON ct.entry = ctm.CreatureId WHERE entry = ? OR 1 = ?", CONNECTION_SYNCH);
PrepareStatement(WORLD_SEL_WAYPOINT_SCRIPT_BY_ID, "SELECT guid, delay, command, datalong, datalong2, dataint, x, y, z, o FROM waypoint_scripts WHERE id = ?", CONNECTION_SYNCH);
PrepareStatement(WORLD_SEL_CREATURE_BY_ID, "SELECT guid FROM creature WHERE id = ?", CONNECTION_SYNCH);
PrepareStatement(WORLD_SEL_GAMEOBJECT_NEAREST, "SELECT guid, id, position_x, position_y, position_z, map, (POW(position_x - ?, 2) + POW(position_y - ?, 2) + POW(position_z - ?, 2)) AS order_ FROM gameobject WHERE map = ? AND (POW(position_x - ?, 2) + POW(position_y - ?, 2) + POW(position_z - ?, 2)) <= ? ORDER BY order_", CONNECTION_SYNCH);
diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp
index 9abcc58623b..d50aa414381 100644
--- a/src/server/game/Entities/Creature/Creature.cpp
+++ b/src/server/game/Entities/Creature/Creature.cpp
@@ -182,6 +182,7 @@ WorldPacket CreatureTemplate::BuildQueryData(LocaleConstant loc, Difficulty diff
WorldPackets::Query::CreatureStats& stats = queryTemp.Stats;
+ stats.Cilivilan = Civilian;
stats.Leader = RacialLeader;
stats.Name[0] = Name;
diff --git a/src/server/game/Entities/Creature/CreatureData.h b/src/server/game/Entities/Creature/CreatureData.h
index 0777e2b69c7..0dd0e11a263 100644
--- a/src/server/game/Entities/Creature/CreatureData.h
+++ b/src/server/game/Entities/Creature/CreatureData.h
@@ -537,6 +537,7 @@ struct TC_GAME_API CreatureTemplate
uint32 MovementType;
CreatureMovementData Movement;
float ModExperience;
+ bool Civilian;
bool RacialLeader;
uint32 movementId;
int32 WidgetSetID;
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp
index 355f88be2c1..1fb7d2916f7 100644
--- a/src/server/game/Globals/ObjectMgr.cpp
+++ b/src/server/game/Globals/ObjectMgr.cpp
@@ -365,11 +365,11 @@ void ObjectMgr::LoadCreatureTemplates()
// "family, trainer_class, type, VehicleId, AIName, MovementType, "
// 31 32 33 34 35 36 37 38
// "ctm.Ground, ctm.Swim, ctm.Flight, ctm.Rooted, ctm.Chase, ctm.Random, ctm.InteractionPauseTimer, ExperienceModifier, "
- // 39 40 41 42 43
- // "RacialLeader, movementId, WidgetSetID, WidgetSetUnitConditionID, RegenHealth, "
- // 44 45 46
+ // 39 40 41 42 43 44
+ // "Civilian, RacialLeader, movementId, WidgetSetID, WidgetSetUnitConditionID, RegenHealth, "
+ // 45 46 47
// "mechanic_immune_mask, spell_school_immune_mask, flags_extra, "
- // 47 48
+ // 48 49
// "ScriptName, StringId FROM creature_template WHERE entry = ? OR 1 = ?");
WorldDatabasePreparedStatement* stmt = WorldDatabase.GetPreparedStatement(WORLD_SEL_CREATURE_TEMPLATE);
@@ -472,16 +472,17 @@ void ObjectMgr::LoadCreatureTemplate(Field* fields)
creatureTemplate.Movement.InteractionPauseTimer = fields[37].GetUInt32();
creatureTemplate.ModExperience = fields[38].GetFloat();
- creatureTemplate.RacialLeader = fields[39].GetBool();
- creatureTemplate.movementId = fields[40].GetUInt32();
- creatureTemplate.WidgetSetID = fields[41].GetInt32();
- creatureTemplate.WidgetSetUnitConditionID = fields[42].GetInt32();
- creatureTemplate.RegenHealth = fields[43].GetBool();
- creatureTemplate.MechanicImmuneMask = fields[44].GetUInt64();
- creatureTemplate.SpellSchoolImmuneMask = fields[45].GetUInt32();
- creatureTemplate.flags_extra = fields[46].GetUInt32();
- creatureTemplate.ScriptID = GetScriptId(fields[47].GetString());
- creatureTemplate.StringId = fields[48].GetString();
+ creatureTemplate.Civilian = fields[39].GetBool();
+ creatureTemplate.RacialLeader = fields[40].GetBool();
+ creatureTemplate.movementId = fields[41].GetUInt32();
+ creatureTemplate.WidgetSetID = fields[42].GetInt32();
+ creatureTemplate.WidgetSetUnitConditionID = fields[43].GetInt32();
+ creatureTemplate.RegenHealth = fields[44].GetBool();
+ creatureTemplate.MechanicImmuneMask = fields[45].GetUInt64();
+ creatureTemplate.SpellSchoolImmuneMask = fields[46].GetUInt32();
+ creatureTemplate.flags_extra = fields[47].GetUInt32();
+ creatureTemplate.ScriptID = GetScriptId(fields[48].GetString());
+ creatureTemplate.StringId = fields[49].GetString();
}
void ObjectMgr::LoadCreatureTemplateGossip()