001package net.minecraft.block; 002 003import java.util.Iterator; 004import net.minecraft.block.material.Material; 005import net.minecraft.entity.item.EntityItem; 006import net.minecraft.util.MathHelper; 007import net.minecraft.world.World; 008 009public class BlockPressurePlateWeighted extends BlockBasePressurePlate 010{ 011 private final int field_94357_a; 012 013 protected BlockPressurePlateWeighted(int par1, String par2Str, Material par3Material, int par4) 014 { 015 super(par1, par2Str, par3Material); 016 this.field_94357_a = par4; 017 } 018 019 protected int func_94351_d(World par1World, int par2, int par3, int par4) 020 { 021 int l = 0; 022 Iterator iterator = par1World.getEntitiesWithinAABB(EntityItem.class, this.func_94352_a(par2, par3, par4)).iterator(); 023 024 while (iterator.hasNext()) 025 { 026 EntityItem entityitem = (EntityItem)iterator.next(); 027 l += entityitem.getEntityItem().stackSize; 028 029 if (l >= this.field_94357_a) 030 { 031 break; 032 } 033 } 034 035 if (l <= 0) 036 { 037 return 0; 038 } 039 else 040 { 041 float f = (float)Math.min(this.field_94357_a, l) / (float)this.field_94357_a; 042 return MathHelper.ceiling_float_int(f * 15.0F); 043 } 044 } 045 046 protected int func_94350_c(int par1) 047 { 048 return par1; 049 } 050 051 protected int func_94355_d(int par1) 052 { 053 return par1; 054 } 055 056 /** 057 * How many world ticks before ticking 058 */ 059 public int tickRate(World par1World) 060 { 061 return 10; 062 } 063}