Опишу как и чего делать.
1. Создаем функцию установки пароля на комнату.(сделал по аалогии с settheme)
В ChatCommandProc.java добавляем:
authObj.put("setpass","Установить пароль в комнате");
commands.put("!setpass", new Cmd("!setpass","$c",43));
case 43: commandSetpass(proc, uin, parser.parseArgs(tmsg)); break;
public void commandSetpass(IcqProtocol proc, String uin, Vector v){ if(!auth(proc,uin, "setpass")) return; String s = (String)v.get(0); int room = srv.us.getUser(uin).room; Rooms r = srv.us.getRoom(room); r.setPass(s); srv.us.saveRoom(r, s); Log.info("Установлен пароль на комнату " + room + ": " + s); proc.mq.add(uin,"Пароль "+s+" на комнату успешно установлен."); }2.Проверка на пароль
В Rooms.java меняем
public boolean checkPass(String p) { return pass.equals(p); }на
public boolean checkPass(String p) { if (pass.equals("")) { return true; } else return pass.equals(p); }Ну и в команду !room добавить
Цитата
String pass = (String)v.get(1);
if (!cmd.srv.us.getRoom(i).checkPass(pass) && !cmd.psp.testAdmin(uin)) { proc.mq.add(uin,"Не верный пароль!"); return; }Думаю куда что всавить поймете сами... Ну собственно без компиляции тут не обойтись. Вроде ничего не забыл. :D