Init enter game

This commit is contained in:
Naruse
2025-06-14 11:15:32 +08:00
commit 6a03b39f07
568 changed files with 92872 additions and 0 deletions

View File

@@ -0,0 +1,6 @@
namespace KianaBH.GameServer.Server.Packet;
public abstract class Handler
{
public abstract Task OnHandle(Connection connection, byte[] header, byte[] data);
}

View File

@@ -0,0 +1,31 @@
using System.Reflection;
namespace KianaBH.GameServer.Server.Packet;
public static class HandlerManager
{
public static Dictionary<int, Handler> handlers = [];
public static void Init()
{
var classes = Assembly.GetExecutingAssembly().GetTypes(); // Get all classes in the assembly
foreach (var cls in classes)
{
var attribute = (Opcode?)Attribute.GetCustomAttribute(cls, typeof(Opcode));
if (attribute != null) handlers.Add(attribute.CmdId, (Handler)Activator.CreateInstance(cls)!);
}
}
public static Handler? GetHandler(int cmdId)
{
try
{
return handlers[cmdId];
}
catch
{
return null;
}
}
}

View File

@@ -0,0 +1,7 @@
namespace KianaBH.GameServer.Server.Packet;
[AttributeUsage(AttributeTargets.Class)]
public class Opcode(int cmdId) : Attribute
{
public int CmdId = cmdId;
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.ArkPlusActivityGetDataReq)]
public class HandlerArkPlusActivityGetDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketArkPlusActivityGetDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.BuffAssistGetActivityReq)]
public class HandlerBuffAssistGetActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketBuffAssistGetActivityRsp());
}
}

View File

@@ -0,0 +1,14 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GeneralActivityGetMainInfoReq)]
public class HandlerGeneralActivityGetMainInfoReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = GeneralActivityGetMainInfoReq.Parser.ParseFrom(data);
await connection.SendPacket(new PacketGeneralActivityGetMainInfoRsp(req.ActivityIdList));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GeneralActivityGetScheduleReq)]
public class HandlerGeneralActivityGetScheduleReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGeneralActivityGetScheduleRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetActivityMainDataReq)]
public class HandlerGetActivityMainDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetActivityMainDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetActivityRewardStatisticDataReq)]
public class HandlerGetActivityRewardStatisticDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetActivityRewardStatisticDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetBulletinActivityMissionReq)]
public class HandlerGetBulletinActivityMissionReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetBulletinActivityMissionRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetBulletinReq)]
public class HandlerGetBulletinReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetBulletinRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetChapterActivityDataReq)]
public class HandlerGetChapterActivityDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetChapterActivityDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetChapterCompensationInfoReq)]
public class HandlerGetChapterCompensationInfoReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetChapterCompensationInfoRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetDropLimitActivityReq)]
public class HandlerGetDropLimitActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetDropLimitActivityRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetExtractReforgeActivityReq)]
public class HandlerGetExtractReforgeActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetExtractReforgeActivityRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetFarmActivityDataReq)]
public class HandlerGetFarmActivityDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetFarmActivityDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetGardenScheduleReq)]
public class HandlerGetGardenScheduleReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetGardenScheduleRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetInviteActivityInviteeDataReq)]
public class HandlerGetInviteActivityInviteeDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetInviteActivityInviteeDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetInviteActivityInviterDataReq)]
public class HandlerGetInviteActivityInviterDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetInviteActivityInviterDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetLoginActivityReq)]
public class HandlerGetLoginActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetLoginActivityRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetMosaicActivityReq)]
public class HandlerGetMosaicActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetMosaicActivityRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetNewbieActivityReq)]
public class HandlerGetNewbieActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetNewbieActivityRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetNinjaActivityReq)]
public class HandlerGetNinjaActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetNinjaActivityRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Activity;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Activity;
[Opcode(CmdIds.GetThemeWantedReq)]
public class HandlerGetThemeWantedReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetThemeWantedRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Adventure;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Adventure;
[Opcode(CmdIds.GetAdventureGroupReq)]
public class HandlerGetAdventureGroupReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetAdventureGroupRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Adventure;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Adventure;
[Opcode(CmdIds.GetAdventureStorySweepInfoReq)]
public class HandlerGetAdventureStorySweepInfoReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetAdventureStorySweepInfoRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Adventure;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Adventure;
[Opcode(CmdIds.GetConsignedOrderDataReq)]
public class HandlerGetConsignedOrderDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetConsignedOrderDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Armada;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Armada;
[Opcode(CmdIds.GetArmadaActivityListReq)]
public class HandlerGetArmadaActivityListReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetArmadaActivityListRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Armada;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Armada;
[Opcode(CmdIds.GetArmadaDataReq)]
public class HandlerGetArmadaDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetArmadaDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Armada;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Armada;
[Opcode(CmdIds.GetArmadaStageScoreActivityReq)]
public class HandlerGetArmadaStageScoreActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetArmadaStageScoreActivityRsp());
}
}

View File

@@ -0,0 +1,14 @@
using KianaBH.GameServer.Server.Packet.Send.Auth;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Auth;
[Opcode(CmdIds.GetAuthkeyReq)]
public class HandlerGetAuthkeyReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = GetAuthkeyReq.Parser.ParseFrom(data);
await connection.SendPacket(new PacketGetAuthkeyRsp(req.AuthAppid));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Avatar;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Avatar;
[Opcode(CmdIds.AddCustomAvatarTeamReq)]
public class HandlerAddCustomAvatarTeamReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketAddCustomAvatarTeamRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Avatar;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Avatar;
[Opcode(CmdIds.AvatarSubSkillLevelUpReq)]
public class HandlerAvatarSubSkillLevelUpReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketAvatarSubSkillLevelUpRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Avatar;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Avatar;
[Opcode(CmdIds.DelCustomAvatarTeamReq)]
public class HandlerDelCustomAvatarTeamReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketDelCustomAvatarTeamRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Avatar;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Avatar;
[Opcode(CmdIds.DressEquipmentReq)]
public class HandlerDressEquipmentReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketDressEquipmentRsp());
}
}

View File

@@ -0,0 +1,25 @@
using KianaBH.Database.Avatar;
using KianaBH.GameServer.Game.Player;
using KianaBH.GameServer.Server.Packet.Send.Avatar;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Avatar;
[Opcode(CmdIds.GetAvatarDataReq)]
public class HandlerGetAvatarDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = GetAvatarDataReq.Parser.ParseFrom(data);
var player = connection.Player!;
var avatars = req.AvatarIdList.Any(id => id != 0)
? req.AvatarIdList
.Select(id => player.AvatarManager!.GetAvatar(id))
.Where(avatar => avatar != null)
.ToList()!
: player.AvatarManager?.AvatarData?.Avatars?.ToList();
bool isAll = !req.AvatarIdList.Any(id => id != 0);
await connection.SendPacket(new PacketGetAvatarDataRsp(avatars!, isAll));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Avatar;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Avatar;
[Opcode(CmdIds.GetAvatarMissionActivityReq)]
public class HandlerGetAvatarMissionActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetAvatarMissionActivityRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Avatar;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Avatar;
[Opcode(CmdIds.GetAvatarRollDataReq)]
public class HandlerGetAvatarRollDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetAvatarRollDataRsp(connection.Player!));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Avatar;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Avatar;
[Opcode(CmdIds.GetAvatarTeamDataReq)]
public class HandlerGetAvatarTeamDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetAvatarTeamDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Avatar;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Avatar;
[Opcode(CmdIds.UpdateCustomAvatarTeamReq)]
public class HandlerUpdateCustomAvatarTeamReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketUpdateCustomAvatarTeamRsp());
}
}

View File

@@ -0,0 +1,14 @@
using KianaBH.GameServer.Server.Packet.Send.Battle;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Battle;
[Opcode(CmdIds.GetBuffEffectReq)]
public class HandlerGetBuffEffectReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = GetBuffEffectReq.Parser.ParseFrom(data);
await connection.SendPacket(new PacketGetBuffEffectRsp(req.EffectIdList));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.BattlePass;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.BattlePass;
[Opcode(CmdIds.GetBattlePassMissionPanelReq)]
public class HandlerGetBattlePassMissionPanelReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetBattlePassMissionPanelRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Challenge;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Challenge;
[Opcode(CmdIds.GetChallengeStepCompensationInfoReq)]
public class HandlerGetChallengeStepCompensationInfoReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetChallengeStepCompensationInfoRsp());
}
}

View File

@@ -0,0 +1,14 @@
using KianaBH.GameServer.Server.Packet.Send.Chapter;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Chapter;
[Opcode(CmdIds.ChapterArkGetDataReq)]
public class HandlerChapterArkGetDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = ChapterArkGetDataReq.Parser.ParseFrom(data);
await connection.SendPacket(new PacketChapterArkGetDataRsp(req.ChapterId));
}
}

View File

@@ -0,0 +1,14 @@
using KianaBH.GameServer.Server.Packet.Send.Chapter;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Chapter;
[Opcode(CmdIds.ChapterBwWorldGetDataReq)]
public class HandlerChapterBwWorldGetDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = ChapterBwWorldGetDataReq.Parser.ParseFrom(data);
await connection.SendPacket(new PacketChapterBwWorldGetDataRsp(req.ChapterId));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Chapter;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Chapter;
[Opcode(CmdIds.ChapterGroupGetDataReq)]
public class HandlerChapterGroupGetDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketChapterGroupGetDataRsp());
}
}

View File

@@ -0,0 +1,14 @@
using KianaBH.GameServer.Server.Packet.Send.Chapter;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Chapter;
[Opcode(CmdIds.ChapterKnightRichManGetDataReq)]
public class HandlerChapterKnightRichManGetDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = ChapterKnightRichManGetDataReq.Parser.ParseFrom(data);
await connection.SendPacket(new PacketChapterKnightRichManGetDataRsp(req.RichManId));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Chapter;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Chapter;
[Opcode(CmdIds.GetEliteChapterCompensationInfoReq)]
public class HandlerGetEliteChapterCompensationInfoReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetEliteChapterCompensationInfoRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Chat;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Chat;
[Opcode(CmdIds.ChatworldBeastGetActivityReq)]
public class HandlerChatworldBeastGetActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketChatworldBeastGetActivityRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Chat;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Chat;
[Opcode(CmdIds.ChatworldGetActivityScheduleReq)]
public class HandlerChatworldGetActivityScheduleReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketChatworldGetActivityScheduleRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Chat;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Chat;
[Opcode(CmdIds.ChatworldGetPrayInfoReq)]
public class HandlerChatworldGetPrayInfoReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketChatworldGetPrayInfoRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Chat;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Chat;
[Opcode(CmdIds.EnterWorldChatroomReq)]
public class HandlerEnterWorldChatroomReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketEnterWorldChatroomRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Chat;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Chat;
[Opcode(CmdIds.GetChatgroupListReq)]
public class HandlerGetChatgroupListReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetChatgroupListRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Client;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Client;
[Opcode(CmdIds.ClientReportReq)]
public class HandlerClientReportReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketClientReportRsp());
}
}

View File

@@ -0,0 +1,15 @@
using KianaBH.GameServer.Server.Packet.Send.Client;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Client;
[Opcode(CmdIds.GetClientDataReq)]
public class HandlerGetClientDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = GetClientDataReq.Parser.ParseFrom(data);
await connection.SendPacket(new PacketGetClientDataRsp(req.Id,req.Type, connection.Player!));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Client;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Client;
[Opcode(CmdIds.GetClientMailDataReq)]
public class HandlerGetClientMailDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetClientMailDataRsp());
}
}

View File

@@ -0,0 +1,14 @@
using KianaBH.GameServer.Server.Packet.Send.Client;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Client;
[Opcode(CmdIds.GetClientSettingReq)]
public class HandlerGetClientSettingReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = GetClientSettingReq.Parser.ParseFrom(data);
await connection.SendPacket(new PacketGetClientSettingRsp(req.ClientSettingType));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Client;
[Opcode(CmdIds.KeepAliveNotify)]
public class HandlerKeepAliveNotify : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.Player!.OnHeartBeat();
await connection.SendPacket(CmdIds.KeepAliveNotify);
}
}

View File

@@ -0,0 +1,14 @@
using KianaBH.GameServer.Server.Packet.Send.Client;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Client;
[Opcode(CmdIds.ReportClientDataVersionReq)]
public class HandlerReportClientDataVersionReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = ReportClientDataVersionReq.Parser.ParseFrom(data);
await connection.SendPacket(new PacketReportClientDataVersionRsp(req.Version));
}
}

View File

@@ -0,0 +1,27 @@
using KianaBH.GameServer.Game.Player;
using KianaBH.GameServer.Server.Packet.Send.Client;
using KianaBH.Proto;
using KianaBH.Database.Client;
namespace KianaBH.GameServer.Server.Packet.Recv.Client;
[Opcode(CmdIds.SetClientDataReq)]
public class HandlerSetClientDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = SetClientDataReq.Parser.ParseFrom(data);
PlayerInstance player = connection.Player!;
var clientData = player.ClientData!.Clients.FirstOrDefault(c => c.Id == req.ClientData.Id && c.Type == req.ClientData.Type);
if (clientData == null)
{
player.ClientData.Clients.Add(new ClientDBData
{
Id = req.ClientData.Id,
Type = req.ClientData.Type,
Data = req.ClientData.Data.ToByteArray(),
});
}
await connection.SendPacket(new PacketSetClientDataRsp(req.ClientData.Id,req.ClientData.Type));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Collection;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Collection;
[Opcode(CmdIds.GetCollectionListReq)]
public class HandlerGetCollectionListReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetCollectionListRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.DLC;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.DLC;
[Opcode(CmdIds.GetDLCAvatarReq)]
public class HandlerGetDLCAvatarReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetDLCAvatarRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.DLC;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.DLC;
[Opcode(CmdIds.GetDLCReq)]
public class HandlerGetDLCReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetDLCRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.DLC;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.DLC;
[Opcode(CmdIds.GetDLCTowerReq)]
public class HandlerGetDLCTowerReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetDLCTowerRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dorm;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dorm;
[Opcode(CmdIds.GetDormDataReq)]
public class HandlerGetDormDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetDormDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetPlotListReq)]
public class HandlerGetPlotListReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetPlotListRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetPrivilegeInfoReq)]
public class HandlerGetPrivilegeInfoReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetPrivilegeInfoRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetProductListReq)]
public class HandlerGetProductListReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetProductListRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetProductRecommendListReq)]
public class HandlerGetProductRecommendListReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetProductRecommendListRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetRaffleActivityReq)]
public class HandlerGetRaffleActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetRaffleActivityRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetRankScheduleDataReq)]
public class HandlerGetRankScheduleDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetRankScheduleDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetRecommendFriendListReq)]
public class HandlerGetRecommendFriendListReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetRecommendFriendListRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetRecommendGoodsReq)]
public class HandlerGetRecommendGoodsReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetRecommendGoodsRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetRewardLineActivityReq)]
public class HandlerGetRewardLineActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetRewardLineActivityRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetRoomDataReq)]
public class HandlerGetRoomDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetRoomDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetRpgTaleReq)]
public class HandlerGetRpgTaleReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetRpgTaleRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetScratchTicketReq)]
public class HandlerGetScratchTicketReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetScratchTicketRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetSecurityPasswordReq)]
public class HandlerGetSecurityPasswordReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetSecurityPasswordRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetShopListReq)]
public class HandlerGetShopListReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetShopListRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetShoppingMallListReq)]
public class HandlerGetShoppingMallListReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetShoppingMallListRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetSupportActivityReq)]
public class HandlerGetSupportActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetSupportActivityRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetSurveyDataReq)]
public class HandlerGetSurveyDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetSurveyDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetTowerRaidActivityReq)]
public class HandlerGetTowerRaidActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetTowerRaidActivityRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetTradingCardActivityReq)]
public class HandlerGetTradingCardActivityReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetTradingCardActivityRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetTrialAvatarReq)]
public class HandlerGetTrialAvatarReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetTrialAvatarRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetVipRewardDataReq)]
public class HandlerGetVipRewardDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetVipRewardDataRsp());
}
}

View File

@@ -0,0 +1,14 @@
using KianaBH.GameServer.Server.Packet.Send.Dummy;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Dummy;
[Opcode(CmdIds.GetVirtualAvatarGroupDetailReq)]
public class HandlerGetVirtualAvatarGroupDetailReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = GetVirtualAvatarGroupDetailReq.Parser.ParseFrom(data);
await connection.SendPacket(new PacketGetVirtualAvatarGroupDetailRsp(req.GroupId));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Elf;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Elf;
[Opcode(CmdIds.GetElfDataReq)]
public class HandlerGetElfDataReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetElfDataRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Endless;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Endless;
[Opcode(CmdIds.GetEndlessStatusReq)]
public class HandlerGetEndlessStatusReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetEndlessStatusRsp());
}
}

View File

@@ -0,0 +1,14 @@
using KianaBH.GameServer.Server.Packet.Send.Event;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Event;
[Opcode(CmdIds.GetGalInteractTriggerEventReq)]
public class HandlerGetGalInteractTriggerEventReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = GetGalInteractTriggerEventReq.Parser.ParseFrom(data);
await connection.SendPacket(new PacketGetGalInteractTriggerEventRsp(req.AvatarId));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.ExBoss;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.ExBoss;
[Opcode(CmdIds.ExBossStageBeginReq)]
public class HandlerExBossStageBeginReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketExBossStageBeginRsp());
}
}

View File

@@ -0,0 +1,14 @@
using KianaBH.GameServer.Server.Packet.Send.ExBoss;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.ExBoss;
[Opcode(CmdIds.ExBossStageEndReq)]
public class HandlerExBossStageEndReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = ExBossStageEndReq.Parser.ParseFrom(data);
await connection.SendPacket(new PacketExBossStageEndRsp(req.BossId,req.EndStatus));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.ExBoss;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.ExBoss;
[Opcode(CmdIds.GetExBossInfoReq)]
public class HandlerGetExBossInfoReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetExBossInfoRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.ExBoss;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.ExBoss;
[Opcode(CmdIds.GetExBossRankReq)]
public class HandlerGetExBossRankReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetExBossRankRsp(connection.Player!));
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.ExBoss;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.ExBoss;
[Opcode(CmdIds.GetExBossScheduleReq)]
public class HandlerGetExBossScheduleReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetExBossScheduleRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Exchange;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Exchange;
[Opcode(CmdIds.GetCurrencyExchangeInfoReq)]
public class HandlerGetCurrencyExchangeInfoReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetCurrencyExchangeInfoRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Friend;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Friend;
[Opcode(CmdIds.GetAskAddFriendListReq)]
public class HandlerGetAskAddFriendListReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetAskAddFriendListRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Friend;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Friend;
[Opcode(CmdIds.GetFriendListReq)]
public class HandlerGetFriendListReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetFriendListRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Friend;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Friend;
[Opcode(CmdIds.GetFriendRemarkListReq)]
public class HandlerGetFriendRemarkListReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetFriendRemarkListRsp());
}
}

View File

@@ -0,0 +1,13 @@
using KianaBH.GameServer.Server.Packet.Send.Gacha;
using KianaBH.Proto;
namespace KianaBH.GameServer.Server.Packet.Recv.Gacha;
[Opcode(CmdIds.GetGachaDisplayReq)]
public class HandlerGetGachaDisplayReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
await connection.SendPacket(new PacketGetGachaDisplayRsp());
}
}

Some files were not shown because too many files have changed in this diff Show More