Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите Эвент забрасывания удочки.

Спасибо всем за помощь. Пока я сделал так.
Код:
public Map<Player, Boolean> isHook = new HashMap<Player, Boolean>();

private boolean isHook(Player player) {
       
        if(isHook.containsKey(player)){
            if(isHook.get(player)){
                isHook.put(player, false);
                return false;
            }else{
                isHook.put(player, true);
                return true;
            }
        }else{
            isHook.put(player, true);
            return true;
    }
    }
 
Пока я сделал так.
Ты переключаешь состояние удочки, исходя из действия удочкой, но вытащить удочку можно и другими способами. Можно сменить слоты. Можно телепортироваться командой типа /home, /spawn, либо (на некоторых серверах) /tp accept от другого игрока. Можно зайти в портал. Можно умереть. Не забудь все это учесть.
 
Ты переключаешь состояние удочки, исходя из действия удочкой, но вытащить удочку можно и другими способами. Можно сменить слоты. Можно телепортироваться командой типа /home, /spawn, либо (на некоторых серверах) /tp accept от другого игрока. Можно зайти в портал. Можно умереть. Не забудь все это учесть.
Это я учитываю. Спасибо.

Другой вопрос не по теме:
Как сравнить значение String "mmm.*" из ArrayList, чтобы при сравнении участвовало только "mmm"? А звезда принимала все возможные значения.
Допустим как в PeX.
Поимер "mmm.*".ecuals("mmm.nnn.bbb") чтоб возвращало true?
Конкретный пример:
Код:
public static ArrayList<String> isPerm = new ArrayList<String>();

         isPerm.add("mmm.nnn:*");
         isPerm.add("nnn.*");
If(isPerm.contains("nnn.fff.bbb")){   //тут должно вернуть true

}else if(isPerm.contains("mmm.nnn:1")){ //тут тоже должно вернуть true
}else if(isPerm.contains("sss.zzz")){ // а это false
как сделать чтоб возвращало true?
Просто циклами генерировать лист на +100500 значений нет желания.
В голову пришла мысль делать сплит по точке и сравнивать каждый стринг по значению на совпадение или "*". Больше мыслей нет.
 
Неохота вникать, но, похоже, тебе нужно воспользоваться "startsWith" для String.
Java:
String s;
String n;
if(s.startsWith(n)){
...;
}
 

Поделиться этой страницей

Назад
Верх