Upload from upload_mods.ps1
This commit is contained in:
153
Scripts/Network/NPCs/NetPackageForceTeleportRebirth.cs
Normal file
153
Scripts/Network/NPCs/NetPackageForceTeleportRebirth.cs
Normal file
@@ -0,0 +1,153 @@
|
||||
public class NetPackageForceTeleportRebirth : NetPackage
|
||||
{
|
||||
private int entityToUpdate;
|
||||
|
||||
public NetPackageForceTeleportRebirth Setup(int _entityToUpdate)
|
||||
{
|
||||
this.entityToUpdate = _entityToUpdate;
|
||||
return this;
|
||||
}
|
||||
|
||||
public override void read(PooledBinaryReader _br)
|
||||
{
|
||||
this.entityToUpdate = _br.ReadInt32();
|
||||
}
|
||||
|
||||
public override void write(PooledBinaryWriter _bw)
|
||||
{
|
||||
base.write(_bw);
|
||||
_bw.Write(this.entityToUpdate);
|
||||
}
|
||||
|
||||
public override int GetLength()
|
||||
{
|
||||
return 4;
|
||||
}
|
||||
|
||||
public override void ProcessPackage(World _world, GameManager _callbacks)
|
||||
{
|
||||
//Log.Out("NetPackageForceTeleportRebirth-ProcessPackage START");
|
||||
if (_world == null)
|
||||
{
|
||||
//Log.Out("NetPackageForceTeleportRebirth-ProcessPackage 1");
|
||||
return;
|
||||
}
|
||||
|
||||
/*if (!_world.IsRemote())
|
||||
{
|
||||
//Log.Out("NetPackageForceTeleportRebirth-ProcessPackage 2");
|
||||
return;
|
||||
}*/
|
||||
|
||||
Entity myEntity = _world.GetEntity(this.entityToUpdate);
|
||||
if (myEntity != null)
|
||||
{
|
||||
//Log.Out("NetPackageForceTeleportRebirth-ProcessPackage 3");
|
||||
if (myEntity is EntityNPCRebirth)
|
||||
{
|
||||
//Log.Out("NetPackageForceTeleportRebirth-ProcessPackage 4");
|
||||
EntityNPCRebirth follower = (EntityNPCRebirth)myEntity;
|
||||
|
||||
if (follower.LeaderUtils.Owner)
|
||||
{
|
||||
//Log.Out("NetPackageForceTeleportRebirth-ProcessPackage 5");
|
||||
|
||||
//Log.Out("NetPackageForceTeleportRebirth-ProcessPackage 6");
|
||||
|
||||
bool hasFireBuff = follower.Buffs.HasBuff("buffBurningFlamingArrow") ||
|
||||
follower.Buffs.HasBuff("buffBurningMolotov") ||
|
||||
follower.Buffs.HasBuff("buffBurningEnvironmentHack") ||
|
||||
follower.Buffs.HasBuff("buffBurningEnvironment") ||
|
||||
follower.Buffs.HasBuff("buffBurningElement") ||
|
||||
follower.Buffs.HasBuff("buffIsOnFire") ||
|
||||
follower.Buffs.HasBuff("FuriousRamsayFireZombieAoEDamage") ||
|
||||
follower.Buffs.HasBuff("FuriousRamsayFireZombieAoEDamageDisplay") ||
|
||||
follower.Buffs.HasBuff("FuriousRamsayAddBurningEnemyBoss") ||
|
||||
follower.Buffs.HasBuff("FuriousRamsayBurningTrapDamage");
|
||||
// On Fire
|
||||
if (hasFireBuff && follower.Buffs.GetCustomVar("CurrentOrder") == (int)EntityUtilities.Orders.Follow)
|
||||
{
|
||||
ItemValue itemBoiledWater = ItemClass.GetItem("drinkJarBoiledWater", false);
|
||||
ItemClass itemClassBoiledWater = itemBoiledWater.ItemClass;
|
||||
int itemCountBoiledWater = follower.LeaderUtils.Owner.bag.GetItemCount(itemBoiledWater, -1, -1, false);
|
||||
int itemCount2BoiledWater = follower.LeaderUtils.Owner.inventory.GetItemCount(itemBoiledWater, false, -1, -1);
|
||||
if (itemClassBoiledWater != null)
|
||||
{
|
||||
itemCountBoiledWater = follower.LeaderUtils.Owner.bag.GetItemCount(itemBoiledWater, -1, -1, false);
|
||||
itemCount2BoiledWater = follower.LeaderUtils.Owner.inventory.GetItemCount(itemBoiledWater, false, -1, -1);
|
||||
}
|
||||
|
||||
ItemValue itemDistilledWater = ItemClass.GetItem("drinkJarPureMineralWater", false);
|
||||
ItemClass itemClassDistilledWater = itemDistilledWater.ItemClass;
|
||||
int itemCountDistilledWater = follower.LeaderUtils.Owner.bag.GetItemCount(itemDistilledWater, -1, -1, false);
|
||||
int itemCount2DistilledWater = follower.LeaderUtils.Owner.inventory.GetItemCount(itemDistilledWater, false, -1, -1);
|
||||
if (itemClassDistilledWater != null)
|
||||
{
|
||||
itemCountDistilledWater = follower.LeaderUtils.Owner.bag.GetItemCount(itemDistilledWater, -1, -1, false);
|
||||
itemCount2DistilledWater = follower.LeaderUtils.Owner.inventory.GetItemCount(itemDistilledWater, false, -1, -1);
|
||||
}
|
||||
|
||||
if ((itemCountDistilledWater + itemCount2DistilledWater) > 0)
|
||||
{
|
||||
if (itemCount2DistilledWater > 0)
|
||||
{
|
||||
follower.LeaderUtils.Owner.inventory.DecItem(itemDistilledWater, 1, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
follower.LeaderUtils.Owner.bag.DecItem(itemDistilledWater, 1, false);
|
||||
}
|
||||
//LocalPlayerUI.GetUIForPlayer(entityPlayer).xui.CollectedItemList.RemoveItemStack(new ItemStack(itemDistilledWater, 1));
|
||||
follower.Buffs.AddBuff("buffExtinguishFire");
|
||||
follower.Buffs.RemoveBuff("buffBurningFlamingArrow");
|
||||
follower.Buffs.RemoveBuff("buffBurningMolotov");
|
||||
follower.Buffs.RemoveBuff("buffBurningEnvironmentHack");
|
||||
follower.Buffs.RemoveBuff("buffBurningEnvironment");
|
||||
follower.Buffs.RemoveBuff("buffBurningElement");
|
||||
follower.Buffs.RemoveBuff("buffIsOnFire");
|
||||
follower.Buffs.RemoveBuff("FuriousRamsayFireZombieAoEDamage");
|
||||
follower.Buffs.RemoveBuff("FuriousRamsayFireZombieAoEDamageDisplay");
|
||||
follower.Buffs.RemoveBuff("FuriousRamsayAddBurningEnemyBoss");
|
||||
follower.Buffs.RemoveBuff("FuriousRamsayBurningTrapDamage");
|
||||
}
|
||||
else
|
||||
{
|
||||
if ((itemCountBoiledWater + itemCount2BoiledWater) > 0)
|
||||
{
|
||||
if (itemCount2BoiledWater > 0)
|
||||
{
|
||||
follower.LeaderUtils.Owner.inventory.DecItem(itemBoiledWater, 1, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
follower.LeaderUtils.Owner.bag.DecItem(itemBoiledWater, 1, false);
|
||||
}
|
||||
//LocalPlayerUI.GetUIForPlayer(entityPlayer).xui.CollectedItemList.RemoveItemStack(new ItemStack(itemBoiledWater, 1));
|
||||
follower.Buffs.AddBuff("buffExtinguishFire");
|
||||
follower.Buffs.RemoveBuff("buffBurningFlamingArrow");
|
||||
follower.Buffs.RemoveBuff("buffBurningMolotov");
|
||||
follower.Buffs.RemoveBuff("buffBurningEnvironmentHack");
|
||||
follower.Buffs.RemoveBuff("buffBurningEnvironment");
|
||||
follower.Buffs.RemoveBuff("buffBurningElement");
|
||||
follower.Buffs.RemoveBuff("buffIsOnFire");
|
||||
follower.Buffs.RemoveBuff("FuriousRamsayFireZombieAoEDamage");
|
||||
follower.Buffs.RemoveBuff("FuriousRamsayFireZombieAoEDamageDisplay");
|
||||
follower.Buffs.RemoveBuff("FuriousRamsayAddBurningEnemyBoss");
|
||||
follower.Buffs.RemoveBuff("FuriousRamsayBurningTrapDamage");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
follower.Buffs.SetCustomVar("$FR_NPC_ForceTeleport", 1f);
|
||||
follower.Buffs.AddBuff("FuriousRamsayStandStill");
|
||||
follower.TeleportToPlayer(follower.LeaderUtils.Owner, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Log.Out("NetPackageForceTeleportRebirth-ProcessPackage CAN'T FIND THE ENTITY");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user