Upload from upload_mods.ps1
This commit is contained in:
68
Scripts/Network/NetPackageQuickStack.cs
Normal file
68
Scripts/Network/NetPackageQuickStack.cs
Normal file
@@ -0,0 +1,68 @@
|
||||
using static EntityDrone;
|
||||
using System.Collections.Generic;
|
||||
|
||||
public class NetPackageQuickStack : NetPackage
|
||||
{
|
||||
private int playerID;
|
||||
private bool mine;
|
||||
public List<Vector3i> tileList;
|
||||
|
||||
|
||||
public NetPackageQuickStack Setup(int playerID,
|
||||
bool mine
|
||||
)
|
||||
{
|
||||
this.playerID = playerID;
|
||||
this.mine = mine;
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
public override void read(PooledBinaryReader _br)
|
||||
{
|
||||
this.playerID = _br.ReadInt32();
|
||||
this.mine = _br.ReadBoolean();
|
||||
}
|
||||
|
||||
public override void write(PooledBinaryWriter _bw)
|
||||
{
|
||||
base.write(_bw);
|
||||
_bw.Write(this.playerID);
|
||||
_bw.Write(this.mine);
|
||||
}
|
||||
|
||||
public override int GetLength()
|
||||
{
|
||||
return 3;
|
||||
}
|
||||
|
||||
public override void ProcessPackage(World _world, GameManager _callbacks)
|
||||
{
|
||||
//Log.Out("NetPackageQuickStack-ProcessPackage START");
|
||||
if (_world == null)
|
||||
{
|
||||
//Log.Out("NetPackageQuickStack-ProcessPackage 1");
|
||||
return;
|
||||
}
|
||||
|
||||
if (GameManager.Instance.World.GetEntity(this.playerID) is EntityPlayer player)
|
||||
{
|
||||
//Log.Out("NetPackageQuickStack-ProcessPackage 1");
|
||||
List<TileEntity> tileEntities = RebirthUtilities.GetTileEntities(player, RebirthVariables.quickStackDistance, true);
|
||||
|
||||
tileList = new List<Vector3i>();
|
||||
|
||||
foreach (var tileEntity in tileEntities)
|
||||
{
|
||||
if (GameManager.Instance.lockedTileEntities.ContainsKey((ITileEntity)tileEntity))
|
||||
{
|
||||
//Log.Out("RebirthUtilities-QuickStackOnClick IS LOCKED: " + tileEntity.ToWorldPos());
|
||||
tileList.Add(tileEntity.ToWorldPos());
|
||||
}
|
||||
}
|
||||
|
||||
SingletonMonoBehaviour<ConnectionManager>.Instance.SendPackage((NetPackage)NetPackageManager.GetPackage<NetPackageQuickstackLockedTiles>().Setup(this.playerID, this.mine, this.tileList), _attachedToEntityId: this.playerID);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user