скрипты для jimbot 0.4.0 от спека
|
|
tashanov93 | Дата: Суббота, 24.10.2009, 02:20 | Сообщение # 31 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| скрипт для перевода пользователя в другую комнату Code /** * Скрипт для расширения команд чата */
/** * При вызове скрипта определены следующие переменные: * ChatCommandProc cmd - ссылка на обработчик команд * IcqProtocol proc - ссылка на процесс обработки icq * String msg - текст сообщения с командой * String uin - кто отправил сообщение * String name - имя этого файла (при процедуре инсталяции скрипта) */
import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.*;
//Установка скрипта как обработчика команды if(in.equals("install")){ cmd.addCommand("!перевод", new Cmd("!перевод","$n $n",39,name)); cmd.addAuth("banroom","Запереть юзера в комнате!!!"); out="Ok"; return; }
// Проверим полномочия if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return; if(!cmd.auth(proc,uin, "banroom")) return;
try{ //Парсим строку аргументов Vector v = cmd.getParser().parseArgs(msg); //Согласно шаблону, оба аргумента должны быть числами int i1 = (Integer)v.get(0); int i2 = (Integer)v.get(1); // Находим юзера Users u = cmd.srv.us.getUser(i1); // Проверяем есть ли такой юзер ваще? if(u.id==0){ proc.mq.add(uin,"Пользователь не найден"); return; } if(u.state!=UserWork.STATE_CHAT){ proc.mq.add(uin,"Этого пользователя нет в чате."); return; } // Переводим в комнату if(u.room==i2){ proc.mq.add(uin,"Пользователь уже сидит в этой комнате"); return; } else { u.room=i2; cmd.srv.us.updateUser(u); cmd.srv.cq.changeUserRoom(u.sn, i2); // Оповещаем целевую комнату cmd.srv.cq.addMsg(u.localnick + " вошел в комнату " + u.room, u.sn, u.room); // Оповещаем юзера cmd.srv.getIcqProcess(u.basesn).mq.add(u.sn,"Тебя насильно перетащили в комнату " + i2); // Лишаем юзера прав на комнаты } // Сообщаем об успешном выполнении команды proc.mq.add(uin,"Пользователь " + u.localnick + " успешно перетащен в комнату " + i2); } catch (Exception ex) { ex.printStackTrace(); proc.mq.add(uin,"Ошибка "+ex.getMessage()); }
|
|
| |
tashanov93 | Дата: Суббота, 24.10.2009, 02:24 | Сообщение # 32 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| скрипт для просмотра модеров чата которые сейчас в чате сидят Code /** * Список модеров */
import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.*;
if(in.equals("install")){ cmd.addCommand("!модеры", new Cmd("!модеры","",39,name)); cmd.addAuth("ModList","Получить список модеров"); out="Ok"; return; }
if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return; if(!cmd.auth(proc,uin, "ModList")) return;
try{ String lst = ""; Enumeration e = cmd.srv.cq.uq.keys(); while(e.hasMoreElements()){ String i = e.nextElement(); Users us = cmd.srv.us.getUser(i); if (cmd.srv.us.getUserGroup(us.id).equals("moder")) { lst = lst + us.id+" - "+us.localnick+" , ["+us.room+"]"+cmd.srv.us.getRoom(us.room).getName()+"; \n"; } } proc.mq.add(uin,"Модеры:\n "+lst); } catch (Exception ex) { ex.printStackTrace(); proc.mq.add(uin,"Ошибка "+ex.getMessage()); }
|
|
| |
tashanov93 | Дата: Суббота, 24.10.2009, 02:25 | Сообщение # 33 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| список админов которые сейчас в чате Code /** * Список админов */
import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.*;
if(in.equals("install")){ cmd.addCommand("!админы", new Cmd("!админы","",39,name)); cmd.addAuth("AdmList","Получить список админов"); out="Ok"; return; }
if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return; if(!cmd.auth(proc,uin, "AdmList")) return;
try{ String lst = ""; Enumeration e = cmd.srv.cq.uq.keys(); while(e.hasMoreElements()){ String i = e.nextElement(); Users us = cmd.srv.us.getUser(i); if (cmd.srv.us.getUserGroup(us.id).equals("admin")) { lst = lst + us.id+" - "+us.localnick+" , ["+us.room+"]"+cmd.srv.us.getRoom(us.room).getName()+"; \n"; } } proc.mq.add(uin,"Админы:\n "+lst); } catch (Exception ex) { ex.printStackTrace(); proc.mq.add(uin,"Ошибка "+ex.getMessage()); }
|
|
| |
tashanov93 | Дата: Суббота, 24.10.2009, 02:26 | Сообщение # 34 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| скрипт для предложений пользователей чату Code /** * Скрипт для добавления в TODO * Imda */
/** * При вызове скрипта определены следующие переменные: * ChatCommandProc cmd - ссылка на обработчик команд * IcqProtocol proc - ссылка на процесс обработки icq * String msg - текст сообщения с командой * String uin - кто отправил сообщение * String name - имя этого файла (при процедуре инсталяции скрипта) */
import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.*;
//Установка скрипта как обработчика команды if(in.equals("install")){ cmd.addCommand("!надо", new Cmd("!надо","$s",39,name)); cmd.addAuth("mktodo","Добавление в ТОДО"); out="Ok"; return; }
// Проверим полномочия if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return; if(!cmd.auth(proc,uin, "mktodo")) return;
try { Vector v = cmd.getParser().parseArgs(msg); String sn = (String)v.get(0); java.sql.Time T = new java.sql.Time(new java.util.Date().getTime()); java.sql.Date D = new java.sql.Date(new java.util.Date().getTime()); OutputStreamWriter ow = new OutputStreamWriter(new FileOutputStream("./надо.txt",true),"windows-1251"); String s = "[" + D +" "+ T + "] " + "\n" + sn + "\n\n"; ow.write(s); ow.close(); Log.talk("TODO: " + sn); proc.mq.add(uin,"Ваша предложение принято и будет рассмотрено Администратором чата \n"+sn); } catch (Exception ex) { ex.printStackTrace(); Log.talk("Error save msg: " + ex.getMessage()); proc.mq.add(uin,"Ошибка добавления"); }
|
|
| |
tashanov93 | Дата: Суббота, 24.10.2009, 02:26 | Сообщение # 35 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| скрипт для просмотра 20 последних разбанов Code /** * Скрипт вывода 20 последних разбанов * * (с) Sushka 2009 */
import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.*; import ru.jimbot.Manager; import java.sql.*;
//Установка скрипта как обработчика команды if(in.equals("install")){ cmd.addCommand("!банлист", new Cmd("!ubanlist","",39,name)); cmd.addAuth("ubanlist","20 последний разбанов"); out="Ok"; return; }
try{ String host = ChatProps.getInstance(cmd.srv.getName()).getStringProperty("db.host"); String namedb = ChatProps.getInstance(cmd.srv.getName()).getStringProperty("db.dbname"); String user = ChatProps.getInstance(cmd.srv.getName()).getStringProperty("db.user"); String pass = ChatProps.getInstance(cmd.srv.getName()).getStringProperty("db.pass"); DBChat db; db = new DBChat(cmd.srv.getName()); db.openConnection(host, namedb, user, pass); String s = "20 последних разбанов:\n"; s+="Время|Пользователь|Кто разбанил\n"; try { PreparedStatement pst = db.getDb().prepareStatement("select time, user_id, user_id2 from events where type='UBAN' order by time desc"); ResultSet rs = pst.executeQuery(); for(int i=0;i<20;i++){ if(rs.next()){ s += "["+rs.getTimestamp(1)+"] "+ (rs.getInt(2)==0 ? "Admin" : cmd.srv.us.getUser(rs.getInt(2)).localnick)+"|" +rs.getInt(2)+"|,"+ (rs.getInt(3)==0 ? "Admin" : cmd.srv.us.getUser(rs.getInt(3)).localnick)+"|" +rs.getInt(3)+"|\n"; } } rs.close(); pst.close(); } catch (Exception ex) { ex.printStackTrace(); } proc.mq.add(uin,s); } catch (Exception ex) { ex.printStackTrace(); proc.mq.add(uin,"Ошибка "+ex.getMessage()); }
|
|
| |
tashanov93 | Дата: Суббота, 24.10.2009, 02:27 | Сообщение # 36 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| скрипт для проверки предложений Code /** * Скрипт для просмотра TODO * Imda */
import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.*;
//Установка скрипта как обработчика команды if(in.equals("install")){ cmd.addCommand("!todo", new Cmd("!todo","",39,name)); cmd.addCommand("!тодо", new Cmd("!тодо","",39,name)); cmd.addAuth("todo","Список TODO"); out="Ok"; return; }
// Проверим полномочия if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return; if(!cmd.auth(proc,uin, "todo")) return;
try{ String s = cmd.psp.loadText("./надо.txt"); String[] ss = s.split("<br>"); for(int i=0;i<ss.length;i++){ proc.mq.add(uin,ss[i]); } } catch (Exception ex) { ex.printStackTrace(); proc.mq.add(uin,"Ошибка "+ex.getMessage()); }
|
|
| |
tashanov93 | Дата: Суббота, 24.10.2009, 02:27 | Сообщение # 37 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| скрипт для затаскивания пользователя в чат Code /** * Затаскиваем юзера в чат * Работает только если юзер зарегистрирован. * команда !uchat id */ import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.chat.ChatProps; import ru.jimbot.modules.*;
if(in.equals("install")){ cmd.addCommand("!затащить", new Cmd("!затащить","$n",39,name)); cmd.addAuth("uchat","Затащить юзера в чат"); out="Ok"; return; }
// Проверим полномочия if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return; if(!cmd.auth(proc,uin, "uchat")) return;
try{ Vector v = cmd.getParser().parseArgs(msg); //Согласно шаблону, оба аргумента должны быть числами int i1 = (Integer)v.get(0); Users uss = cmd.srv.us.getUser(i1); boolean f = false; if(uss.localnick==null || uss.localnick.equals("") || uss.state==UserWork.STATE_NO_REG) { proc.mq.add(uin, "Данный юзер не зарегистрирован"); return; } if (uss.state==UserWork.STATE_CHAT) return proc.mq.add(uin, "Юзер уже в чате"); //Юзер уже в чате if (uss.state==UserWork.STATE_NO_CHAT) { Log.info("Add contact " + uss.sn); if(proc.isNoAuthUin(uss.sn)) proc.mq.add(uss.sn, "Чтобы бот видел ваш статус - авторизуйте его", 2); proc.addContactList(uss.sn); uss.state = UserWork.STATE_CHAT; uss.basesn = proc.baseUin; cmd.srv.us.updateUser(uss); cmd.srv.cq.addMsg(uss.localnick + " насильно затащен в чат", uss.sn, uss.room); proc.mq.add(uin, uss.localnick+" затащен в чат"); proc.mq.add(uss.sn,"Вас затащили в чат,непугайтесь всё хорошо!ICQ:417-84-76-81(Admin)"); f = true; } if (uss.state==UserWork.STATE_OFFLINE) { uss.state = UserWork.STATE_CHAT; uss.basesn = proc.baseUin; cmd.srv.us.updateUser(uss); proc.mq.add(uin,uss.localnick+" затащен в чат"); proc.mq.add(uss.sn,"Вас затащили в чат"); if(cmd.psp.getBooleanProperty("chat.showChangeUserStatus")) cmd.srv.cq.addMsg(uss.localnick + " затащен в чат", uss.sn, uss.room); } Log.talk(uss.localnick + " затащен в чат"); cmd.srv.us.db.log(uss.id,uss.sn,"STATE_IN",uss.localnick + " затащен в чат",uss.room); cmd.srv.us.db.event(uss.id, uss.sn, "STATE_IN", 0, "", uss.localnick + " затащен в чат"); cmd.srv.cq.addUser(uss.sn,proc.baseUin, uss.room); if(f){ if(cmd.srv.us.getCurrUinUsers(uss.basesn)>cmd.psp.getIntProperty("chat.maxUserOnUin")){ proc.mq.add(uss.sn,"Данный номер слишком загружен, вы будете автоматически переведены на ближайший свободный номер."); String s = cmd.srv.us.getFreeUin(); uss.basesn = s; cmd.srv.us.updateUser(uss); cmd.srv.cq.changeUser(uss.sn, s); proc.mq.add(uss.sn,"Сообщения теперь будут приходить с номера " + s); } } } catch (Exception ex) { ex.printStackTrace(); proc.mq.add(uin,"Ошибка "+ex.getMessage()); }
|
|
| |
tashanov93 | Дата: Суббота, 24.10.2009, 02:27 | Сообщение # 38 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| скрипт для отправки своего уина другому пользователю Code /** * Скрипт для отправки юзеру своего uina */
/** * При вызове скрипта определены следующие переменные: * ChatCommandProc cmd - ссылка на обработчик команд * IcqProtocol proc - ссылка на процесс обработки icq * String msg - текст сообщения с командой * String uin - кто отправил сообщение * String name - имя этого файла (при процедуре инсталяции скрипта) */
import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.*;
//Установка скрипта как обработчика команды if(in.equals("install")){ cmd.addCommand("!уин", new Cmd("!уин","$n",39,name)); cmd.addAuth("uin","команда отправки своего uina"); out="Ok"; return; } if(!cmd.isChat(proc,uin)) return; if(!cmd.auth(proc,uin, "uin")) return; try{ Vector v = cmd.getParser().parseArgs(msg); int no = (Integer)v.get(0); Users uss = cmd.srv.us.getUser(no); if(uss == null){ proc.mq.add(uin,"Такого Чувака не существует в нашем чате!"); return; } if(!cmd.srv.cq.testUser(uss.sn)){ proc.mq.add(uin,"Чувак сейчас не в чате"); return; } Log.talk("CHAT: " + uss.sn + ">> Чувак " + cmd.srv.us.getUser(uin).localnick + " оставил вам свой номер Аси и попросил чтобы вы ему написали вот сюда >>> " + cmd.srv.us.getUser(uin).sn); cmd.srv.us.db.log(uss.id,uin,"OUT",">> Чувак " + cmd.srv.us.getUser(uin).localnick + " оставил вам свой номер Аси и попросил чтобы вы ему написали вот сюда >>> " + cmd.srv.us.getUser(uin).sn,uss.room); cmd.srv.getIcqProcess(uss.basesn).mq.add(uss.sn,"Чувак " + cmd.srv.us.getUser(uin).localnick + " оставил вам свой номер Аси и попросил чтобы вы ему написали вот сюда >>> " + cmd.srv.us.getUser(uin).sn); proc.mq.add(uin,"Ваше секретное сообщение успешно отправлено куда надо."); } catch (Exception ex) { ex.printStackTrace(); proc.mq.add(uin,"Ошибка "+ex.getMessage()); }
|
|
| |
tashanov93 | Дата: Суббота, 24.10.2009, 02:28 | Сообщение # 39 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| скрипт для проверки кто в чате очень удобный Code import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.*;
if(in.equals("install")){ cmd.addCommand("+всего", new Cmd("+всего","",39,name)); cmd.addCommand("+общийлист", new Cmd("+общийлист","",39,name)); cmd.addAuth("A","всего"); out="Ok"; return; }
if(!cmd.auth(proc,uin, "A")) return;
try{ int room = cmd.srv.us.getUser(uin).room; String s = "Комната: " +room + " - " + cmd.srv.us.getRoom(room).getName() + "\nТема комнаты: " + cmd.srv.us.getRoom(room).getTopic() + "\nСписок всех пользователей"+"\nID - Ник [ Группа ]\n"; if(cmd.psp.getBooleanProperty("adm.useAdmin")) s +="[Bot] - "+cmd.radm.NICK +"\n"; Enumeration e = cmd.srv.cq.uq.keys(); int cnt=0; while(e.hasMoreElements()){ String i = e.nextElement(); Users us = cmd.srv.us.getUser(i); if(us.state==UserWork.STATE_CHAT){ cnt++; if(us.room==room) s += us.id + " - " + us.localnick +" [" + cmd.srv.us.getUserGroup(us.id) + "]" + '\n'; } } s += "\nВсего пользователей в чате: "+cnt;
proc.mq.add(uin,s);
} catch (Exception ex) { ex.printStackTrace(); proc.mq.add(uin,"Ошибка "+ex.getMessage()); }
|
|
| |
tashanov93 | Дата: Суббота, 24.10.2009, 02:28 | Сообщение # 40 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| вот еще один скрипт запертых Code import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.*; import ru.jimbot.Manager; import java.sql.*;
//Установка скрипта как обработчика команды if(in.equals("install")){ cmd.addCommand("!закрытые", new Cmd("!закрытые","",39,name)); cmd.addCommand("!закрытые", new Cmd("!вбане","",39,name)); cmd.addCommand("!banroomed", new Cmd("!banroomed","",39,name)); cmd.addAuth("banroomed","Список запертых"); out="Ok"; return; }
if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return; if(!cmd.auth(proc,uin, "banroomed")) return; try{ Vector v = cmd.getParser().parseArgs(msg); String host = ChatProps.getInstance(cmd.srv.getName()).getStringProperty("db.host"); String namedb = ChatProps.getInstance(cmd.srv.getName()).getStringProperty("db.dbname"); String user = ChatProps.getInstance(cmd.srv.getName()).getStringProperty("db.user"); String pass = ChatProps.getInstance(cmd.srv.getName()).getStringProperty("db.pass"); DBChat db; db = new DBChat(cmd.srv.getName()); db.openConnection(host, namedb, user, pass); String s = "|id|-|nick|-|room|\n"; try { PreparedStatement pst = db.getDb().prepareStatement("SELECT `user_id` FROM `user_props` WHERE `name`='revoke' AND `val`='room'"); ResultSet rs = pst.executeQuery(); while(rs.next()){ Users us = cmd.srv.us.getUser(rs.getInt(1)); s += us.id +" - " + us.localnick+" ["+ us.room +"]" + "\n"; } rs.close(); pst.close(); } catch (Exception ex) { ex.printStackTrace(); } proc.mq.add(uin,s); } catch (Exception ex) { ex.printStackTrace(); proc.mq.add(uin,"Ошибка "+ex.getMessage()); }
|
|
| |
tashanov93 | Дата: Суббота, 24.10.2009, 02:28 | Сообщение # 41 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| игра бомба Code import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.*; import java.util.Random;
//Установка скрипта как обработчика команды if(in.equals("install")){ cmd.addCommand("!бомба", new Cmd("!бомба","$s",39,name)); cmd.addAuth("game","возможность играть"); out="Ok"; return; } if(!cmd.isChat(proc,uin)) return; try{ Vector v = cmd.getParser().parseArgs(msg); Users uss = cmd.srv.us.getUser(uin); String cvet = (String)v.get(0); int t = (int) ((Math.random()*3)); if(uss.room!=7){ proc.mq.add(uin,"Перейди в комнату |7| - " + cmd.srv.us.getRoom(7).getName() + ""); return; } String s ="красный;синий;черный"; String[] ss = s.split(";"); int i = (int) ((Math.random()*3)); String color = ss[i]; if(cvet.equals("")) { proc.mq.add(uin,"Неправильно выбран цвет"); return; } if(cvet.equals(ss[i])) { cmd.srv.cq.addMsg("Бомба: Цвета совпали! |" + uss.id + "| " + uss.localnick + " остаётся в чате испытовать своё везение!", "", uss.room); proc.mq.add(uin,uss.localnick+ ", тебе повезло! Правильный цвет был |" + ss[i] + "|, тобой прорезан " + cvet + ", цвета совпали! Ты остаёшься в чате!"); } else { proc.mq.add(uin,uss.localnick+ ", тебе не повезло! Тобой прорезан не тот провод! Правильный цвет был |" + ss[i] + "|, тобой прорезан " + cvet + ", цвета несовпали! Бомба взорвалась вместе с тобой! Ты вылетаешь из чата на "+t+" минут!"); cmd.srv.cq.addMsg("Бомба: Цвета несовпали! Пользователь |" + uss.id + "| " + uss.localnick + " взорвался и вылетел из чата на "+t+" минут!", "", uss.room); cmd.tkick(proc, uin, t, 0, "Тебя выкинуло из чата взрывной волной!"); } } catch (Exception ex) { ex.printStackTrace(); proc.mq.add(uin,"Ошибка "+ex.getMessage()); }
|
|
| |
tashanov93 | Дата: Суббота, 24.10.2009, 02:29 | Сообщение # 42 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| игра бутылочка Code /** * Скрипт игры в бутылочку. */
import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.*;
//Установка скрипта как обработчика команды if(in.equals("install")){ cmd.addCommand("!бутылочка", new Cmd("!бутылочка","",39,name)); out="Ok"; return; }
// Проверим полномочия if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return;
try{ String g=""; Users uss = cmd.srv.us.getUser(uin); Enumeration e = cmd.srv.cq.uq.keys(); while(e.hasMoreElements()){ String i = e.nextElement(); Users us = cmd.srv.us.getUser(i); if(us.state==UserWork.STATE_CHAT){ if(us.room==uss.room) { g += us.id + ";"; } } } String[] gg = g.split(";"); int k = (int) ((Math.random()*gg.length)); String s = cmd.psp.loadText("./text/butilochka.txt"); String[] ss = s.split("<end>"); int R = (int) ((Math.random()*ss.length)); Users u = cmd.srv.us.getUser(Integer.parseInt(gg[k])); Users uss = cmd.srv.us.getUser(uin); if(uss.id==0){ proc.mq.add(uin,"Пользователь не найден"); return; } if(uss.state!=UserWork.STATE_CHAT){ proc.mq.add(uin,"Этого пользователя нет в чате."); return; } if(uss.room!=7) { proc.mq.add(uin,"Играть можно только в 7 комнате8-)"); return; } if(u.id==uss.id) { proc.mq.add(uin,uss.localnick + " Ну ка крутани еще."); return; } // Оповещаем чат cmd.srv.cq.addMsg("Ведущий: " + uss.localnick + " вертит бутылочку. Бутылочка крутится.... крутится... и указывает на.... указывает на " + "[" + gg[k] + "]" + u.localnick, uss.sn, uss.room); cmd.srv.cq.addMsg("Ведущий: Теперь " + uss.localnick + " должен(должна) " +ss[R]+ " [" + gg[k] + "]" + u.localnick, uss.sn, uss.room);
proc.mq.add(uin,"Ведущий: Ты должен(должна) "+ss[R]+ " [" +gg[k]+ "]" + u.localnick);
} catch (Exception ex) { ex.printStackTrace(); proc.mq.add(uin,"Ошибка "+ex.getMessage()); }
|
|
| |
tashanov93 | Дата: Суббота, 24.10.2009, 02:29 | Сообщение # 43 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| скрипт игры в рулетку советую не играть потому что если вы не угадаете число вас автоматом выбъет на 30 минут сам скрипт Code import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.*; import java.util.Random; // добавить !!!
//Установка скрипта как обработчика команды if(in.equals("install")){ cmd.addCommand("!рулетка", new Cmd("!рулетка","$n",39,name)); out="Ok"; return; }
// Проверим полномочия if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return; //if(!cmd.auth(proc,uin, "kickone")) return;
try{ Vector v = cmd.getParser().parseArgs(msg); int s = (Integer)v.get(0); // набранное число int numb =(int) ((Math.random()*50)); // случаиное время кика от 0 до 50 int num = (int) ((Math.random()*50)); // случаиное число от 0 до 50 Users uss = cmd.srv.us.getUser(uin); if(uss.room!=7) // номер комнаты для игры { proc.mq.add(uin,"Играть можно только в 7 комнате8-)"); // оповещение где играть return; } int moder_id = uss.id; // ид модера String r ="Неудачник!"; // причина if(s>50){ proc.mq.add(uin,"Число должно быть от 1 до 50..."); return; }
cmd.srv.cq.addMsg("Крупье: я загадал число: (" + num + ") , а " + uss.localnick + " набрал: (" + s + ")", "", uss.room); if(s==num) { cmd.srv.cq.addMsg("Крупье: числа совпали! " + uss.localnick + " стал модером*BRAVO* а мог вылететь из чата на "+ numb +" минут", "", uss.room); proc.mq.add(uin,"Крупье: я загадал число: (" + num + ") , а у тебя выпало: (" + s + ") , числа совпали! ты стал модератором на 7 дней!");
// Переводим в группу moder cmd.srv.us.getUser(uin).group = "moder"; boolean f = cmd.srv.us.setUserPropsValue(uss.id, "group", "moder") && cmd.srv.us.setUserPropsValue(uss.id, "grant", "") && cmd.srv.us.setUserPropsValue(uss.id, "revoke", ""); cmd.srv.us.clearCashAuth(uss.id); } else { proc.mq.add(uin,"Крупье: я загадала число: (" + num + ") , а у тебя выпало: (" + s + ") , числа несовпали! *BYE* пока неудачник!"); // оповещаем....удаляем
proc.mq.add(uin,"Вы были выпнуты из чата на "+ numb +" минут. Причина: Ты проиграл в Русскую рулетку!"); cmd.tkick(proc, uin, numb, moder_id, r); }
}catch (Exception ex) { ex.printStackTrace(); proc.mq.add(uin,"Ошибка "+ex.getMessage()); }
|
|
| |
tashanov93 | Дата: Суббота, 24.10.2009, 02:30 | Сообщение # 44 |
Генералиссимус
Группа: Администраторы
Сообщений: 113
Статус: Offline
| скрипт смены статусу боту не х-статуса а простого статуса Code /** * Скрипт для смены ICQ - статусов * Bess * ICQ статусы: * Злой = 1; * Депрессия = 2; * Дома = 3; * Работа = 4; * Кушаю = 5; * Отошёл = 6; * Готов поболтать = 7; * Не беспокоить = 8; * Невидим = 9; * Невидим для всех = 10; * Недоступен = 11; * Занят = 12; * Не в сети = 13; * В сети = 14; */
/** * При вызове скрипта определены следующие переменные: * ChatCommandProc cmd - ссылка на обработчик команд * IcqProtocol proc - ссылка на процесс обработки icq * String msg - текст сообщения с командой * String uin - кто отправил сообщение * String name - имя этого файла (при процедуре инсталяции скрипта) */
import ru.jimbot.modules.AbstractServer; import ru.jimbot.util.*; import ru.jimbot.modules.chat.*; import ru.jimbot.modules.*; import ru.jimbot.Manager;
//Установка скрипта как обработчика команды if(in.equals("install")){ cmd.addCommand("!статус", new Cmd("!статус","$n",39,name)); out="Ok"; return; }
// Проверим полномочия //if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return; if(!cmd.psp.testAdmin(uin)) return;
Vector v = cmd.getParser().parseArgs(msg); int i = (Integer)v.get(0); if(i>14 || i<0) return; proc.mq.add(uin,"Статус чата изменён"); switch(i){ case 1: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status",12288); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; case 2: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status", 16384); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; case 3: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status", 20480); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; case 4: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status", 24576); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; case 5: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status", 8193); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; case 6: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status", 1); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; case 7: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status", 32); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; case 8: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status", 2); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; case 9: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status", 256); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; case 10: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status", 512); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; case 11: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status", 4); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; case 12: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status", 10); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; case 13: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status", 268435456); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; case 14: ChatProps.getInstance(cmd.srv.getName()).setIntProperty("icq.status", 0); Manager.getInstance().getService(cmd.srv.getName()).getProps().save(); break; } /*Manager.restart();*/ //раскоментировать если хотите что б статус менялся сразу
|
|
| |
AzA_AkA | Дата: Четверг, 05.11.2009, 21:51 | Сообщение # 45 |
 Рядовой
Группа: Пользователи
Сообщений: 5
Статус: Offline
| Ммммммммм........ну спасибо !!! Вижу постарался !!!
|
|
| |