mirror of
https://bitbucket.org/Ioncannon/project-meteor-server.git
synced 2025-06-08 21:44:35 +02:00
If a player tries to zone to a offline server they will see a standard error message. Also a reconnection attempt will be made on a disconnected server.
This commit is contained in:
parent
260878df38
commit
4ce4647a75
9 changed files with 112 additions and 24 deletions
|
@ -360,14 +360,7 @@ namespace FFXIVClassic_Map_Server
|
|||
|
||||
//Moves actor to new zone, and sends packets to spawn at the given coords.
|
||||
public void DoZoneChange(Player player, uint destinationZoneId, string destinationPrivateArea, byte spawnType, float spawnX, float spawnY, float spawnZ, float spawnRotation)
|
||||
{
|
||||
Area oldZone = player.zone;
|
||||
//Remove player from currentZone if transfer else it's login
|
||||
if (player.zone != null)
|
||||
{
|
||||
oldZone.RemoveActorFromZone(player);
|
||||
}
|
||||
|
||||
{
|
||||
//Add player to new zone and update
|
||||
Area newArea;
|
||||
|
||||
|
@ -379,16 +372,18 @@ namespace FFXIVClassic_Map_Server
|
|||
//This server does not contain that zoneId
|
||||
if (newArea == null)
|
||||
{
|
||||
if (oldZone != null)
|
||||
{
|
||||
oldZone.AddActorToZone(player);
|
||||
}
|
||||
|
||||
Program.Log.Debug("Request to change to zone not on this server by: {0}.", player.customDisplayName);
|
||||
RequestWorldServerZoneChange(player, destinationZoneId, spawnType, spawnX, spawnY, spawnZ, spawnRotation);
|
||||
return;
|
||||
}
|
||||
|
||||
Area oldZone = player.zone;
|
||||
//Remove player from currentZone if transfer else it's login
|
||||
if (player.zone != null)
|
||||
{
|
||||
oldZone.RemoveActorFromZone(player);
|
||||
}
|
||||
|
||||
newArea.AddActorToZone(player);
|
||||
|
||||
//Update player actor's properties
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue