sync: main repo

This commit is contained in:
StopWuyu
2025-03-01 18:00:46 +08:00
33 changed files with 737 additions and 153 deletions

View File

@@ -23,7 +23,7 @@ public class CommandGiveall : ICommand
arg.CharacterArgs.TryGetValue("r", out var rankStr);
arg.CharacterArgs.TryGetValue("l", out var levelStr);
rankStr ??= "1";
rankStr ??= "0";
levelStr ??= "1";
if (!int.TryParse(rankStr, out var rank) || !int.TryParse(levelStr, out var level))
{

View File

@@ -1,5 +1,7 @@
using System.Text;
using EggLink.DanhengServer.Data.Config;
using EggLink.DanhengServer.Enums.Mission;
using EggLink.DanhengServer.GameServer.Game.Mission;
using EggLink.DanhengServer.Internationalization;
namespace EggLink.DanhengServer.Command.Command.Cmd;
@@ -57,8 +59,8 @@ public class CommandMission : ICommand
return;
}
var mission = arg.Target!.Player!.MissionManager!;
var runningMissions = mission.GetRunningSubMissionList();
MissionManager mission = arg.Target!.Player!.MissionManager!;
List<SubMissionInfo> runningMissions = mission.GetRunningSubMissionList();
if (runningMissions.Count == 0)
{
await arg.SendMsg(I18NManager.Translate("Game.Command.Mission.NoRunningMissions"));
@@ -68,6 +70,7 @@ public class CommandMission : ICommand
await arg.SendMsg(I18NManager.Translate("Game.Command.Mission.RunningMissions"));
Dictionary<int, List<int>> missionMap = [];
//build missionMap
foreach (var m in runningMissions)
{
if (!missionMap.TryGetValue(m.MainMissionID, out var value))
@@ -78,7 +81,24 @@ public class CommandMission : ICommand
value.Add(m.ID);
}
if ((arg.BasicArgs.Count == 1 && arg.BasicArgs[0] == "-all") || mission.Data.TrackingMainMissionId == 0)
{
//Show all the missions
await ShowMissionList(mission, missionMap, arg);
}
else
{
//Only show tracking missions
Dictionary<int, List<int>> runningMissionMap = [];
runningMissionMap[mission.Data.TrackingMainMissionId] = missionMap[mission.Data.TrackingMainMissionId];
await ShowMissionList(mission, runningMissionMap, arg);
}
await Task.CompletedTask;
}
public async ValueTask ShowMissionList(MissionManager mission, Dictionary<int, List<int>> missionMap, CommandArg arg)
{
var possibleStuckIds = new List<int>();
var morePossibleStuckIds = new List<int>();
@@ -124,8 +144,6 @@ public class CommandMission : ICommand
await arg.SendMsg(sb.ToString());
}
await Task.CompletedTask;
}
[CommandMethod("0 reaccept")]

View File

@@ -15,7 +15,7 @@ public class CommandRelic : ICommand
return;
}
if (arg.BasicArgs.Count < 3)
if (arg.BasicArgs.Count < 2)
{
await arg.SendMsg(I18NManager.Translate("Game.Command.Notice.InvalidArguments"));
return;