item bag set item lock

This commit is contained in:
翠紅 灯
2025-08-20 22:39:06 +02:00
parent 460bfe527c
commit 69d832d376
2 changed files with 38 additions and 3 deletions

View File

@@ -0,0 +1,34 @@
using Campofinale.Game.Char;
using Campofinale.Game.Inventory;
using Campofinale.Network;
using Campofinale.Protocol;
namespace Campofinale.Packets.Cs
{
public class HandleCsItemBagSetItemLock
{
[Server.Handler(CsMsgId.CsItemBagSetItemLock)]
public static void Handle(Player session, CsMsgId cmdId, Packet packet)
{
CsItemBagSetItemLock req = packet.DecodeBody<CsItemBagSetItemLock>();
foreach (var info in req.LockInfoList)
{
Item item = session.inventoryManager.items.items.Find(i=>i.guid==info.InstId);
if (item != null)
{
item.locked = info.IsLock;
}
}
ScItemBagSetItemLock rsp = new()
{
LockInfoList =
{
req.LockInfoList,
}
};
session.Send(ScMsgId.ScItemBagSetItemLock, rsp);
}
}
}

View File

@@ -13,7 +13,7 @@ class Program
static void Main(string[] args)
{
StartServer(args);
//FakeClientTester();
//FakeClientTester();
}
public static byte[] ConcatenateByteArrays(byte[] array1, byte[] array2)
{
@@ -22,7 +22,7 @@ class Program
private static void FakeClientTester()
{
//
string serverIp = "beyond-cn.hypergryph.com";
string serverIp = "beyond-ric.gryphline.com";
int serverPort = 30000;
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
@@ -32,7 +32,8 @@ class Program
socket.Connect(new IPEndPoint(ipAddress, serverPort));
socket.Send(Packet.EncodePacket((int)CsMsgId.CsLogin,new CsLogin() { ClientVersion="0.5.5",Uid= "", Token= "", Env=EnvType.Prod,PlatformId=ClientPlatformType.Windows,Area=AreaType.Oversea,ClientResVersion="", LoginToken= "" }.ToByteArray()));
socket.Send(Packet.EncodePacket((int)CsMsgId.CsLogin,new CsLogin() { ClientVersion="0.5.5",Uid= "", Token= "", Env=EnvType.Prod,PlatformId=ClientPlatformType.Windows,Area=AreaType.Oversea,ClientResVersion="", LoginToken= "" }.ToByteArray()));
//socket.Send(Packet.EncodePacket((int)CsMsgId.CsFriendListSync, new CsFriendListSync() { }.ToByteArray()));
while (true)
{
byte[] buffer = new byte[3];