mirror of
https://github.com/MikuLeaks/KianaBH3.git
synced 2026-03-24 07:12:22 +01:00
Init enter game
This commit is contained in:
4285
GameServer/Server/Packet/Send/Dummy/PacketGetPlotListRsp.cs
Normal file
4285
GameServer/Server/Packet/Send/Dummy/PacketGetPlotListRsp.cs
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,97 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetPrivilegeInfoRsp : BasePacket
|
||||
{
|
||||
public PacketGetPrivilegeInfoRsp() : base(CmdIds.GetPrivilegeInfoRsp)
|
||||
{
|
||||
var proto = new GetPrivilegeInfoRsp
|
||||
{
|
||||
PrivilegeList =
|
||||
{
|
||||
new PrivilegeInfo
|
||||
{
|
||||
ExpireTime = 1734001367,
|
||||
PrivilegeId = 6,
|
||||
RightInfoList =
|
||||
{
|
||||
new PrivilegeRightInfo
|
||||
{
|
||||
MaxUseTimes = 10,
|
||||
NextAutoRefreshTime = 1730145600,
|
||||
RightId = 4,
|
||||
Type = 1
|
||||
}
|
||||
}
|
||||
},
|
||||
new PrivilegeInfo
|
||||
{
|
||||
ExpireTime = 1668139199,
|
||||
PrivilegeId = 19,
|
||||
RightInfoList =
|
||||
{
|
||||
new PrivilegeRightInfo
|
||||
{
|
||||
MaxUseTimes = 10,
|
||||
NextAutoRefreshTime = 1730145600,
|
||||
RightId = 17,
|
||||
TotalUsedTimes = 10,
|
||||
Type = 4
|
||||
}
|
||||
}
|
||||
},
|
||||
new PrivilegeInfo
|
||||
{
|
||||
ExpireTime = 1685678400,
|
||||
PrivilegeId = 23,
|
||||
RightInfoList =
|
||||
{
|
||||
new PrivilegeRightInfo
|
||||
{
|
||||
MaxUseTimes = 10,
|
||||
NextAutoRefreshTime = 1730145600,
|
||||
RightId = 21,
|
||||
TotalUsedTimes = 10,
|
||||
Type = 4
|
||||
}
|
||||
}
|
||||
},
|
||||
new PrivilegeInfo
|
||||
{
|
||||
ExpireTime = 1700798399,
|
||||
PrivilegeId = 25,
|
||||
RightInfoList =
|
||||
{
|
||||
new PrivilegeRightInfo
|
||||
{
|
||||
MaxUseTimes = 10,
|
||||
NextAutoRefreshTime = 1730145600,
|
||||
RightId = 23,
|
||||
TotalUsedTimes = 10,
|
||||
Type = 4
|
||||
}
|
||||
}
|
||||
},
|
||||
new PrivilegeInfo
|
||||
{
|
||||
ExpireTime = 1731643200,
|
||||
PrivilegeId = 34,
|
||||
RightInfoList =
|
||||
{
|
||||
new PrivilegeRightInfo
|
||||
{
|
||||
MaxUseTimes = 10,
|
||||
NextAutoRefreshTime = 1730145600,
|
||||
RightId = 32,
|
||||
Type = 4
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
using KianaBH.Util.Extensions;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetProductListRsp : BasePacket
|
||||
{
|
||||
public PacketGetProductListRsp() : base(CmdIds.GetProductListRsp)
|
||||
{
|
||||
var time = (uint)Extensions.GetUnixSec();
|
||||
|
||||
var proto = new GetProductListRsp
|
||||
{
|
||||
NextRandomBoxProductRefreshTime = time + 3600 * 24,
|
||||
NextLimitProductRefreshTime = time + 3600 * 24
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetProductRecommendListRsp : BasePacket
|
||||
{
|
||||
public PacketGetProductRecommendListRsp() : base(CmdIds.GetProductRecommendListRsp)
|
||||
{
|
||||
var proto = new GetProductRecommendListRsp
|
||||
{
|
||||
RecommendList =
|
||||
{
|
||||
16301720
|
||||
}
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetRaffleActivityRsp : BasePacket
|
||||
{
|
||||
public PacketGetRaffleActivityRsp() : base(CmdIds.GetRaffleActivityRsp)
|
||||
{
|
||||
var proto = new GetRaffleActivityRsp
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetRankScheduleDataRsp : BasePacket
|
||||
{
|
||||
public PacketGetRankScheduleDataRsp() : base(CmdIds.GetRankScheduleDataRsp)
|
||||
{
|
||||
var proto = new GetRankScheduleDataRsp
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetRecommendFriendListRsp : BasePacket
|
||||
{
|
||||
public PacketGetRecommendFriendListRsp() : base(CmdIds.GetRecommendFriendListRsp)
|
||||
{
|
||||
var proto = new GetRecommendFriendListRsp
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetRecommendGoodsRsp : BasePacket
|
||||
{
|
||||
public PacketGetRecommendGoodsRsp() : base(CmdIds.GetRecommendGoodsRsp)
|
||||
{
|
||||
var proto = new GetRecommendGoodsRsp
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetRewardLineActivityRsp : BasePacket
|
||||
{
|
||||
public PacketGetRewardLineActivityRsp() : base(CmdIds.GetRewardLineActivityRsp)
|
||||
{
|
||||
// TODO: Hardcoded
|
||||
|
||||
var proto = new GetRewardLineActivityRsp
|
||||
{
|
||||
RewardLineActivityList =
|
||||
{
|
||||
Enumerable.Range(10, 4) // 10<31>13
|
||||
.Concat([14, 15, 16, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39])
|
||||
.Concat(Enumerable.Range(45, 18)) // 45<34>62
|
||||
.Concat([64, 65, 66, 67, 68, 69, 70, 71, 72])
|
||||
.Select(id => new RewardLineActivity { Id = (uint)id })
|
||||
.ToList()
|
||||
}
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
17
GameServer/Server/Packet/Send/Dummy/PacketGetRoomDataRsp.cs
Normal file
17
GameServer/Server/Packet/Send/Dummy/PacketGetRoomDataRsp.cs
Normal file
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetRoomDataRsp : BasePacket
|
||||
{
|
||||
public PacketGetRoomDataRsp() : base(CmdIds.GetRoomDataRsp)
|
||||
{
|
||||
var proto = new GetRoomDataRsp
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
17
GameServer/Server/Packet/Send/Dummy/PacketGetRpgTaleRsp.cs
Normal file
17
GameServer/Server/Packet/Send/Dummy/PacketGetRpgTaleRsp.cs
Normal file
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetRpgTaleRsp : BasePacket
|
||||
{
|
||||
public PacketGetRpgTaleRsp() : base(CmdIds.GetRpgTaleRsp)
|
||||
{
|
||||
var proto = new GetRpgTaleRsp
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetScratchTicketRsp : BasePacket
|
||||
{
|
||||
public PacketGetScratchTicketRsp() : base(CmdIds.GetScratchTicketRsp)
|
||||
{
|
||||
var proto = new GetScratchTicketRsp
|
||||
{
|
||||
Retcode = GetScratchTicketRsp.Types.Retcode.ActivityNotOpen,
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetSecurityPasswordRsp : BasePacket
|
||||
{
|
||||
public PacketGetSecurityPasswordRsp() : base(CmdIds.GetSecurityPasswordRsp)
|
||||
{
|
||||
var proto = new GetSecurityPasswordRsp
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
17
GameServer/Server/Packet/Send/Dummy/PacketGetShopListRsp.cs
Normal file
17
GameServer/Server/Packet/Send/Dummy/PacketGetShopListRsp.cs
Normal file
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetShopListRsp : BasePacket
|
||||
{
|
||||
public PacketGetShopListRsp() : base(CmdIds.GetShopListRsp)
|
||||
{
|
||||
var proto = new GetShopListRsp
|
||||
{
|
||||
IsAll = true,
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetShoppingMallListRsp : BasePacket
|
||||
{
|
||||
public PacketGetShoppingMallListRsp() : base(CmdIds.GetShoppingMallListRsp)
|
||||
{
|
||||
var proto = new GetShoppingMallListRsp
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetSupportActivityRsp : BasePacket
|
||||
{
|
||||
public PacketGetSupportActivityRsp() : base(CmdIds.GetSupportActivityRsp)
|
||||
{
|
||||
var proto = new GetSupportActivityRsp
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetSurveyDataRsp : BasePacket
|
||||
{
|
||||
public PacketGetSurveyDataRsp() : base(CmdIds.GetSurveyDataRsp)
|
||||
{
|
||||
var proto = new GetSurveyDataRsp
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetTowerRaidActivityRsp : BasePacket
|
||||
{
|
||||
public PacketGetTowerRaidActivityRsp() : base(CmdIds.GetTowerRaidActivityRsp)
|
||||
{
|
||||
var proto = new GetTowerRaidActivityRsp
|
||||
{
|
||||
Retcode = GetTowerRaidActivityRsp.Types.Retcode.NotOpen, // set to NotOpen to prevent null reference error pop up
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetTradingCardActivityRsp : BasePacket
|
||||
{
|
||||
public PacketGetTradingCardActivityRsp() : base(CmdIds.GetTradingCardActivityRsp)
|
||||
{
|
||||
var proto = new GetTradingCardActivityRsp
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetTrialAvatarRsp : BasePacket
|
||||
{
|
||||
public PacketGetTrialAvatarRsp() : base(CmdIds.GetTrialAvatarRsp)
|
||||
{
|
||||
var proto = new GetTrialAvatarRsp
|
||||
{
|
||||
IsAllUpdate = true,
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
145
GameServer/Server/Packet/Send/Dummy/PacketGetVipRewardDataRsp.cs
Normal file
145
GameServer/Server/Packet/Send/Dummy/PacketGetVipRewardDataRsp.cs
Normal file
@@ -0,0 +1,145 @@
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetVipRewardDataRsp : BasePacket
|
||||
{
|
||||
public PacketGetVipRewardDataRsp() : base(CmdIds.GetVipRewardDataRsp)
|
||||
{
|
||||
// TODO: Hardcoded
|
||||
var proto = new GetVipRewardDataRsp
|
||||
{
|
||||
TotalPayHcoin = 17185,
|
||||
VipRewardList =
|
||||
{
|
||||
new VipReward
|
||||
{
|
||||
IsSpecialShineList = { 1 },
|
||||
PayHcoin = 10,
|
||||
RewardBatch = 1,
|
||||
RewardIdList = { 2101, 2201 },
|
||||
SpecialRewardIdList = { 2101 },
|
||||
TakenRewardIdList = { 2101, 2201, 2251 },
|
||||
VipLevel = 1
|
||||
},
|
||||
new VipReward
|
||||
{
|
||||
IsSpecialShineList = { 1, 1 },
|
||||
PayHcoin = 300,
|
||||
RewardBatch = 1,
|
||||
RewardIdList = { 2002, 2102, 2302 },
|
||||
SpecialRewardIdList = { 2102, 2302 },
|
||||
TakenRewardIdList = { 2002, 2102, 2252, 2302 },
|
||||
VipLevel = 2
|
||||
},
|
||||
new VipReward
|
||||
{
|
||||
IsSpecialShineList = { 1, 1 },
|
||||
PayHcoin = 500,
|
||||
RewardBatch = 1,
|
||||
RewardIdList = { 2103, 2203, 2303 },
|
||||
SpecialRewardIdList = { 2103, 2303 },
|
||||
TakenRewardIdList = { 2103, 2203, 2253, 2303 },
|
||||
VipLevel = 3
|
||||
},
|
||||
new VipReward
|
||||
{
|
||||
IsSpecialShineList = { 1, 1 },
|
||||
PayHcoin = 1000,
|
||||
RewardBatch = 1,
|
||||
RewardIdList = { 2004, 2104, 2304 },
|
||||
SpecialRewardIdList = { 2104, 2304 },
|
||||
TakenRewardIdList = { 2004, 2104, 2254, 2304 },
|
||||
VipLevel = 4
|
||||
},
|
||||
new VipReward
|
||||
{
|
||||
IsSpecialShineList = { 1, 1 },
|
||||
PayHcoin = 2000,
|
||||
RewardBatch = 1,
|
||||
RewardIdList = { 2105, 2205, 2305 },
|
||||
SpecialRewardIdList = { 2105, 2305 },
|
||||
TakenRewardIdList = { 2105, 2205, 2255, 2305 },
|
||||
VipLevel = 5
|
||||
},
|
||||
new VipReward
|
||||
{
|
||||
IsSpecialShineList = { 1, 1 },
|
||||
PayHcoin = 5000,
|
||||
RewardBatch = 1,
|
||||
RewardIdList = { 2006, 2106, 2306 },
|
||||
SpecialRewardIdList = { 2106, 2306 },
|
||||
TakenRewardIdList = { 2006, 2106, 2256, 2306 },
|
||||
VipLevel = 6
|
||||
},
|
||||
new VipReward
|
||||
{
|
||||
IsSpecialShineList = { 1, 1 },
|
||||
PayHcoin = 10000,
|
||||
RewardBatch = 1,
|
||||
RewardIdList = { 2107, 2207, 2257, 2307 },
|
||||
SpecialRewardIdList = { 2107, 2307 },
|
||||
TakenRewardIdList = { 2107, 2207, 2257, 2307 },
|
||||
VipLevel = 7
|
||||
},
|
||||
new VipReward
|
||||
{
|
||||
IsSpecialShineList = { 1, 1 },
|
||||
PayHcoin = 20000,
|
||||
RewardBatch = 1,
|
||||
RewardIdList = { 2108, 2208, 2258, 2308 },
|
||||
SpecialRewardIdList = { 2108, 2308 },
|
||||
VipLevel = 8
|
||||
},
|
||||
new VipReward
|
||||
{
|
||||
IsSpecialShineList = { 1, 1 },
|
||||
PayHcoin = 50000,
|
||||
RewardBatch = 1,
|
||||
RewardIdList = { 2109, 2209, 2309 },
|
||||
SpecialRewardIdList = { 2109, 2309 },
|
||||
VipLevel = 9
|
||||
},
|
||||
new VipReward
|
||||
{
|
||||
IsSpecialShineList = { 1, 1, 1 },
|
||||
PayHcoin = 100000,
|
||||
RewardBatch = 1,
|
||||
RewardIdList = { 2110, 2210, 2310 },
|
||||
SpecialRewardIdList = { 2110, 2310 },
|
||||
VipLevel = 10
|
||||
},
|
||||
new VipReward
|
||||
{
|
||||
IsSpecialShineList = { 1, 1, 1 },
|
||||
PayHcoin = 150000,
|
||||
RewardBatch = 1,
|
||||
RewardIdList = { 2261, 2311 },
|
||||
SpecialRewardIdList = { 2311 },
|
||||
VipLevel = 11
|
||||
},
|
||||
new VipReward
|
||||
{
|
||||
IsSpecialShineList = { 1, 1, 1 },
|
||||
PayHcoin = 200000,
|
||||
RewardBatch = 1,
|
||||
RewardIdList = { 2262, 2312 },
|
||||
SpecialRewardIdList = { 2312 },
|
||||
VipLevel = 12
|
||||
},
|
||||
new VipReward
|
||||
{
|
||||
IsSpecialShineList = { 1 },
|
||||
PayHcoin = 250000,
|
||||
RewardBatch = 1,
|
||||
RewardIdList = { 2263, 2313 },
|
||||
SpecialRewardIdList = { 2313 },
|
||||
VipLevel = 13
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
using System.Security.Cryptography;
|
||||
using KianaBH.KcpSharp;
|
||||
using KianaBH.Proto;
|
||||
|
||||
namespace KianaBH.GameServer.Server.Packet.Send.Dummy;
|
||||
|
||||
public class PacketGetVirtualAvatarGroupDetailRsp : BasePacket
|
||||
{
|
||||
public PacketGetVirtualAvatarGroupDetailRsp(uint GroupId) : base(CmdIds.GetVirtualAvatarGroupDetailRsp)
|
||||
{
|
||||
var proto = new GetVirtualAvatarGroupDetailRsp();
|
||||
|
||||
if (GroupId == 114)
|
||||
{
|
||||
proto.VirtualAvatarGroup = new VirtualAvatarGroup
|
||||
{
|
||||
GroupId = 114,
|
||||
VirtualAvatarList =
|
||||
{
|
||||
new VirtualAvatar { VirtualAvatarId = 300001 },
|
||||
new VirtualAvatar { VirtualAvatarId = 300003 }
|
||||
},
|
||||
VirtualAvatarTeamList = { 300001, 300003 }
|
||||
};
|
||||
}
|
||||
else if (GroupId == 111)
|
||||
{
|
||||
proto.VirtualAvatarGroup = new VirtualAvatarGroup
|
||||
{
|
||||
GroupId = 111,
|
||||
VirtualAvatarList =
|
||||
{
|
||||
new VirtualAvatar { VirtualAvatarId = 300001 }
|
||||
},
|
||||
VirtualAvatarTeamList = { 300001 }
|
||||
};
|
||||
}
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user