[Zone] Zone Routing Improvements (#4142)

* Routing changes

* Update world_content_service.cpp

* Cleanup routing logic

* Tweaks
This commit is contained in:
Chris Miles
2024-03-02 15:19:42 -06:00
committed by GitHub
parent 70ee95efc0
commit b6c3e549da
9 changed files with 185 additions and 52 deletions
+9
View File
@@ -73,6 +73,15 @@ Doors::Doors(const DoorsRepository::Doors &door) :
m_door_param = door.door_param;
m_size = door.size;
m_invert_state = door.invert_state;
// if the target zone is the same as the current zone, use the instance of the current zone
// if we don't use the same instance_id that the client was sent, the client will forcefully
// issue a zone change request when they should be simply moving to a different point in the same zone
// because the client will think the zone point target is different from the current instance
if (door.dest_zone == zone->GetShortName() && m_destination_instance_id == 0) {
m_destination_instance_id = zone->GetInstanceID();
}
m_destination_instance_id = door.dest_instance;
m_is_ldon_door = door.is_ldon_door;
m_dz_switch_id = door.dz_switch_id;