gpt4 book ai didi

c# - 返回一个字符串数组?

转载 作者:太空宇宙 更新时间:2023-11-03 21:36:14 25 4
gpt4 key购买 nike

所以在我的游戏服务器上,我们有服务器端命令。我想知道是否有可能把这个翻过来

public string Command
{
get { return "g"; }
}

变成这样

public string Command
{
get { return "g", "guild", "group"; }
}

这是命令接口(interface)代码

internal interface ICommand
{
string Command { get; }
int RequiredRank { get; }
void Execute(Player player, string[] args);
}

这是命令处理程序的代码
第 1 部分:

ProcessCmd(x[0].Trim('/'), x.Skip(1).ToArray());

第 2 部分:

private void ProcessCmd(string cmd, string[] args)
{
if (cmds == null)
{
cmds = new Dictionary<string, ICommand>();
var t = typeof (ICommand);
foreach (var i in t.Assembly.GetTypes())
if (t.IsAssignableFrom(i) && i != t)
{
var instance = (ICommand) Activator.CreateInstance(i);
cmds.Add(instance.Command, instance);
}
}

ICommand command;
if (!cmds.TryGetValue(cmd, out command))
{
psr.SendPacket(new TextPacket
{
BubbleTime = 0,
Stars = -1,
Name = "*Error*",
Text = "Unknown Command!"
});
return;
}
try
{
ExecCmd(command, args);
}
catch (Exception e)
{
Console.Out.WriteLine(e);
psr.SendPacket(new TextPacket
{
BubbleTime = 0,
Stars = -1,
Name = "*Error*",
Text = "Error when executing the command!"
});
}
}

最佳答案

你想要这个:

public string[] Commands
{
get { return new string[] {"g", "guild", "group"}; }
}

从这里开始。它会产生您应该修复的错误,通过推进修复,您将重构一部分代码,例如 ICommand 接口(interface)。

关于c# - 返回一个字符串数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21680353/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com