mirror of
https://github.com/EpinelPS/EpinelPS.git
synced 2025-12-13 15:34:36 +01:00
33 lines
1.1 KiB
C#
33 lines
1.1 KiB
C#
using nksrv.Database;
|
|
using nksrv.StaticInfo;
|
|
using nksrv.Utils;
|
|
|
|
namespace nksrv.LobbyServer.Msgs.Campaign
|
|
{
|
|
[PacketPath("/campaign/savefieldobject")]
|
|
public class SaveFieldObject : LobbyMsgHandler
|
|
{
|
|
protected override async Task HandleAsync()
|
|
{
|
|
var req = await ReadData<ReqSaveCampaignFieldObject>();
|
|
var user = GetUser();
|
|
|
|
Console.WriteLine("Map ID: " + req.MapId);
|
|
|
|
var response = new ResSaveCampaignFieldObject();
|
|
|
|
Console.WriteLine($"save {req.MapId} with {req.FieldObject.PositionID}");
|
|
|
|
var chapter = StaticDataParser.Instance.GetNormalChapterNumberFromFieldName(req.MapId);
|
|
var mod = req.MapId.Contains("hard") ? "Hard" : "Normal";
|
|
var key = chapter + "_" + mod;
|
|
var field = user.FieldInfoNew[key];
|
|
|
|
field.CompletedObjects.Add(new NetFieldObject() { PositionId = req.FieldObject.PositionID, Json = req.FieldObject.Json, Type = req.FieldObject.Type });
|
|
JsonDb.Save();
|
|
|
|
await WriteDataAsync(response);
|
|
}
|
|
}
|
|
}
|