Всем привет. народ помогите разобраться. Вообщем вот код: Запускаем: Code: private void CommandTest(IcqProtocol proc, String uin, Vector v, String mmsg){ if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return; Users uss = cmd.srv.us.getUser(uin); int i = 0; boolean twoPart = false; if (uss.state == UserWork.STATE_CHAT) { if(ComTest.containsKey(uin)) { if(ComTest.containsKey(uin)) { try{ i = Integer.parseInt(mmsg); } catch(NumberFormatException e) { proc.mq.add(uin, "Укажите цифру\nДля выхода наберите 0"); return; } twoPart = true; ComTest.remove(uin); } } if(!twoPart) { Spisok(proc, uin); //вывод меню ComTest.put(uin, new TestExtend(uin, mmsg, mmsg,v, 2*60000)); return; } if(i == 0){Exit(proc, uin);} if(i == 1){TestRaz(proc, uin, v, mmsg);} if(i == 2){TestDva(proc, uin, v, mmsg);} } } При нажатие 1: Code: private void TestRaz(IcqProtocol proc, String uin, Vector v, String mmsg){ if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return; Users uss = cmd.srv.us.getUser(uin); int ik = 0; boolean twoPartt = false; if (uss.state == UserWork.STATE_CHAT) { if(ComTestRaz.containsKey(uin)) { if(ComTestRaz.containsKey(uin)) { try{ ik = Integer.parseInt(mmsg); } catch(NumberFormatException e) { proc.mq.add(uin, "Укажите номер\nДля выхода наберите 0"); return; } twoPartt = true; ComTestRaz.remove(uin); } } if(!twoPartt) { SpisokPr(proc, uin); //вывод меню ComTestRaz.put(uin, new TestExtend(uin, mmsg, mmsg,v, 2*60000)); return; } if(ik == 0){Exit(proc, uin);} if(ik == 1){FunkcRaz(proc, uin);} if(ik == 2){FunkcDva(proc, uin);} } } И выглядит это так: Вывод: Нажми 1 Или 2 0 - Выход Ввод: 1 Вывод: 1 - Запуск функции Raz 2 - Запуск функции Dva 0 - Выход Ввод: 2 Далее молчок. Помогите что напорол... Выводит второй список и всё, дальнейшие команды не принимает...