mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-12 05:21:29 +00:00
Migrate zone [skip ci]
This commit is contained in:
parent
8d21225eb3
commit
3a09197d77
@ -330,7 +330,7 @@ int main(int argc, char** argv) {
|
||||
database.PurgeAllDeletedDataBuckets();
|
||||
|
||||
LogInfo("Loading zones");
|
||||
database.LoadZoneNames();
|
||||
content_db.LoadZoneNames();
|
||||
LogInfo("Clearing groups");
|
||||
database.ClearGroup();
|
||||
LogInfo("Clearing raids");
|
||||
|
||||
@ -108,7 +108,7 @@ bool ZoneServer::SetZone(uint32 iZoneID, uint32 iInstanceID, bool iStaticZone) {
|
||||
if (zn)
|
||||
{
|
||||
strn0cpy(zone_name, zn, sizeof(zone_name));
|
||||
if (database.GetZoneLongName((char*)zone_name, &longname, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr))
|
||||
if (content_db.GetZoneLongName((char*)zone_name, &longname, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr))
|
||||
{
|
||||
strn0cpy(long_name, longname, sizeof(long_name));
|
||||
safe_delete_array(longname);
|
||||
|
||||
@ -1061,7 +1061,7 @@ private:
|
||||
return;
|
||||
|
||||
std::string query = "SELECT `short_name`, `long_name` FROM `zone` WHERE '' NOT IN (`short_name`, `long_name`)";
|
||||
auto results = database.QueryDatabase(query);
|
||||
auto results = content_db.QueryDatabase(query);
|
||||
if (!results.Success()) {
|
||||
LogError("load_teleport_zone_names() - Error in zone names query: [{}]", results.ErrorMessage().c_str());
|
||||
return;
|
||||
|
||||
@ -6407,7 +6407,7 @@ void Client::Handle_OP_GMZoneRequest(const EQApplicationPacket *app)
|
||||
strcpy(tarzone, zname);
|
||||
|
||||
// this both loads the safe points and does a sanity check on zone name
|
||||
if (!database.GetSafePoints(tarzone, 0, &tarx, &tary, &tarz, &minstatus, &minlevel)) {
|
||||
if (!content_db.GetSafePoints(tarzone, 0, &tarx, &tary, &tarz, &minstatus, &minlevel)) {
|
||||
tarzone[0] = 0;
|
||||
}
|
||||
|
||||
@ -12418,7 +12418,7 @@ void Client::Handle_OP_SetStartCity(const EQApplicationPacket *app)
|
||||
zoneid = atoi(row[0]);
|
||||
|
||||
char* name = nullptr;
|
||||
database.GetZoneLongName(database.GetZoneName(zoneid), &name);
|
||||
content_db.GetZoneLongName(database.GetZoneName(zoneid), &name);
|
||||
Message(Chat::Yellow, "%d - %s", zoneid, name);
|
||||
}
|
||||
|
||||
|
||||
@ -4136,7 +4136,7 @@ void command_findzone(Client *c, const Seperator *sep)
|
||||
}
|
||||
}
|
||||
|
||||
auto results = database.QueryDatabase(query);
|
||||
auto results = content_db.QueryDatabase(query);
|
||||
if (!results.Success()) {
|
||||
c->Message(Chat::White, "Error querying database.");
|
||||
c->Message(Chat::White, query.c_str());
|
||||
@ -4273,7 +4273,7 @@ void command_reloadlevelmods(Client *c, const Seperator *sep)
|
||||
|
||||
void command_reloadzps(Client *c, const Seperator *sep)
|
||||
{
|
||||
database.LoadStaticZonePoints(&zone->zone_point_list, zone->GetShortName(), zone->GetInstanceVersion());
|
||||
content_db.LoadStaticZonePoints(&zone->zone_point_list, zone->GetShortName(), zone->GetInstanceVersion());
|
||||
c->Message(Chat::White, "Reloading server zone_points.");
|
||||
}
|
||||
|
||||
@ -4950,7 +4950,7 @@ void command_gmzone(Client *c, const Seperator *sep)
|
||||
int16 min_status = 0;
|
||||
uint8 min_level = 0;
|
||||
|
||||
if (!database.GetSafePoints(
|
||||
if (!content_db.GetSafePoints(
|
||||
zone_short_name,
|
||||
zone_version,
|
||||
&target_x,
|
||||
@ -9101,7 +9101,7 @@ void command_flagedit(Client *c, const Seperator *sep) {
|
||||
if(!strcasecmp(sep->arg[1], "listzones")) {
|
||||
std::string query = "SELECT zoneidnumber, short_name, long_name, version, flag_needed "
|
||||
"FROM zone WHERE flag_needed != ''";
|
||||
auto results = database.QueryDatabase(query);
|
||||
auto results = content_db.QueryDatabase(query);
|
||||
if (!results.Success()) {
|
||||
return;
|
||||
}
|
||||
@ -9642,8 +9642,8 @@ void command_deletegraveyard(Client *c, const Seperator *sep)
|
||||
return;
|
||||
}
|
||||
|
||||
zoneid = database.GetZoneID(sep->arg[1]);
|
||||
graveyard_id = database.GetZoneGraveyardID(zoneid, 0);
|
||||
zoneid = content_db.GetZoneID(sep->arg[1]);
|
||||
graveyard_id = content_db.GetZoneGraveyardID(zoneid, 0);
|
||||
|
||||
if(zoneid > 0 && graveyard_id > 0) {
|
||||
if(database.DeleteGraveyard(zoneid, graveyard_id))
|
||||
@ -12568,7 +12568,7 @@ void command_mysqltest(Client *c, const Seperator *sep)
|
||||
t = std::clock();
|
||||
for (i = 0; i < atoi(sep->arg[1]); i++){
|
||||
std::string query = "SELECT * FROM `zone`";
|
||||
auto results = database.QueryDatabase(query);
|
||||
auto results = content_db.QueryDatabase(query);
|
||||
}
|
||||
}
|
||||
LogDebug("MySQL Test Took [{}] seconds", ((float)(std::clock() - t)) / CLOCKS_PER_SEC);
|
||||
|
||||
@ -313,7 +313,7 @@ int main(int argc, char** argv) {
|
||||
}
|
||||
|
||||
LogInfo("Loading zone names");
|
||||
database.LoadZoneNames();
|
||||
content_db.LoadZoneNames();
|
||||
|
||||
LogInfo("Loading items");
|
||||
if (!database.LoadItems(hotfix_name)) {
|
||||
|
||||
@ -3065,7 +3065,7 @@ int32 QuestManager::GetZoneID(const char *zone) {
|
||||
|
||||
const char* QuestManager::GetZoneLongName(const char *zone) {
|
||||
char *long_name;
|
||||
database.GetZoneLongName(zone, &long_name);
|
||||
content_db.GetZoneLongName(zone, &long_name);
|
||||
std::string ln = long_name;
|
||||
safe_delete_array(long_name);
|
||||
|
||||
|
||||
@ -156,7 +156,7 @@ bool Zone::Bootup(uint32 iZoneID, uint32 iInstanceID, bool iStaticZone) {
|
||||
/**
|
||||
* Set Shutdown timer
|
||||
*/
|
||||
uint32 shutdown_timer = static_cast<uint32>(database.getZoneShutDownDelay(zone->GetZoneID(), zone->GetInstanceVersion()));
|
||||
uint32 shutdown_timer = static_cast<uint32>(content_db.getZoneShutDownDelay(zone->GetZoneID(), zone->GetInstanceVersion()));
|
||||
zone->StartShutdownTimer(shutdown_timer);
|
||||
|
||||
/*
|
||||
@ -811,7 +811,7 @@ Zone::Zone(uint32 in_zoneid, uint32 in_instanceid, const char* in_short_name)
|
||||
pvpzone = false;
|
||||
if(database.GetServerType() == 1)
|
||||
pvpzone = true;
|
||||
database.GetZoneLongName(short_name, &long_name, file_name, &m_SafePoint.x, &m_SafePoint.y, &m_SafePoint.z, &pgraveyard_id, &pMaxClients);
|
||||
content_db.GetZoneLongName(short_name, &long_name, file_name, &m_SafePoint.x, &m_SafePoint.y, &m_SafePoint.z, &pgraveyard_id, &pMaxClients);
|
||||
if(graveyard_id() > 0)
|
||||
{
|
||||
LogDebug("Graveyard ID is [{}]", graveyard_id());
|
||||
@ -931,7 +931,7 @@ bool Zone::Init(bool iStaticZone) {
|
||||
}
|
||||
|
||||
LogInfo("Loading static zone points");
|
||||
if (!database.LoadStaticZonePoints(&zone_point_list, short_name, GetInstanceVersion())) {
|
||||
if (!content_db.LoadStaticZonePoints(&zone_point_list, short_name, GetInstanceVersion())) {
|
||||
LogError("Loading static zone points failed");
|
||||
return false;
|
||||
}
|
||||
@ -1019,7 +1019,7 @@ bool Zone::Init(bool iStaticZone) {
|
||||
petition_list.ReadDatabase();
|
||||
|
||||
LogInfo("Loading timezone data");
|
||||
zone->zone_time.setEQTimeZone(database.GetZoneTZ(zoneid, GetInstanceVersion()));
|
||||
zone->zone_time.setEQTimeZone(content_db.GetZoneTZ(zoneid, GetInstanceVersion()));
|
||||
|
||||
LogInfo("Init Finished: ZoneID = [{}], Time Offset = [{}]", zoneid, zone->zone_time.getEQTimeZone());
|
||||
|
||||
@ -1036,7 +1036,7 @@ void Zone::ReloadStaticData() {
|
||||
|
||||
LogInfo("Reloading static zone points");
|
||||
zone_point_list.Clear();
|
||||
if (!database.LoadStaticZonePoints(&zone_point_list, GetShortName(), GetInstanceVersion())) {
|
||||
if (!content_db.LoadStaticZonePoints(&zone_point_list, GetShortName(), GetInstanceVersion())) {
|
||||
LogError("Loading static zone points failed");
|
||||
}
|
||||
|
||||
@ -1082,16 +1082,41 @@ bool Zone::LoadZoneCFG(const char* filename, uint16 instance_id)
|
||||
memset(&newzone_data, 0, sizeof(NewZone_Struct));
|
||||
map_name = nullptr;
|
||||
|
||||
if(!database.GetZoneCFG(database.GetZoneID(filename), instance_id, &newzone_data, can_bind,
|
||||
can_combat, can_levitate, can_castoutdoor, is_city, is_hotzone, allow_mercs, max_movement_update_range, zone_type, default_ruleset, &map_name))
|
||||
{
|
||||
if (!content_db.GetZoneCFG(
|
||||
content_db.GetZoneID(filename),
|
||||
instance_id,
|
||||
&newzone_data,
|
||||
can_bind,
|
||||
can_combat,
|
||||
can_levitate,
|
||||
can_castoutdoor,
|
||||
is_city,
|
||||
is_hotzone,
|
||||
allow_mercs,
|
||||
max_movement_update_range,
|
||||
zone_type,
|
||||
default_ruleset,
|
||||
&map_name
|
||||
)) {
|
||||
// If loading a non-zero instance failed, try loading the default
|
||||
if (instance_id != 0)
|
||||
{
|
||||
if (instance_id != 0) {
|
||||
safe_delete_array(map_name);
|
||||
if(!database.GetZoneCFG(database.GetZoneID(filename), 0, &newzone_data, can_bind, can_combat, can_levitate,
|
||||
can_castoutdoor, is_city, is_hotzone, allow_mercs, max_movement_update_range, zone_type, default_ruleset, &map_name))
|
||||
{
|
||||
if (!content_db.GetZoneCFG(
|
||||
content_db.GetZoneID(filename),
|
||||
0,
|
||||
&newzone_data,
|
||||
can_bind,
|
||||
can_combat,
|
||||
can_levitate,
|
||||
can_castoutdoor,
|
||||
is_city,
|
||||
is_hotzone,
|
||||
allow_mercs,
|
||||
max_movement_update_range,
|
||||
zone_type,
|
||||
default_ruleset,
|
||||
&map_name
|
||||
)) {
|
||||
LogError("Error loading the Zone Config");
|
||||
return false;
|
||||
}
|
||||
@ -1107,8 +1132,9 @@ bool Zone::LoadZoneCFG(const char* filename, uint16 instance_id)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Zone::SaveZoneCFG() {
|
||||
return database.SaveZoneCFG(GetZoneID(), GetInstanceVersion(), &newzone_data);
|
||||
bool Zone::SaveZoneCFG()
|
||||
{
|
||||
return content_db.SaveZoneCFG(GetZoneID(), GetInstanceVersion(), &newzone_data);
|
||||
}
|
||||
|
||||
void Zone::AddAuth(ServerZoneIncomingClient_Struct* szic) {
|
||||
@ -1487,7 +1513,7 @@ bool Zone::HasWeather()
|
||||
void Zone::StartShutdownTimer(uint32 set_time) {
|
||||
if (set_time > autoshutdown_timer.GetRemainingTime()) {
|
||||
if (set_time == (RuleI(Zone, AutoShutdownDelay))) {
|
||||
set_time = static_cast<uint32>(database.getZoneShutDownDelay(GetZoneID(), GetInstanceVersion()));
|
||||
set_time = static_cast<uint32>(content_db.getZoneShutDownDelay(GetZoneID(), GetInstanceVersion()));
|
||||
}
|
||||
|
||||
autoshutdown_timer.SetTimer(set_time);
|
||||
@ -2358,7 +2384,7 @@ uint32 Zone::GetSpawnKillCount(uint32 in_spawnid) {
|
||||
void Zone::UpdateHotzone()
|
||||
{
|
||||
std::string query = StringFormat("SELECT hotzone FROM zone WHERE short_name = '%s'", GetShortName());
|
||||
auto results = database.QueryDatabase(query);
|
||||
auto results = content_db.QueryDatabase(query);
|
||||
if (!results.Success())
|
||||
return;
|
||||
|
||||
|
||||
@ -170,7 +170,7 @@ void Client::Handle_OP_ZoneChange(const EQApplicationPacket *app) {
|
||||
int16 minstatus = 0;
|
||||
uint8 minlevel = 0;
|
||||
char flag_needed[128];
|
||||
if(!database.GetSafePoints(target_zone_name, database.GetInstanceVersion(target_instance_id), &safe_x, &safe_y, &safe_z, &minstatus, &minlevel, flag_needed)) {
|
||||
if(!content_db.GetSafePoints(target_zone_name, database.GetInstanceVersion(target_instance_id), &safe_x, &safe_y, &safe_z, &minstatus, &minlevel, flag_needed)) {
|
||||
//invalid zone...
|
||||
Message(Chat::Red, "Invalid target zone while getting safe points.");
|
||||
LogError("Zoning [{}]: Unable to get safe coordinates for zone [{}]", GetName(), target_zone_name);
|
||||
@ -483,7 +483,7 @@ void Client::ZonePC(uint32 zoneID, uint32 instance_id, float x, float y, float z
|
||||
char* pZoneName = nullptr;
|
||||
|
||||
pShortZoneName = database.GetZoneName(zoneID);
|
||||
database.GetZoneLongName(pShortZoneName, &pZoneName);
|
||||
content_db.GetZoneLongName(pShortZoneName, &pZoneName);
|
||||
|
||||
if(!pZoneName) {
|
||||
Message(Chat::Red, "Invalid zone number specified");
|
||||
@ -831,7 +831,7 @@ void Client::SendZoneFlagInfo(Client *to) const {
|
||||
const char *short_name = database.GetZoneName(zoneid);
|
||||
|
||||
char *long_name = nullptr;
|
||||
database.GetZoneLongName(short_name, &long_name);
|
||||
content_db.GetZoneLongName(short_name, &long_name);
|
||||
if(long_name == nullptr)
|
||||
long_name = empty;
|
||||
|
||||
@ -839,7 +839,7 @@ void Client::SendZoneFlagInfo(Client *to) const {
|
||||
int16 minstatus = 0;
|
||||
uint8 minlevel = 0;
|
||||
char flag_name[128];
|
||||
if(!database.GetSafePoints(short_name, 0, &safe_x, &safe_y, &safe_z, &minstatus, &minlevel, flag_name)) {
|
||||
if(!content_db.GetSafePoints(short_name, 0, &safe_x, &safe_y, &safe_z, &minstatus, &minlevel, flag_name)) {
|
||||
strcpy(flag_name, "(ERROR GETTING NAME)");
|
||||
}
|
||||
|
||||
@ -861,7 +861,7 @@ bool Client::CanBeInZone() {
|
||||
int16 minstatus = 0;
|
||||
uint8 minlevel = 0;
|
||||
char flag_needed[128];
|
||||
if(!database.GetSafePoints(zone->GetShortName(), zone->GetInstanceVersion(), &safe_x, &safe_y, &safe_z, &minstatus, &minlevel, flag_needed)) {
|
||||
if(!content_db.GetSafePoints(zone->GetShortName(), zone->GetInstanceVersion(), &safe_x, &safe_y, &safe_z, &minstatus, &minlevel, flag_needed)) {
|
||||
//this should not happen...
|
||||
LogDebug("[CLIENT] Unable to query zone info for ourself [{}]", zone->GetShortName());
|
||||
return(false);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user