main quest works

This commit is contained in:
Mikhail Thompson
2024-06-29 15:11:42 +03:00
parent 1229104086
commit 846b72ce9d
21 changed files with 299 additions and 49 deletions

View File

@@ -23,7 +23,8 @@ namespace nksrv.LobbyServer.Msgs.User
response.User.CommanderRoomJukebox = 5;
response.User.CostumeLv = 1;
response.User.Frame = 1;
response.User.Icon = 39900;
response.User.Icon = user.ProfileIconId;
response.User.IconPrism = user.ProfileIconIsPrism;
response.User.LobbyJukebox = 2;
response.ResetHour = 20;
response.Nickname = user.Nickname;

View File

@@ -15,7 +15,42 @@ namespace nksrv.LobbyServer.Msgs.User
var req = await ReadData<ReqGetAllFeatureFlags>();
var response = new ResGetAllFeatureFlags();
// TODO
response.Flags.AddRange([
new NetFeatureFlag() { FeatureKind = NetFeatureKind.UnionRaid2, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.CooperationEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.RookieArena, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.SimulationRoom, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.DailyEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.Intercept, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.Attendance, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.Dice, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.StoryDungeonEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.Tower, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.LostSector2, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.Subscription2, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.ArchiveEventSystem, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.ViewShortCut, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.PollEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.ComeBackUserEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.EventPass, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.FieldHubEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.ShopEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.MissionEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.ChargeGachaEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.MiniGameSortOut, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.CharacterSkillResetEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.EventQuest, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.RewardUpEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.SdbattleEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.TextAdventure, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.ChallengeModeEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.DailyFreeGachaEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.BoxGachaEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.DiceEvent, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.Bbqtycoon, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.Ce002MiniGame, IsOpen = true },
new NetFeatureFlag() { FeatureKind = NetFeatureKind.SoloRaid, IsOpen = true },
]);
WriteData(response);
}
}

View File

@@ -24,7 +24,8 @@ namespace nksrv.LobbyServer.Msgs.User
response.User.CommanderRoomJukebox = 5;
response.User.CostumeLv = 1;
response.User.Frame = 1;
response.User.Icon = 39900;
response.User.Icon = user.ProfileIconId;
response.User.IconPrism = user.ProfileIconIsPrism;
response.User.LobbyJukebox = 2;
response.ResetHour = 20;
response.OutpostBattleTime = new NetOutpostBattleTime() { MaxBattleTime = 864000000000, MaxOverBattleTime = 12096000000000 };

View File

@@ -1,4 +1,5 @@
using nksrv.Utils;
using Swan.Logging;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -13,11 +14,21 @@ namespace nksrv.LobbyServer.Msgs.User
protected override async Task HandleAsync()
{
var req = await ReadData<ReqGetProfileData>();
var user = GetUser();
var response = new ResGetProfileData();
Console.WriteLine(req.TargetUsn);
response.Data = new NetProfileData();
Console.WriteLine("GET USER PROFILE NOT IMPLEMENTED: " + req.TargetUsn);
if (user.ID == (ulong)req.TargetUsn)
{
response.Data.User = new NetWholeUserData();
response.Data.User.Icon = user.ProfileIconId;
response.Data.User.IconPrism = user.ProfileIconIsPrism;
}
else
{
Logger.Warn("Unknown User ID: " + req.TargetUsn);
}
WriteData(response);
}
}

View File

@@ -14,7 +14,7 @@ namespace nksrv.LobbyServer.Msgs.User
{
var req = await ReadData<ReqGetWallpaper>();
var response = new ResGetWallpaper();
response.WallpaperList.AddRange(GetUser().WallpaperList);
WriteData(response);
}

View File

@@ -0,0 +1,24 @@
using nksrv.Utils;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace nksrv.LobbyServer.Msgs.User
{
[PacketPath("/user/setprofileicon")]
public class SetProfileIcon : LobbyMsgHandler
{
protected override async Task HandleAsync()
{
var req = await ReadData<ReqSetProfileIcon>();
var user = GetUser();
user.ProfileIconId = req.Icon;
user.ProfileIconIsPrism = req.IsPrism;
JsonDb.Save();
var response = new ResSetProfileIcon();
WriteData(response);
}
}
}

View File

@@ -14,7 +14,8 @@ namespace nksrv.LobbyServer.Msgs.User
{
var req = await ReadData<ReqSetWallpaper>();
var response = new ResSetWallpaper();
// todo
var user = GetUser();
user.WallpaperList = req.WallpaperList.ToArray();
WriteData(response);
}

View File

@@ -15,7 +15,7 @@ namespace nksrv.LobbyServer.Msgs.User.Tutorial
var req = await ReadData<ReqSetTutorial>();
var user = GetUser();
if (!user.ClearedTutorials.Contains(req.LastClearedTid))
user.ClearedTutorials.Add(req.LastClearedTid);
user.ClearedTutorials.Add(req.LastClearedTid);
JsonDb.Save();
var response = new ResSetTutorial();