У меня есть следующий блок кода (это плагин для сервера bukkit[игра minecraft])
msg = lang.getString("Kick", "null"); //default msg.
msg = msg.replace("\\n", "\n");
int i = 0;
Player target = null;
for (i = 0; i < args.length; i++) {
if (args[i].equalsIgnoreCase("-")){
StringBuilder sb = new StringBuilder();
for (int ii = i+1; ii < args.length; ii++) {
sb.append(args[ii]).append(" ");
}
msg = sb.toString().trim(); // - that msg I need
break;
}
target = (Bukkit.getServer().getPlayer(args[i]));
target.kickPlayer(msg); // <--- here
Как получить строку "msg" из цикла.
код должен работать так:
Команда типа игрока /command target1 target2 - re a s o n
затем код:
Get target1
Get target2
Получить target3, но target3 имеет значение "-". тогда каждый аргумент после «-» является причиной (msg). (тогда я должен разорвать цикл, чтобы получить игрока)
И кикнуть target1 с помощью Reason(msg). кикнуть target2 с указанием причины (msg).
Но если игрок введет /command target1 target2... target999
Тогда просто выкиньте его с причиной по умолчанию.
break
даже там, когда вы все еще хотите использоватьmsg
в цикле? - person Mattias Buelens   schedule 06.04.2013