levelup, item and synchro device fixes

This commit is contained in:
Mikhail
2024-07-07 14:45:00 -04:00
parent 1fac57b254
commit e9ff2caba2
11 changed files with 216 additions and 9 deletions

View File

@@ -56,6 +56,13 @@ namespace nksrv.LobbyServer.Msgs.User
response.Items.Add(new NetUserItemData() { Count = item.Count, Tid = item.ItemType, Csn = item.Csn, Lv = item.Level, Exp = item.Exp, Corporation = item.Corp, Isn = item.Isn, Position = item.Position});
}
var highestLevelCharacters = user.Characters.OrderByDescending(x => x.Level).Take(5).ToList();
response.SynchroLv = highestLevelCharacters.Last().Level;
foreach (var item in highestLevelCharacters)
{
response.SynchroStandardCharacters.Add(item.Csn);
}
// Add squad data if there are characters
if (user.Characters.Count > 0)

View File

@@ -0,0 +1,36 @@
using nksrv.Utils;
using Swan;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace nksrv.LobbyServer.Msgs.User
{
[PacketPath("/mail/get")]
public class GetMail : LobbyMsgHandler
{
protected override async Task HandleAsync()
{
var req = await ReadData<ReqGetMailData>();
var r = new ResGetMailData();
r.Mail.Add(new NetUserMailData()
{
Msn = 3,
Nickname ="nick",
Title = new() { IsPlain = true, String = "Our Server Fell" },
Text = new() { IsPlain = true, String = "Our Game Was Down For 1 Second because the HP Laptop Which Hosted the Server Got Shut Down by the Lid Closing. As for the Reward for the Inconvience, free paid gems"},
HasReward =true,
Sender = 102
});
r.Mail[0].Items.Add(new NetMailRewardItem() { ExpiredAt = DateTime.UtcNow.AddYears(10).ToUnixEpochDate(), RewardID = 1, RewardType = (int)CurrencyType.ChargeCash, RewardValue = 100000 });
WriteData(r);
}
}
}

View File

@@ -0,0 +1,23 @@
using nksrv.Utils;
using Swan;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace nksrv.LobbyServer.Msgs.User
{
[PacketPath("/mail/read")]
public class ReadMail : LobbyMsgHandler
{
protected override async Task HandleAsync()
{
var req = await ReadData<ReqReadMail>();
var r = new ResReadMail();
//TODO
WriteData(r);
}
}
}