From 0eb76677791435a4ec7139868b6d872de2fbb24e Mon Sep 17 00:00:00 2001 From: Xackery Date: Thu, 31 Jan 2019 04:34:42 -0800 Subject: [PATCH] Fixed spawn2 and ground spawn issue --- zone/object.cpp | 2 +- zone/spawn2.cpp | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/zone/object.cpp b/zone/object.cpp index 227cd529f..5c2e8ab79 100644 --- a/zone/object.cpp +++ b/zone/object.cpp @@ -699,7 +699,7 @@ Ground_Spawns* ZoneDatabase::LoadGroundSpawns(uint32 zone_id, int16 version, Gro "min_x, min_y, heading, name, " "item, max_allowed, respawn_timer " "FROM ground_spawns " - "WHERE zoneid = %i AND (version = %u OR version = -1) AND min_expansion <= %i AND max_expansion >= %i" + "WHERE zoneid = %i AND (version = %u OR version = -1) AND min_expansion <= %i AND max_expansion >= %i " "LIMIT 50", zone_id, version, latest_expansion, latest_expansion); auto results = QueryDatabase(query); if (!results.Success()) { diff --git a/zone/spawn2.cpp b/zone/spawn2.cpp index e19bf7f0a..8aa2bc3d5 100644 --- a/zone/spawn2.cpp +++ b/zone/spawn2.cpp @@ -575,6 +575,7 @@ bool ZoneDatabase::PopulateZoneSpawnList(uint32 zoneid, LinkedList &spa } const char *zone_name = database.GetZoneName(zoneid); + auto latest_expansion = EQEmu::expansions::ConvertExpansionMaskToLatestExpansion(RuleI(World, ExpansionSettings)); std::string query = StringFormat( "SELECT " "id, " @@ -592,11 +593,15 @@ bool ZoneDatabase::PopulateZoneSpawnList(uint32 zoneid, LinkedList &spa "animation " "FROM " "spawn2 " - "WHERE zone = '%s' AND (version = %u OR version = -1)", + "WHERE zone = '%s' AND (version = %u OR version = -1) AND min_expansion <= %i AND max_expansion >= %i", zone_name, - version + version, + latest_expansion, + latest_expansion ); results = QueryDatabase(query); + Log(Logs::General, Logs::Status, "%s", query.c_str()); + if (!results.Success()) { return false;