コード例 #1
0
 public override void OnBlockPlaced(IWorldAccessor world, BlockPos blockPos, ItemStack byItemStack = null)
 {
     base.OnBlockPlaced(world, blockPos, byItemStack);
     if (byItemStack != null)
     {
         TFCapacitor be = world.BlockAccessor.GetBlockEntity(blockPos) as TFCapacitor;
         be.energyStorage.setEnergy(byItemStack.Attributes.GetInt("energy", 0));
     }
 }
コード例 #2
0
    public override ItemStack OnPickBlock(IWorldAccessor world, BlockPos pos)
    {
        ItemStack   item = new ItemStack(world.BlockAccessor.GetBlock(new AssetLocation("temporalengineering:capacitor-" + FirstCodePart(1) + "-none-none-none-none-none-none")));
        TFCapacitor be   = world.BlockAccessor.GetBlockEntity(pos) as TFCapacitor;

        if (be != null)
        {
            item.Attributes.SetInt("energy", (int)be.energyStorage?.getEnergyStored());
        }
        return(item);
    }
コード例 #3
0
    public override ItemStack[] GetDrops(IWorldAccessor world, BlockPos pos, IPlayer byPlayer, float dropQuantityMultiplier = 1)
    {
        TFCapacitor be   = world.BlockAccessor.GetBlockEntity(pos) as TFCapacitor;
        ItemStack   item = new ItemStack(world.BlockAccessor.GetBlock(new AssetLocation("temporalengineering:capacitor-" + FirstCodePart(1) + "-none-none-none-none-none-none")));

        if (be != null)
        {
            item.Attributes.SetInt("energy", (int)be.energyStorage?.getEnergyStored());
        }
        return(new ItemStack[] { item });
    }