From 7d96a030427b6726edefbd021d684b7faa679305 Mon Sep 17 00:00:00 2001 From: rpaciorek Date: Mon, 19 Aug 2024 21:19:48 +0200 Subject: [PATCH] implement JL (Join LIMBO) command Join Limbo command based on Alan Moon PR --------- Co-authored-by: Alan Moon --- src/CommandHandlers/JoinLimboHandler.cs | 17 +++++++++++++++++ src/CommandHandlers/LoginHandler.cs | 12 ------------ src/Core/Client.cs | 2 +- 3 files changed, 18 insertions(+), 13 deletions(-) create mode 100644 src/CommandHandlers/JoinLimboHandler.cs diff --git a/src/CommandHandlers/JoinLimboHandler.cs b/src/CommandHandlers/JoinLimboHandler.cs new file mode 100644 index 0000000..ca4554f --- /dev/null +++ b/src/CommandHandlers/JoinLimboHandler.cs @@ -0,0 +1,17 @@ +using sodoffmmo.Attributes; +using sodoffmmo.Core; +using sodoffmmo.Data; + +namespace sodoffmmo.CommandHandlers +{ + [ExtensionCommandHandler("JL")] + public class JoinLimboHandler : CommandHandler + { + public override Task Handle(Client client, NetworkObject receivedObject) + { + client.SetRoom(Room.GetOrAdd("LIMBO")); + + return Task.CompletedTask; + } + } +} diff --git a/src/CommandHandlers/LoginHandler.cs b/src/CommandHandlers/LoginHandler.cs index 0c6eacf..0714226 100644 --- a/src/CommandHandlers/LoginHandler.cs +++ b/src/CommandHandlers/LoginHandler.cs @@ -49,18 +49,6 @@ class LoginHandler : CommandHandler r2.Add(WorldEvent.Get().EventInfoArray(true)); rl.Add(r2); - NetworkArray r3 = new(); - r3.Add(2); - r3.Add("LIMBO"); - r3.Add("default"); - r3.Add(false); - r3.Add(false); - r3.Add(false); - r3.Add((short)31); - r3.Add((short)10000); - r3.Add(new NetworkArray()); - rl.Add(r3); - NetworkObject content = new(); content.Add("rl", rl); content.Add("zn", client.PlayerData.ZoneName); diff --git a/src/Core/Client.cs b/src/Core/Client.cs index 455a6a3..0ff7659 100644 --- a/src/Core/Client.cs +++ b/src/Core/Client.cs @@ -69,7 +69,7 @@ public class Client { Room.AddClient(this); Send(Room.SubscribeRoom()); - UpdatePlayerUserVariables(); + if (Room.Name != "LIMBO") UpdatePlayerUserVariables(); // do not update user vars if room is limbo } } }