Приветствую Вас Гость | RSS

jimbot.moy.su

Вторник, 08.07.2025, 00:49
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 2 из 4
  • «
  • 1
  • 2
  • 3
  • 4
  • »
скрипты для jimbot 0.4.0 от спека
tashanov93Дата: Суббота, 24.10.2009, 02:11 | Сообщение # 16
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: Offline
скрипт для просмотра кто в бане

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("!банлист","",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:11 | Сообщение # 17
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: Offline
скрипт Список комнат, с кол-м юзеров в скобульках

Code
/**  
* Список комнат, с кол-м юзеров в скобульках  
* 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("!хаты", new Cmd("!хаты","",39,name));  
      cmd.addCommand("!ск", new Cmd("!ск","",39,name));  
      cmd.addCommand("!rl", new Cmd("!rl","",39,name));  
      out="Ok";  
      return;  
}  

if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return;  

try{  
String s = "Список комнат в чате\n";  
Set rid = cmd.srv.us.getRooms();  
for(int i:rid){  
            Enumeration ee = cmd.srv.cq.uq.keys();  
           int cnt=0;  
           while(ee.hasMoreElements()){  
               String ii = ee.nextElement();  
              Users us = cmd.srv.us.getUser(ii);  
               if(us.state==UserWork.STATE_CHAT){  
                      if(us.room==i) cnt++;  
        }  
     }  
     s += i + " - " + cmd.srv.us.getRoom(i).getName() + " ["+cnt+" чел]\n";  
}  
proc.mq.add(uin,s);  
} catch (Exception ex) {  
ex.printStackTrace();  
proc.mq.add(uin,"Ошибка "+ex.getMessage());  
}
 
tashanov93Дата: Суббота, 24.10.2009, 02:12 | Сообщение # 18
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: 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("!room", new Cmd("!room","$n",39,name));  
     cmd.addCommand("!комната", new Cmd("!комната","$n",39,name));  
     cmd.addCommand("!хата", new Cmd("!хата","$n",39,name));  
     cmd.addAuth("room","Переход по комнатам");  
     out="Ok";  
     return;  
}  

// Проверим полномочия  
if(!cmd.isChat(proc,uin)) return;  
if(!cmd.auth(proc,uin, "room")) return;  

try{  
     String MESSAGE1 = " улетел(а) из хаты ";  
     String MESSAGE2 = " пришел(а) в хату ";  
     Vector v = cmd.getParser().parseArgs(msg);  
     //Согласно шаблону, оба аргумента должны быть числами  
     int i = (Integer)v.get(0);  
      Users uss = cmd.srv.us.getUser(uin);  
      if(uss.room==i){  
        proc.mq.add(uin,"Ты уже сидишь в этой хате!");  
      } else  
        if(cmd.qauth(proc,uin, "anyroom") || cmd.srv.us.checkRoom(i)){  
           cmd.srv.cq.addMsg(uss.localnick + MESSAGE1 + uss.room, uin, uss.room);  
              uss.room=i;  
              cmd.srv.us.updateUser(uss);  
              cmd.srv.cq.changeUserRoom(uin, i);  
              cmd.srv.cq.addMsg(uss.localnick + MESSAGE2 + uss.room, uin, uss.room);  
              proc.mq.add(uin,"Ты перешел в комнату " + i + " - " + cmd.srv.us.getRoom(i).getName() +  
              (cmd.srv.us.getRoom(i).getTopic().equals("") ? "" : ("\nТема: " + cmd.srv.us.getRoom(i).getTopic())));  
              } else {  
                  proc.mq.add(uin,"Такой хаты не существует!");  
              }  
}catch (Exception ex) {  
      ex.printStackTrace();  
      proc.mq.add(uin,"Ошибка "+ex.getMessage());  
}
 
tashanov93Дата: Суббота, 24.10.2009, 02:12 | Сообщение # 19
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: 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("+p", new Cmd("+p","$n $s",39,name));  
      cmd.addCommand("+р", new Cmd("+р","$n $s",39,name));  
      cmd.addCommand("+лс", new Cmd("+лс","$n $s",39,name));  
      cmd.addAuth("pmsg","Отправка приватных сообщений");  
      out="Ok";  
      return;  
}  

if(!cmd.isChat(proc,uin)) return;  
if(!cmd.auth(proc,uin, "pmsg")) return;  

try{  
     Vector v = cmd.getParser().parseArgs(msg);  
     int no = (Integer)v.get(0);  
     String txt = (String)v.get(1);  
     if(txt.equals("")) {  
        proc.mq.add(uin,"Сообщение отсутствует");  
        return;  
     }  
     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;  
     }  
     if(txt.length()>cmd.psp.getIntProperty("chat.MaxMsgSize")){  
        txt = txt.substring(0,cmd.psp.getIntProperty("chat.MaxMsgSize"));  
        proc.mq.add(uin,"Слишком длинное сообщение было обрезано: " + txt);  
     }  
       

    String im = "******"; //кому присылать уведомление  
     Log.talk("CHAT: " + uss.sn + ">> Личное сообщение от [" + cmd.srv.us.getUser(uin).id + "]" + cmd.srv.us.getUser(uin).localnick + " : " + txt);  
     cmd.srv.us.db.log(uss.id,uin,"OUT",">> Личное сообщение от [" + cmd.srv.us.getUser(uin).id + "]" + cmd.srv.us.getUser(uin).localnick + " : " +  

txt,uss.room);  
     cmd.srv.getIcqProcess(uss.basesn).mq.add(uss.sn,"Личное сообщение от [" + cmd.srv.us.getUser(uin).id + "]" + cmd.srv.us.getUser(uin).localnick + " : "  

+ txt);  
     cmd.srv.getIcqProcess(cmd.srv.us.getUser(im).basesn).mq.add(im,"Отправлено личное сообщение пользователю [" + uss.id + "]" + uss.localnick + " от  

[" + cmd.srv.us.getUser(uin).id + "]" + cmd.srv.us.getUser(uin).localnick + " : " + txt);  
    proc.mq.add(uin,"Сообщение пользователю [" + uss.id + "]"  + uss.localnick + " Отправлено8-)");  
} catch (Exception ex) {     
        ex.printStackTrace();  
        proc.mq.add(uin,"Ошибка "+ex.getMessage());  
}
 
tashanov93Дата: Суббота, 24.10.2009, 02:13 | Сообщение # 20
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: Offline
скрипт свадьбы

Code
/**  
*  
*Скрипт свадьба пользователей, на основе banroom!  
*!свадьба id(невесты) id(жениха)  
*/  

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));  
     out="Ok";  
     return;  
}  

// Проверим полномочия  
if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return;  

try{  
     Vector v = cmd.getParser().parseArgs(msg);  
//невеста  
int i1 = (Integer)v.get(0);  
//жених  
int i2 = (Integer)v.get(1);  
Users uss = cmd.srv.us.getUser(i2);  
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;  

} else {  
// Оповещаем чат  
cmd.srv.cq.addMsg("У пользователей " + uss.localnick + "[" + uss.id + "] " + " и " + u.localnick + "[" + u.id + "] " + "свадьба*DRINK*!", u.sn, u.room);  
cmd.srv.cq.addMsg("У пользователей " + uss.localnick + "[" + uss.id + "] " + " и " + u.localnick + "[" + u.id + "] " + "свадьба*DRINK*!", uss.sn, uss.room);  
// Оповещаем юзера  
cmd.srv.getIcqProcess(uss.basesn).mq.add(uss.sn,"Поздравляю у тебя свадьба, твоя невеста " + u.localnick + "[" + u.id + "]");  
cmd.srv.getIcqProcess(u.basesn).mq.add(u.sn,"Поздравляю у тебя свадьба, твой жених  " + uss.localnick + "[" + uss.id + "]");  
// Меняем ник у жениха       
String nick = u.localnick + "(замужем)";  
String oldNick = u.localnick;  
u.localnick=nick;  
cmd.srv.us.updateUser(u);  
cmd.srv.us.db.event(u.id, uin , "REG", 0, "", nick);  
    // Меняем ник у невесты  
String nick1 = uss.localnick + "(женат)";  
String oldNick1 = uss.localnick;  
uss.localnick=nick1;  
cmd.srv.us.updateUser(uss);  
cmd.srv.us.db.event(uss.id, uin , "REG", 1, "", nick1);  
}  

// Сообщаем об успешном выполнении команды  
proc.mq.add(uin,"Пользователи " + uss.localnick + "[" + uss.id + "] " + " и "  + u.localnick + "[" + u.id + "] " +  " обвенчались!");  
} catch (Exception ex) {  
ex.printStackTrace();  
proc.mq.add(uin,"Ошибка "+ex.getMessage());  
}
 
tashanov93Дата: Суббота, 24.10.2009, 02:13 | Сообщение # 21
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: 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("best","Вывод статистики лучших");  
     out="Ok";  
     return;  
}  

// Проверим полномочия  
if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return;  
if(!cmd.auth(proc,uin, "best")) return;  

try{  
          String s = "За последние сутки в yarchat2: \n";  
          s += "Зашло: " + cmd.srv.us.statUsersCount();  
          s += "\nОтправлено сообщений:1" + cmd.srv.us.statMsgCount();  
          s += "\nКикнутых чуваков: " + cmd.srv.us.statKickUsersCount();  
          s += "\nВсего киков: " + cmd.srv.us.statKickCount();  
          s += "\nЗабанено чуваков: " + cmd.srv.us.statBanUsersCount();  
          s += "\nСамые болтливые чуваки чата:";  
     String[] ss = cmd.srv.us.statUsersTop().split(";");  
     for(int i=0;i<ss.length;i++){  
        s+="\n"+ss[i];  
     }  
        s += "\nА самый крутой в чате это я ~Вандал~ мой id=0 ";  
     proc.mq.add(uin,s);  

} catch (Exception ex) {  
      ex.printStackTrace();  
      proc.mq.add(uin,"Ошибка "+ex.getMessage());  
}
 
tashanov93Дата: Суббота, 24.10.2009, 02:14 | Сообщение # 22
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: Offline
скрипт развода

Code
/**  
* Скрипт развести пользователей, на основе ubanroom !  
*!развести id(невесты) id(жениха)  
*/  

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.addCommand("!развод", new Cmd("!развод","$n $n",39,name));  
     out="Ok";  
     return;  
}  

// Проверим полномочия  
if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) 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);  
     Users uss = cmd.srv.us.getUser(i2);  
// Проверяем есть ли такой юзер ваще?  
     if(u.id==0){  
        proc.mq.add(uin,"Пользователи не найден");  
        return;  
     }  

     // Меняем ник у жены если не надо стереть.  
     String nick = u.localnick.replace("(замужем)","");  
String oldNick = u.localnick;  
     u.localnick=nick;  
     cmd.srv.us.updateUser(u);  
     cmd.srv.us.db.event(u.id, uin, "REG", 0, "", nick);     
// Меняем ник у мужа если не надо стереть.  
String nick1 = uss.localnick.replace("(женат)","");  
String oldNick1 = uss.localnick;  
     uss.localnick=nick1;  
     cmd.srv.us.updateUser(uss);  
     cmd.srv.us.db.event(uss.id, uin, "REG", 1, "", nick1);   
///////////////////////////////////  
     if(u.state==UserWork.STATE_CHAT){  
         cmd.srv.getIcqProcess(u.basesn).mq.add(u.sn,"Ты свободен.");  
     }  
     // Сообщаем об успешном выполнении команды  
     cmd.srv.cq.addMsg("Пользователи " + uss.localnick + "[" + uss.id + "] " + " и " + u.localnick + "[" + u.id + "] " + " Развелись!", u.sn, u.room);  
cmd.srv.cq.addMsg("Пользователи " + uss.localnick + "[" + uss.id + "] " + " и " + u.localnick + "[" + u.id + "] " + " Развелись!", uss.sn, uss.room);  
proc.mq.add(uin,"Брак распался...");  
} catch (Exception ex) {  
      ex.printStackTrace();  
      proc.mq.add(uin,"Ошибка "+ex.getMessage());  
}
 
tashanov93Дата: Суббота, 24.10.2009, 02:15 | Сообщение # 23
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: Offline
прогноз погоды в чат

Code
/**  
* Выводим RSS Ленту (погода, новости и т.д.)  
*/  

import ru.jimbot.modules.http.HttpConnection;  
import ru.jimbot.modules.AbstractServer;  
import ru.jimbot.util.*;  
import ru.jimbot.modules.chat.*;  
import ru.jimbot.modules.*;  

// Как я описал в комментариях, RSS ленты можно взять на сайте RP5.ru. Для этого заходим туда через "лисичку" (фаерфокс) выбираем нужный город.  
// Сверху, в адресной строке справа тыкаем оранжевый квадратик и получаем ссылку на RSS. Прошу обратить внимание на все комментарии в скрипте.  

//Установка скрипта как обработчика команды  
if(in.equals("install")){  
     cmd.addCommand("!погода", new Cmd("!погода","$n",39,name));                             // Создаем новую команду  
// cmd.addAuth("pogoda","Вывод погоды");                    // Можно так же создать полномочие, без которого погода не будет выводиться  
     out="Ok";  
     return;  
}  

// Проверим полномочия  
if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return;  
// if(!cmd.auth(proc,uin, "pogoda")) return;                    // Проверка полномочия (если необходимо)  

try{  
Vector v = cmd.getParser().parseArgs(msg);  
int i1 = (Integer)v.get(0);  
// Ссылка на RSS. Погодные RSS под любой город можно взять вот отсюда http://rp5.ru/ru  

String s="";  

if(i1==0){  
proc.mq.add(uin,"Список городов с цифровыми обозначениями:\n");  
s = cmd.psp.loadText("./text/goroda.txt");  
String[] ss = s.split("<br>");  
      for(int i=0;i<ss.length;i++){  
          proc.mq.add(uin,ss[i]);  
      }  
return;  
}  

   String s="";  
if(i1==1){  
s =  MainProps.getStringFromHTTP("http://rp5.ru/rss/5490/ru");                      // Москва  
}  
if(i1==2){  
s =  MainProps.getStringFromHTTP("http://rp5.ru/rss/7285/ru");                      // Питер  
}  
if(i1==3){  
s =  MainProps.getStringFromHTTP("http://rp5.ru/rss/2278/ru");                      // Владимир  
}  
if(i1==4){  
s =  MainProps.getStringFromHTTP("http://rp5.ru/rss/7217/ru");                      // Рязань  
}  
if(i1==5){  
s =  MainProps.getStringFromHTTP("http://rp5.ru/rss/1859/ru");                      // Брянск  
}  
if(i1==6){  
s =  MainProps.getStringFromHTTP("http://rp5.ru/rss/7147/ru");                      // Ростов На Дону  
}  
if(i1==7){  
s =  MainProps.getStringFromHTTP("http://rp5.ru/rss/1464/ru");                      // Белореченск  
}  
if(i1==8){  
s =  MainProps.getStringFromHTTP("http://rp5.ru/rss/4429/ru");                      // Ярославль  
}  

// ==============================================================================  
// ДОБАВЛЯЕМ ГОРОДА  
// if(i1==peremennaya){    // Где peremennaya означает циферку, которую вы вводите в файл goroda.txt  
// s =  MainProps.getStringFromHTTP("http://rp5.ru/rss/ID_города/ru");  // Берется на сайте rp5.ru        
// }  
// ==============================================================================  

     //Разбиваем текст на куски, в качестве разделителя будет использовате тег <br>  
     String[] ss = s.split("<br>");  
     //По очереди отсылаем куски текста юзеру, точнее - помещаем их в очередь  
     //исходящих сообщений уина, на котором этот юзер сидит.  
     for(int i=0;i<ss.length;i++){  

// Сюда вписываем то, что нужно убирать при выводе RSS ленты  
ss[i] = ss[i].replace("<?xml version=\"1.0\" encoding=\"windows-1251\"?>","");  
ss[i] = ss[i].replace("<rss version=\"2.0\">","");  
ss[i] = ss[i].replace("<channel>","");  
ss[i] = ss[i].replace("</channel>","");  
ss[i] = ss[i].replace("</rss>","");  
ss[i] = ss[i].replace("<title>","");  
ss[i] = ss[i].replace("</title>","");  
ss[i] = ss[i].replace("RP5.RU:","");  
ss[i] = ss[i].replace("<link>","");  
ss[i] = ss[i].replace("</link>","");  
ss[i] = ss[i].replace("\">","");  
ss[i] = ss[i].replace("<description>","");  
ss[i] = ss[i].replace("Наибольшая база населённых пунктов","");  
ss[i] = ss[i].replace("</description>","");  
ss[i] = ss[i].replace("<ttl>","");  
ss[i] = ss[i].replace("60</ttl>","");  
ss[i] = ss[i].replace("<item>","");  
ss[i] = ss[i].replace("</source>","");  
ss[i] = ss[i].replace("</item>","");  
ss[i] = ss[i].replace("<link></link>","");  
ss[i] = ss[i].replace("http://rp5.ru","");  
ss[i] = ss[i].replace("<source url=\"http://rp5.ru/rss","");  
ss[i] = ss[i].replace("04:00","Ночь");  
ss[i] = ss[i].replace("16:00","День");  
ss[i] = ss[i].replace("<category>","");  
ss[i] = ss[i].replace("</category>","");  
ss[i] = ss[i].replace("%)","% )");  
ss[i] = ss[i].replace("Погода","");  
ss[i] = ss[i].replace("    погода","");  
ss[i] = ss[i].replace(" в ","");  
ss[i] = ss[i].replace(" во ","");  
ss[i] = ss[i].replace("                  в","");  
ss[i] = ss[i].replace("(","( ");  
ss[i] = ss[i].replace("                 ","");  
ss[i] = ss[i].replace("\n","");  
ss[i] = ss[i].replace(" \n","");  
ss[i] = ss[i].replace("  \n","");  
ss[i] = ss[i].replace("                  ","\n");  
ss[i] = ss[i].replace("в ","");  
ss[i] = ss[i].replace("                  ","\n");  
ss[i] = ss[i].replace("            ","");  
ss[i] = ss[i].replace("        ","");  
ss[i] = ss[i].replace("Пн","\n Пн");  
ss[i] = ss[i].replace("Вт","\n Вт");  
ss[i] = ss[i].replace("Ср","\n Ср");  
ss[i] = ss[i].replace("Чт","\n Чт");  
ss[i] = ss[i].replace("Пт","\n Пт");  
ss[i] = ss[i].replace("Сб","\n Сб");  
ss[i] = ss[i].replace("Вс","\n Вс");  
ss[i] = ss[i].replace("<source url=","");  
ss[i] = ss[i].replace("\"/rss","");  

// ПРИ ДОБАВЛЕНИИ ГОРОДА ЗДЕСЬ НУЖНО МЕНЯТЬ ОБЯЗАТЕЛЬНО  
// ====================================================  
ss[i] = ss[i].replace("Москва:","");  
ss[i] = ss[i].replace("Москве","");   
ss[i] = ss[i].replace("/5490/ru","");  

// ----------------------------------------------------  
ss[i] = ss[i].replace("Санкт-Петербург:","");  
ss[i] = ss[i].replace("Санкт-Петербурге","");  
ss[i] = ss[i].replace("/7285/ru","");  

// ----------------------------------------------------  
ss[i] = ss[i].replace("Владимир:","");  
ss[i] = ss[i].replace("Владимире","");  
ss[i] = ss[i].replace("/2278/ru","");  

// ----------------------------------------------------  
ss[i] = ss[i].replace("Рязань:","");  
ss[i] = ss[i].replace("Рязани","");  
ss[i] = ss[i].replace("/7217/ru","");  

// ----------------------------------------------------  
ss[i] = ss[i].replace("Брянск:","");  
ss[i] = ss[i].replace("Брянске","");  
ss[i] = ss[i].replace("/1859/ru","");  

// ----------------------------------------------------  
ss[i] = ss[i].replace("Ростов-на-Дону:","");  
ss[i] = ss[i].replace("Ростове-на-Дону","");  
ss[i] = ss[i].replace("/7147/ru","");  

// ----------------------------------------------------  
ss[i] = ss[i].replace("Белореченск:","");  
ss[i] = ss[i].replace("Белореченске","");  
ss[i] = ss[i].replace("/1464/ru","");  

// ----------------------------------------------------  
ss[i] = ss[i].replace("Ярославль:","");  
ss[i] = ss[i].replace("Ярославле","");  
ss[i] = ss[i].replace("9462/ru","");  

// ----------------------------------------------------  
//ДОБАВЛЯЕМ ГОРОД  
// ----------------------------------------------------  
// ss[i] = ss[i].replace("НАЗВАНИЕ_ГОРОДА_В_ИМЕНИТЕЛЬНОМ_ПАДЕЖЕ:","");  
// ss[i] = ss[i].replace("НАЗВАНИЕ_ГОРОДА_В_МЕСТНОМ_ПАДЕЖЕ","");  
// ss[i] = ss[i].replace("/СЮДА_ЦИФЕРКУ/ru","");  

if(i1==1){  
        proc.mq.add(uin,"Погода в Москве:\n" + ss[i]);  
}  
if(i1==2){  
        proc.mq.add(uin,"Погода в Санкт-Петербурге:\n" + ss[i]);  
}  
if(i1==3){  
        proc.mq.add(uin,"Погода во Владимире:\n" + ss[i]);  
}  
if(i1==4){  
        proc.mq.add(uin,"Погода в Рязани:\n" + ss[i]);  
}  
if(i1==5){  
        proc.mq.add(uin,"Погода в Брянске:\n" + ss[i]);  
}  
if(i1==6){  
        proc.mq.add(uin,"Погода в Ростове-на-Дону:\n" + ss[i]);  
}  
if(i1==7){  
        proc.mq.add(uin,"Погода в Белореченске:\n" + ss[i]);  
}  
if(i1==8){  
        proc.mq.add(uin,"Погода в Ярославле:\n" + ss[i]);  
}  

// ==============================================================  
// ДОБАВЛЯЕМ НОВЫЙ ГОРОД (НАЧАЛО СВЕРХУ)  
//   if(i1==peremennaya){ // СМОТРИМ ВЫШЕ  
//   proc.mq.add(uin,"Погода в НАЗВАНИЕ_ГОРОДА:\n" + ss[i]);      // ТУТ МЕНЯЕМ  
//   }  
// ==============================================================  

     }  
} catch (Exception ex) {  
      ex.printStackTrace();  
      proc.mq.add(uin,"Ошибка "+ex.getMessage());  
}
 
tashanov93Дата: Суббота, 24.10.2009, 02:15 | Сообщение # 24
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: Offline
смена текста х-статуса

Code
/**скрипт для смены текста x-статусa  
* АВтов: аrhangel_ess  спс Sushka  
* работает по принципу !tx <text>  
*  
*   
*p.s.ПРи Использование Скрипта В исходниках, Пишим аВторство  
*Не НАписание КараетСя Бейсбольной Битой По ГОЛОве =)  
*/  

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("!х-текст","$s",39,name)) ;  
cmd.addAuth("sxtatus","Смена xстатуса");  
out="Ok";  
return;  
}  

// Проверим полномочия  
if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return;  
if(!cmd.auth(proc,uin, "textxstatus")) return;  

Vector v = cmd.getParser().parseArgs(msg);  
     String i2 = (String)v.get(0);  
proc.mq.add(uin,"text xСтатусa чата изменён");  
ChatProps.getInstance(cmd.srv.getName()).setStringProperty("icq.STATUS_MESSAGE2", i2);  
Manager.getInstance().getService(cmd.srv.getName()).getProps().save();
 
tashanov93Дата: Суббота, 24.10.2009, 02:16 | Сообщение # 25
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: 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("!удалитьхату","$n",39,name));  
     cmd.addAuth("uroom","Удаление комнат");  
     out="Ok";  
     return;  
}  

// Проверим полномочия  
if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return;  
if(!cmd.auth(proc,uin, "uroom")) return;  

try{  
//парсим  
     Vector v = cmd.getParser().parseArgs(msg);  
     int i = (Integer)v.get(0);  
//соединяемся с базой  
     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);  
//задаем sql запрос  
     String q = "DELETE FROM rooms WHERE id="+i+" LIMIT 1";  
//удаляем комнату  
     PreparedStatement pst = db.getDb().prepareStatement(q);  
     pst.execute();  
     pst.close();  
//Оповещаем  
     proc.mq.add(uin,"Удалена комната номер " + i);  
     }   catch (Exception ex) {  
         ex.printStackTrace();  
         proc.mq.add(uin,"Большая ошибка "+ex.getMessage());  
}/*Manager.restart();*/  //раскоментируйте если хотите перезагружать чат автоматом
 
tashanov93Дата: Суббота, 24.10.2009, 02:16 | Сообщение # 26
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: Offline
новый +все

Code
/**  
* X-статусы: просмотр списка пользователей во всём чате + x-статус + реклама из файла   
* (c) Indigo_85 - основа, AssassinS- модификация, fraer72-помощь  
*/  

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.addCommand("+аа", new Cmd("+все","",39,name));   
     out="Ok";  
     return;  
}  

// Проверим полномочия  
if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return;  

try{  
      int room = cmd.srv.us.getUser(uin).room;  
      String s = "Список чуваков в чате:\n\n[ID] - Ник [Статус] [Комната]\n";  

cmd.srv.us.getRoom(room).getTopic() + "\nСписок пользователей в чате:\n[ID] - Ник [Статус] [Комната]\n";  
String d = "]";  
String z = "[";  
                      Enumeration e = cmd.srv.cq.uq.keys();  
      int cnt=0;  
         if(cmd.psp.getBooleanProperty("adm.useAdmin"))  
          s += "[0] - " + cmd.radm.NICK + '\n';  
        while(e.hasMoreElements()){  
          String i = e.nextElement();  
          Users us = cmd.srv.us.getUser(i);  
          if(us.state==UserWork.STATE_CHAT)  
          cnt++;  
           String ss = "";  
                   File Persona = new File ("./UXstatus/"+us.id+".txt");  
                   if (Persona.exists()){  
                       ss += " [" + cmd.psp.loadText("./UXstatus/"+us.id+".txt");  
                       ss=ss.replace('\n',']');  
                   }  
                   s += z + us.id + "] - " + us.localnick + ss + " ["+ us.room + "]" + "\n";   
          }  
      s += "\nВсего пользователей в чате: ["+cnt + d;  
          s += "\nВсего за сегодня зашло чуваков в чат: [" + cmd.srv.us.statUsersCount() + d;  
          s += "\nВсего зарегано чуваков: ["+Integer.toString(cmd.srv.us.count()) + d;  
s += "\n";  
s += "\n";  

          s += cmd.psp.loadText("./text/ads.txt") + "\n";  
       
      proc.mq.add(uin, s);      

} catch (Exception ex) {  
      ex.printStackTrace();  
      proc.mq.add(uin,"Ошибка "+ex.getMessage());  
}
 
tashanov93Дата: Суббота, 24.10.2009, 02:17 | Сообщение # 27
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: 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.addAuth("ModList","Получить список админов");  
out="Ok";  
return;  
}  

if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return;  
//if(!cmd.auth(proc,uin, "ModList")) 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 = "Зеки:\n";  
try {  
PreparedStatement pst = db.getDb().prepareStatement("SELECT `id` FROM `users` WHERE `room`='-1' ");  
ResultSet rs = pst.executeQuery();  
while(rs.next()){  
Users us = cmd.srv.us.getUser(rs.getInt(1));  
s +=us.id +" - " + us.localnick+"\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:17 | Сообщение # 28
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: Offline
скрипт для просмотра гороскопа в чате

Code
/**  
* Выводим RSS Ленту (Гороскоп)  
* Masterzx  
*/  

import ru.jimbot.modules.http.HttpConnection;  
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("goroskop","Гороскоп...");                     
     out="Ok";  
     return;  
}  

// Проверим полномочия  
if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return;  
if(!cmd.auth(proc,uin, "goroskop")) return;                    // Проверка полномочия (если необходимо)  

try{  
//long time = System.currentTimeMillis();  
Vector v = cmd.getParser().parseArgs(msg);  
int i1 = (Integer)v.get(0);  
int i2 = 0;  
String s="";  

if(i1==0 || i1>=14){  
//proc.mq.add(uin,"Список городов с цифровыми обозначениями:\n");//Сори конечно но   
//зато теперь всем известно откуда часть скрипта))))   
s = cmd.psp.loadText("./text/гороскоп.txt");  
String[] ss = s.split("<br>");  
      for(int i=0;i<ss.length;i++){  
          proc.mq.add(uin,ss[i]);  
      }  
return;  
}  
if(i1==1){i1=2;i2=2;}else if(i1==2){i1=3;i2=3;}else{i2=i1=i1+1;}  
String s="";  
s =  MainProps.getStringFromHTTP("http://www.hyrax.ru/cgi-bin/bn_xml.cgi");   
String[] ss = s.split("<title>");  
String[] ss1 = s.split("<description>");  
ss = ss[i1].split("</title>");  
ss1 = ss1[i2].split("</description>");  
proc.mq.add(uin,"Ежедневный общий гороскоп:\n"+ss[0] + "\n" + ss1[0]);  
if(i1==2){return;}else {i2=i1=i1-1;}  
String s="";   
s =  MainProps.getStringFromHTTP("http://www.hyrax.ru/cgi-bin/love_xml.cgi");   
ss = s.split("<title>");  
ss1 = s.split("<description>");  
ss = ss[i1].split("</title>");  
ss1 = ss1[i2].split("</description>");  
proc.mq.add(uin,"Ежедневный любовный гороскоп:\n"+ss[0] + "\n" + ss1[0]);  
String s="";  
s =  MainProps.getStringFromHTTP("http://www.hyrax.ru/cgi-bin/mob_xml.cgi");   
ss = s.split("<title>");  
ss1 = s.split("<description>");  
ss = ss[i1].split("</title>");  
ss1 = ss1[i2].split("</description>");  
proc.mq.add(uin,"Ежедневный мобильный гороскоп:\n" + ss[0] + "\n" + ss1[0]);  
      
} catch (Exception ex) {  
      ex.printStackTrace();  
      proc.mq.add(uin,"Ошибка "+ex.getMessage());  
}
 
tashanov93Дата: Суббота, 24.10.2009, 02:18 | Сообщение # 29
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: Offline
мои скрипт который я сам написал

Code
/**  
* Скрипт для вывода случайного секретного текста из файла переделал мастер  
* 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.*;  
import java.util.Random;  

//Установка скрипта как обработчика команды  
if(in.equals("install")){  
     cmd.addCommand("!секрет", new Cmd("!секрет","$s",39,name));  
     cmd.addAuth("Anek","Сервис анекдотов");  
     out="Ok";  
     return;  
}  

// Проверим полномочия  
if(!cmd.isChat(proc,uin) && !cmd.psp.testAdmin(uin)) return;  
if(!cmd.auth(proc,uin, "Anek")) return;  

try {  
     //Считываем анекдоты  
     String s = cmd.psp.loadText("./text/secret.txt");  
     String[] ss = s.split("<end>");  
     int R = (int) ((Math.random()*ss.length));  

     proc.mq.add(uin,"Секретные команды!>> \n"+ss[R]);  
} catch (Exception ex) {  
     ex.printStackTrace();  
     Log.talk("Error save msg: " + ex.getMessage());  
     proc.mq.add(uin,"Обшибка " + ex.getMessage());  
}

как поставите его в чат и в чате наберите команду !секрет и сами все поймете
не забудьте пережагрузить чат

 
tashanov93Дата: Суббота, 24.10.2009, 02:20 | Сообщение # 30
Генералиссимус
Группа: Администраторы
Сообщений: 113
Награды: 4
Репутация: 223
Статус: 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.addCommand("!в", new Cmd("!в","",39,name));  
     cmd.addCommand("!exit", new Cmd("!exit","",39,name));  
     out="Ok";  
     return;  
}  

      try{  
     String MESSAGE = " Зачем вы уходите от нас? *BYE* Возвращайтесь поскорее =),а и ещё РАЗДАЙ НОМЕР ЧАТА СВОИМ ДРУЗЬЯМ!>5816-53-007<";  
     String MESSAGE2 = " Убежал(а) от нас *BYE*";  
String MESSAGE3 = "[";  
     String MESSAGE4 = "] ";  
          Users uss = cmd.srv.us.getUser(uin);  
        if(uss.room==7){ proc.mq.add(uin,"НУ-НУ с тюрьмы сбежать захотел? хрен тебе!!!");  
        return;  
        }  
          if (uss.state==UserWork.STATE_CHAT ||  
                  uss.state==UserWork.STATE_OFFLINE) {  
              if(!ChatProps.getInstance(cmd.srv.getName()).getBooleanProperty("chat.NoDelContactList")){  
                  Log.info("Delete contact " + uin);  
                  proc.RemoveContactList(uin);  
              }  
          } else  
              return; // Юзера нет в чате - игнорируем команду  
          uss.state = UserWork.STATE_NO_CHAT;  
          cmd.srv.us.updateUser(uss);  
          Log.talk(MESSAGE3 + uss.id + MESSAGE4 + uss.localnick + MESSAGE2);  
          cmd.srv.us.db.log(uss.id,uin,"STATE_OUT",uss.localnick + MESSAGE2,uss.room);  
          cmd.srv.us.db.event(uss.id, uin, "STATE_OUT", 0, "", uss.localnick + " убежал(а) с чата!");  
          cmd.srv.cq.addMsg(MESSAGE3 + uss.id + MESSAGE4 + uss.localnick + MESSAGE2, uss.sn, uss.room);  
          proc.mq.add(uin, uss.localnick +  MESSAGE);  
          cmd.srv.cq.delUser(uin);     
} catch (Exception ex){  
       ex.printStackTrace();  
       proc.mq.add(uin,ex.getMessage());  
}
 
  • Страница 2 из 4
  • «
  • 1
  • 2
  • 3
  • 4
  • »
Поиск: