Спавнятся 3 блока под игроком.

Версия Minecraft
1.7.10
API
Forge
55
1
1
1639121784055.png
Привет всем! Есть код
Code:
    @SubscribeEvent
    public void onTick(TickEvent.PlayerTickEvent event)
    {
        if(event.player instanceof EntityPlayer)
        {
        EntityPlayer player = event.player;
        World world = player.worldObj;
        
        
            int x = (int)player.posX;
            int y = (int)player.posY;
            int z = (int)player.posZ;

            boolean item = checkItem(player);
            
            if(item == true)
            {
                Block block = world.getBlock(x, y, z);
                
                if(block == Blocks.air)
                {
                    world.setBlock(x, y - 2, z, Main.block_shortmod);
                
                }
            }
        }
    }
Все работает, но есть проблема, при беге спавнится 3 блока, вместо одного. Не знаю как пофиксить.
P.S Версия 1 7 10, просто текстура бетона.
 
У тикивента есть фаза. Сделай проверку на старт или конец тика, у тебя код выполняется два раза за тик.
Code:
@SubscribeEvent
    public void onTick(TickEvent.PlayerTickEvent event)
    {

    if(event.phase == Phase.START)
    {
        if(event.player instanceof EntityPlayer)
        {
    
                EntityPlayer player = event.player;
                World world = player.worldObj;
                
                
                    int x = (int)player.posX;
                    int y = (int)player.posY;
                    int z = (int)player.posZ;
        
                    int item = checkItem(player);
                    
                    if(item != -1)
                    {
                        Block block = world.getBlock(x, y - 2, z);
        
                        
                        if(block == Blocks.air)
                        {       

                            world.setBlock(x, y -2, z, Main.block_shortmod);
                            player.inventory.consumeInventoryItem(Item.getItemFromBlock(Main.block_shortmod));
                            }
                
            }
                    }

    
    }    }
Добавил проверку, но теперь в 2 слоя..
1639135908561.png
 
Назад
Сверху