Вызывать гуи , когда сижу на блоке.

Версия Minecraft
1.7.10
929
30
66
Всем привет,такая проблема нужно при пкм по блоку садиться на него, а после если нажать пкм откроется инвентарь блока.
Вот так сажусь на блок
Java:
@Override
        public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
            EntitySit sit = new EntitySit(world);
            sit.setPosition((double)x + 0.5D, (double)y + 0.5D, (double)z + 0.5D);
            if (!world.isRemote) {
                world.spawnEntityInWorld(sit);
                player.mountEntity(sit);
            }
            return super.onBlockActivated(world, x, y, z, player, side, hitX, hitY, hitZ);
        }
Вот так вызываю гуи
player.openGui(Main.getInstance(), Main.PALATKA_GUI, world, x, y, z);
 
3,005
192
592
Проверить, если player сидит на Sit - то открыть гуи.
Иначе сесть.
 
929
30
66
Вот так вот сделал,но при пкм сразу сажусь и сразу открывается гуи,как сделать чтобы всё постепенно ?
Java:
@Override
        public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
            EntitySit sit = new EntitySit(world);
            sit.setPosition((double)x + 0.5D, (double)y + 0.5D, (double)z + 0.5D);
            if (!world.isRemote) {
                world.spawnEntityInWorld(sit);
                player.mountEntity(sit);
            }
            if(!world.getBlock(x, y, z).isOpaqueCube()){
                player.openGui(Main.getInstance(), Main.PALATKA_GUI, world, x, y, z);
            }
            return super.onBlockActivated(world, x, y, z, player, side, hitX, hitY, hitZ);
        }
 
Последнее редактирование:
269
8
19
В onBlockActivated.
Идёт проверка,если игрок сидит то открывается гуй если нет то садится
Java:
            if(EntitySit.isSit(player, x, y, z)){
                player.openGui(твой мод.INSTANCE, твоё гуй, world, x, y, z);
            }else{
                EntitySit.sit(player, x, y, z);

Хватит клянчить код,ты много вопросов в день задаёшь,и иногда по глупым темам на которые ответ есть на форуме.
 
929
30
66
Java:
@Override
      public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
          EntitySit sit = new EntitySit(world);
          sit.setPosition((double)x + 0.5D, (double)y + 0.5D, (double)z + 0.5D);
          if (!world.isRemote) {
              world.spawnEntityInWorld(sit);
              player.mountEntity(sit);
          }
          if(EntitySit.isSit(player, x, y, z)){
              player.openGui(Main.getInstance(), Main.PALATKA_GUI, world, x, y, z);
          }else{
              EntitySit.sit(player, x, y, z);
          }
          return super.onBlockActivated(world, x, y, z, player, side, hitX, hitY, hitZ);
      }
 
269
8
19
Вот так работает?
Java:
@Override
      public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
       TileEntityТвоего блока palatka = (TileEntityТвоего блока )world.getTileEntity(x, y, z);
          if (world.isRemote) {
              return true;
          }
          if(EntitySit.isSit(player, x, y, z)){
              player.openGui(Main.getInstance(), Main.PALATKA_GUI, world, x, y, z);
          }else{
              EntitySit.sit(player, x, y, z);
          }
         return true;
      }
Попробуй ещё вот-так
 
Последнее редактирование:
269
8
19
И к чему это писать ? Сообщение по фармить ?
BestFoxy вот вернись к тому что у тебя просто он открывался при нажатии,и пытайся как-то что-то делать и придумывать.
 
929
30
66
BestFoxy вот вернись к тому что у тебя просто он открывался при нажатии,и пытайся как-то что-то делать и придумывать.
был уже вариант, я садился и инвентарь сразу открывался , но это все же не то , что мне нужно
 
Сверху