[1.6.4]2 Вопроса

1,990
18
105
Golddrak написал(а):
Не вариант, отстает жестко
При нажатии мышки:
1) На клиенте спавнишь все нужные эффекты (вспышка, етц), проигрываешь звуки, крч имитируешь выстрел
2) На сервак шлешь пакет выстрела
Пакет выстрела при обработке осуществляет уже попадание, а если оно и будет с отставанием, то всем обычно пофиг. Даже с задержкой не будет подозрений, что что-то не так.
 
1,990
18
105
Golddrak написал(а):
Mouse.isButtonDown не пашет вот краш 
Код:
Caused by: java.lang.IllegalStateException: Mouse must be created before you can poll the button state
Да потому что нет на сервере твоей мышки.
Представь, что играет у тебя 20 человек на серве, у каждого есть экземпляр мыши, откуда им на серваке взяться?
 
61
0
НУ да, я даун ))
Что тут не так?
Это PacketHandler
Код:
if (id == 3) {
                if (player.inventory.getCurrentItem() != null) {

                    if (player.inventory.getCurrentItem().getItem() instanceof ItemGun) {

                        player.inventory.getCurrentItem().stackTagCompound
                        .setBoolean("left", true);
                        
                    }
                }
            }
            if (id == 4) {
                if (player.inventory.getCurrentItem() != null) {

                    if (player.inventory.getCurrentItem().getItem() instanceof ItemGun) {

                            player.inventory.getCurrentItem().stackTagCompound
                                    .setBoolean("left", false);
                            
                        
                    }
                }
            }

это ClientTick
Код:
if (left_button.pressed) {
                    DivPacketHelper.writeToServer(3);
                } else {
                    DivPacketHelper.writeToServer(4);
                }

сервер крашит второй аргумент, когда мышка не нажата
 
Сверху