add lineup manager

This commit is contained in:
Naruse
2026-04-26 22:31:18 +08:00
parent 3f387da322
commit 9c67e36ca3
5 changed files with 107 additions and 14 deletions

View File

@@ -0,0 +1,29 @@
using MikuSB.Database;
using MikuSB.GameServer.Game.Player;
using MikuSB.Database.Lineup;
namespace MikuSB.GameServer.Game.Lineup;
public class LineupManager(PlayerInstance player) : BasePlayerManager(player)
{
public LineupData LineupData { get; } = DatabaseHelper.GetInstanceOrCreateNew<LineupData>(player.Uid);
public async ValueTask<LineupDataInfo?> UpdateLineup(int lineupId, uint member1, uint member2, uint member3)
{
if (!LineupData.LineupInfo.TryGetValue(lineupId, out var formation))
{
formation = new LineupDataInfo
{
Index = (uint)lineupId,
Name = lineupId.ToString()
};
LineupData.LineupInfo[lineupId] = formation;
}
formation.Member1 = member1;
formation.Member2 = member2;
formation.Member3 = member3;
return formation;
}
}