mirror of
https://github.com/MikuLeaks/MikuSB.git
synced 2026-06-04 18:53:58 +00:00
refactor manager & add giveall command
- giveall only weapon for now - move all item into SyncPlayer to prevent RspLogin too large
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
using MikuSB.Database.Character;
|
||||
using MikuSB.Database.Inventory;
|
||||
using MikuSB.GameServer.Game.Inventory;
|
||||
using MikuSB.Proto;
|
||||
using MikuSB.TcpSharp;
|
||||
|
||||
@@ -6,7 +8,7 @@ namespace MikuSB.GameServer.Server.Packet.Send.Misc;
|
||||
|
||||
public class PacketNtfCallScript : BasePacket
|
||||
{
|
||||
public PacketNtfCallScript(List<CharacterInfo> Characters) : base(CmdIds.NtfScript)
|
||||
public PacketNtfCallScript(List<CharacterInfo> characters) : base(CmdIds.NtfScript)
|
||||
{
|
||||
var proto = new NtfCallScript
|
||||
{
|
||||
@@ -14,10 +16,55 @@ public class PacketNtfCallScript : BasePacket
|
||||
Arg = "{}",
|
||||
ExtraSync = new NtfSyncPlayer
|
||||
{
|
||||
Items = { Characters.Select(x => x.ToProto()) }
|
||||
Items = { characters.Select(x => x.ToProto()) }
|
||||
}
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
|
||||
public PacketNtfCallScript(List<GameWeaponInfo> weapons) : base(CmdIds.NtfScript)
|
||||
{
|
||||
var proto = new NtfCallScript
|
||||
{
|
||||
Api = "",
|
||||
Arg = "{}",
|
||||
ExtraSync = new NtfSyncPlayer
|
||||
{
|
||||
Items = { weapons.Select(x => x.ToProto()) }
|
||||
}
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
|
||||
public PacketNtfCallScript(List<BaseGameItemInfo> items) : base(CmdIds.NtfScript)
|
||||
{
|
||||
var proto = new NtfCallScript
|
||||
{
|
||||
Api = "",
|
||||
Arg = "{}",
|
||||
ExtraSync = new NtfSyncPlayer
|
||||
{
|
||||
Items = { items.Select(x => x.ToProto()) }
|
||||
}
|
||||
};
|
||||
|
||||
SetData(proto);
|
||||
}
|
||||
|
||||
public PacketNtfCallScript(InventoryData inventory) : base(CmdIds.NtfScript)
|
||||
{
|
||||
var proto = new NtfCallScript
|
||||
{
|
||||
Api = "",
|
||||
Arg = "{}"
|
||||
};
|
||||
|
||||
var extraSync = new NtfSyncPlayer();
|
||||
foreach (var item in inventory.Items.Values) if ((item.TemplateId & 0xFFFF) != 5) extraSync.Items.Add(item.ToProto());
|
||||
foreach (var weapon in inventory.Weapons.Values) extraSync.Items.Add(weapon.ToProto());
|
||||
proto.ExtraSync = extraSync;
|
||||
SetData(proto);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user