diff --git a/zone/corpse.cpp b/zone/corpse.cpp index 8f8d6a4e1..8b8cfef14 100644 --- a/zone/corpse.cpp +++ b/zone/corpse.cpp @@ -769,8 +769,8 @@ bool Corpse::Process() { Save(); player_corpse_depop = true; database.SendCharacterCorpseToGraveyard(corpse_db_id, zone->graveyard_zoneid(), - (zone->GetZoneID() == zone->graveyard_zoneid()) ? zone->GetInstanceID() : 0, zone->graveyard_x(), - zone->graveyard_y(), zone->graveyard_z(), zone->graveyard_heading()); + (zone->GetZoneID() == zone->graveyard_zoneid()) ? zone->GetInstanceID() : 0, xyz_heading(zone->graveyard_x(), + zone->graveyard_y(), zone->graveyard_z(), zone->graveyard_heading())); corpse_graveyard_timer.Disable(); ServerPacket* pack = new ServerPacket(ServerOP_SpawnPlayerCorpse, sizeof(SpawnPlayerCorpse_Struct)); SpawnPlayerCorpse_Struct* spc = (SpawnPlayerCorpse_Struct*)pack->pBuffer; diff --git a/zone/zonedb.cpp b/zone/zonedb.cpp index f54846185..4fec05758 100644 --- a/zone/zonedb.cpp +++ b/zone/zonedb.cpp @@ -3352,13 +3352,13 @@ uint32 ZoneDatabase::CreateGraveyardRecord(uint32 graveyard_zone_id, float grave } return 0; } -uint32 ZoneDatabase::SendCharacterCorpseToGraveyard(uint32 dbid, uint32 zone_id, uint16 instance_id, float x, float y, float z, float heading) { - std::string query = StringFormat( - "UPDATE `character_corpses` " - "SET `zone_id` = %u, `instance_id` = 0, `x` = %1.1f, `y` = %1.1f, `z` = %1.1f, `heading` = %1.1f, `was_at_graveyard` = 1 " - "WHERE `id` = %d", - zone_id, x, y, z, heading, dbid - ); +uint32 ZoneDatabase::SendCharacterCorpseToGraveyard(uint32 dbid, uint32 zone_id, uint16 instance_id, const xyz_heading& position) { + std::string query = StringFormat("UPDATE `character_corpses` " + "SET `zone_id` = %u, `instance_id` = 0, " + "`x` = %1.1f, `y` = %1.1f, `z` = %1.1f, `heading` = %1.1f, " + "`was_at_graveyard` = 1 " + "WHERE `id` = %d", + zone_id, position.m_X, position.m_Y, position.m_Z, position.m_Heading, dbid); QueryDatabase(query); return dbid; } diff --git a/zone/zonedb.h b/zone/zonedb.h index b126efef4..e72670e83 100644 --- a/zone/zonedb.h +++ b/zone/zonedb.h @@ -310,7 +310,7 @@ public: bool DeleteGraveyard(uint32 zone_id, uint32 graveyard_id); uint32 GetCharacterCorpseDecayTimer(uint32 corpse_db_id); uint32 GetCharacterBuriedCorpseCount(uint32 char_id); - uint32 SendCharacterCorpseToGraveyard(uint32 dbid, uint32 zoneid, uint16 instanceid, float x, float y, float z, float heading); + uint32 SendCharacterCorpseToGraveyard(uint32 dbid, uint32 zoneid, uint16 instanceid, const xyz_heading& position); uint32 CreateGraveyardRecord(uint32 graveyard_zoneid, float graveyard_x, float graveyard_y, float graveyard_z, float graveyard_heading); uint32 AddGraveyardIDToZone(uint32 zone_id, uint32 graveyard_id); uint32 SaveCharacterCorpse(uint32 charid, const char* charname, uint32 zoneid, uint16 instanceid, PlayerCorpse_Struct* dbpc, float x, float y, float z, float heading);