From e3b050103c18e1e868de72c5ba1d743e8dcf1ec7 Mon Sep 17 00:00:00 2001 From: Somebody Date: Sun, 8 Jun 2025 22:59:16 +0800 Subject: [PATCH] feat: `scene fsv` `scene gp` --- Command/Command/Cmd/CommandScene.cs | 45 +++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/Command/Command/Cmd/CommandScene.cs b/Command/Command/Cmd/CommandScene.cs index 12ff0770..455b4e47 100644 --- a/Command/Command/Cmd/CommandScene.cs +++ b/Command/Command/Cmd/CommandScene.cs @@ -204,6 +204,51 @@ public class CommandScene : ICommand await arg.SendMsg(I18NManager.Translate("Game.Command.Scene.SceneReset", floorId.ToString())); } + [CommandMethod("0 fsv")] + public async ValueTask SetFSV(CommandArg arg) + { + if (arg.Target == null) + { + await arg.SendMsg(I18NManager.Translate("Game.Command.Notice.PlayerNotFound")); + return; + } + + if (arg.Args.Count < 3) + { + await arg.SendMsg(I18NManager.Translate("Game.Command.Notice.InvalidArguments")); + return; + } + + var name = arg.Args[1]; + var value = int.Parse(arg.Args[2]); + + await arg.Target!.Player!.SceneInstance!.UpdateFloorSavedValue(name, value); + await arg.SendMsg(I18NManager.Translate("Game.Command.Scene.FSVSet", name, value.ToString())); + } + + [CommandMethod("0 gp")] + public async ValueTask SetGP(CommandArg arg) + { + if (arg.Target == null) + { + await arg.SendMsg(I18NManager.Translate("Game.Command.Notice.PlayerNotFound")); + return; + } + + if (arg.Args.Count < 4) + { + await arg.SendMsg(I18NManager.Translate("Game.Command.Notice.InvalidArguments")); + return; + } + + var name = arg.Args[2]; + var value = int.Parse(arg.Args[3]); + var groupId = int.Parse(arg.Args[1]); + + await arg.Target!.Player!.SceneInstance!.UpdateGroupProperty(groupId, name, value); + await arg.SendMsg(I18NManager.Translate("Game.Command.Scene.FSVSet", name, value.ToString())); + } + [CommandMethod("0 cur")] public async ValueTask GetCurrentScene(CommandArg arg) {