Добро пожаловать, уважаемый Гость
Новые сообщения · Участники · Правила форума · Поиск · RSS
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: SpartaN, joker, Sehy, 5ilay  
КАК ЖЕ делать скрипты?!!!
SehyДата: Вторник, 08.06.2010, 23:42 | Сообщение # 1
Сообщений: 240
Награды: 11
Репутация: 29
Здесь я вам расскажу более подробно, как своими умелыми ручищами делать скрипты к джимм боту wink
 
SehyДата: Среда, 09.06.2010, 00:17 | Сообщение # 2
Сообщений: 240
Награды: 11
Репутация: 29
Пишем скрипт на jimbot)

По ходу буду выкладывать примеры с подробным описанием.

Для начала хочу рассказать немного о скриптах и их место положении...

Стандартом всех ботов является размещение скриптов в следующей папке
.\ваш JimBot\services\ChatBot\scripts\command

Формат файла скриптов является - ???.bsh
Для запуска скрипта, т.е. для того чтобы он функционировал и работал (если он ещё без багов) нужно закинуть в папку с .\command
и перезапустить бот чтобы он смог считать команду...

А теперь о скрипто-строении для jimbota

И так возьмём скрипт входа в наш чатик
Здесь же опишу что к чему как)

 
SehyДата: Среда, 09.06.2010, 00:48 | Сообщение # 3
Сообщений: 240
Награды: 11
Репутация: 29
делаем игры в чат

И так создадим свой скрипт с нуля...

первое что делаем...
Открываем блокнот или другой текстовый редактор (лучше ноутпэйд)
потом сохраняем в файл в формате .bsh
кидаем в папку коммандс и пишем...

Создадим игру пожарник)))

Quote

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, "ruletka")) return;

Можно и не писать, и игра в этом случае будет доступна для всех...кроме забаненых конечно ;-)

try
{

(пусто)

}
catch (Exception ex)
{
ex.printStackTrace();
proc.mq.add(uin,"Ошибка "+ex.getMessage());
}

Это основа нашего скрипта...

 
SehyДата: Среда, 09.06.2010, 00:53 | Сообщение # 4
Сообщений: 240
Награды: 11
Репутация: 29
Далее... начнём писать условия по которым будет распознавать скрипт ресурсы и под-условия команды

Quote

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, "ruletka")) return;
Можно и не писать, и игра в этом случае будет доступна для всех...кроме забаненых конечно ;-)

try
{

Vector v = cmd.getParser().parseArgs(msg); \\ установка в парсер
int s = (Integer)v.get(0); // набранное число пользователем
int num = (int) ((Math.random()*6)); // случаиное число от 0 до 6
int nu = (int) ((Math.random()*6)); // случаиное число кика от 0 до 6 - можно поменять

\\ также можно сделать от 1 до 6 например: int nu = (int) ((Math.random(1)*6))

Users uss = cmd.srv.us.getUser(uin);\\ тот кто набрал команду

(........далее см. дальше..........)


}
catch (Exception ex)
{
ex.printStackTrace();
proc.mq.add(uin,"Ошибка "+ex.getMessage());
}

 
SehyДата: Среда, 09.06.2010, 00:57 | Сообщение # 5
Сообщений: 240
Награды: 11
Репутация: 29
Потом вместо (........далее см. дальше..........) пишем ограничение комнаты для игры и сообщение о нарушении:

Quote

if(uss.room!=222){
proc.mq.add(uin,"Так так....:-) играть в [ 222 ] - " + cmd.srv.us.getRoom(222).getName() + "");
return;
}

\\ где cmd.srv.us.getRoom(222).getName() - это название команты

\\ п.с. обращайте внимание на "+" после скобочек.... (uin, "текст" + код + "текст" + код + код + код + "текст");

 
SehyДата: Среда, 09.06.2010, 01:00 | Сообщение # 6
Сообщений: 240
Награды: 11
Репутация: 29
ТЕперь пишем правила игры:

Quote

country - задан как рейтинг... НЕ В КАЖДЫХ ЧАТАХ

if(uss.country==0){
proc.mq.add(uin," > %)Рулетка: Число Ай яй яй...;D У вас рейтинг 0%! Пополните рейтинг...Обменяйте баллы викторины на % или купите:-)");
return; \\ - обезательный код, надающий скрипту выпонятся дальше
}

if(s<1){
proc.mq.add(uin," > Число должно быть от 1 до 6. :-)");
return;
}
if(s>6){
proc.mq.add(uin," > Число должно быть от 1 до 6. :-)");
return;
}
\\ ну тут и ламеру понятно 1 класс

 
SehyДата: Среда, 09.06.2010, 01:12 | Сообщение # 7
Сообщений: 240
Награды: 11
Репутация: 29
После установки правил, начинаем делать саму игру:

Quote

cmd.srv.cq.addMsg(" > качественный огнетушитель был в: [" + num + " баллон] , а " + uss.localnick + " взял как всегда: [" + s + " баллон] ", "", uss.room);

if(s==num)
{
int reiting = uss.country+1;
uss.country=reiting;
cmd.srv.us.updateUser(uss);

cmd.srv.cq.addMsg(" > Еееее *YAHOO* Виктория!! %) " + uss.localnick + " взял(а) рабочий огнетушитель и полуает +1% рейтинга!:-) его(её) рейтинг составляет [ "+uss.country+"%]", "", uss.room);
proc.mq.add(uin," > Еееее *YAHOO* рабочий огнетушитель был в: [" + num + "] , а ты взял(а): [" + s + "] ТЫ потушил(а) пожар и спас(ла) многих чуваков:-P зза это все собрались с деньгами и купили тебе +1% рейтинга, всего у тебя [ "+uss.country+"%]");

}
else \\\ иначе (проигрыш)
{

int reiting = uss.country-1;
uss.country=reiting;
cmd.srv.us.updateUser(uss);

proc.mq.add(uin," > Ты взял(а) не тот баллон, ты пообежал(а) тушить а твой огнетушитель не сработал... Бабах @= тебя вынесло взрывной волной на ["+nu+" минут] и у тебя -1% рейтинга, а всего [ "+uss.country+" %]");

cmd.tkick(proc, uin, nu, 0, "Тебя выкинуло из чата взрывной волной!");

}

Всё игра готова wink а не так уж это и сложно tease

 
SehyДата: Среда, 09.06.2010, 01:14 | Сообщение # 8
Сообщений: 240
Награды: 11
Репутация: 29
Потом напишу как создавать более сложные игры, и ещё некоторые хитрости За ранее прошу прощения за грамматические ошибки))) если они есть... сессия устал как никак
 
SehyДата: Среда, 09.06.2010, 12:45 | Сообщение # 9
Сообщений: 240
Награды: 11
Репутация: 29
А вот здесь я опишу как сделать, отображения имен групп и настройка дизайна по команде !тут и !все

Команда !все... !тут или +аа, почти тоже самое)

Всё что нам нужно это вот это:

Quote

String n = us.localnick.replace("["+us.id+"] ~ ","");
cmd.srv.us.updateUser(us);

switch (g){
case "loh": s += "[" + us.id + "] ~ [" + us.country + "%] "+ n + ss + " ["+ us.ball +"$] [лох] ["+us.room+"]\n"; break;
case "user": s += "[" + us.id + "] ~ [" + us.country + "%] "+ n + ss + " ["+ us.ball +"$] [гость] ["+us.room+"]\n"; break;
case "moder": s += "[" + us.id + "] ~ [" + us.country + "%] "+ n + ss + " ["+ us.ball +"$] [модератор] ["+us.room+"]\n"; break;
case "admin": s += "[" + us.id + "] ~ [" + us.country + "%] "+ n + ss + " ["+ us.ball +"$] [админ] ["+us.room+"]\n"; break;

}

Думаю уже вам стало понятно, что к чему..)
И так код сообщения для вывода группы:

case "user": s += "[" + us.id + "] ~ "+ n + ss + " ["+ us.ball +"$] [гость] ["+us.room+"]\n"; break;

для вставки новой группы, копируем и редакитируем...

..\\ [" + us.country + "%] - это поидее рейтинг но это не для всех ботов

"user" - группа в админке
[" + us.id + "] - ид пользователя
+ n.. - это ник
+ss - это статус юзера (НУЖЕН СПЕЦИАЛЬНЫЙ ОТДЕЛЬНЫЙ СКРИПТ)
["+ us.ball +"$] - деньги
[гость] - Здесь пишем отображение альтернативе группы
["+us.room+"] - комната в которой юзер
\n - переход на новую строку, без этого кода все пользователи будут указаны в строчку

По идее простое отображение будет таким...

case "user": s += "[" + us.id + "] - "+ n + " [юзер] ["+us.room+"]\n"; break;

Так же можно задать разделяющую полосу для посчёта статистики:

вот исходный код который указан в скрипте

Quote

proc.mq.add(uin,s+"\n > всего в чате: "+cnt+"\n > всего зашло в чат: " + cmd.srv.us.statUsersCount()+"\n > всего зарегано: "+Integer.toString(cmd.srv.us.count()));

Будет так...
proc.mq.add(uin,s+"\n____________________\nВсего в чате: "+cnt+"\nВсего зашло в чат: " + cmd.srv.us.statUsersCount()+"\nВсего зарегестрировано: "+Integer.toString(cmd.srv.us.count()) + "\n\nВаша реклама");

Рекламу можно настроить чисто на скрипте с добавлением чисто админом или модером прямо с чата, а не через скрипт...
Но это уже в следующей теме...

 
max1Дата: Среда, 30.06.2010, 15:02 | Сообщение # 10
Сообщений: 1
Награды: 0
Репутация: 0
ykktk

Добавлено (30.06.2010, 15:01)
---------------------------------------------
всё равно не научил[color=green]

Добавлено (30.06.2010, 15:02)
---------------------------------------------
да [color=blue]

Добавлено (30.06.2010, 15:02)
---------------------------------------------
[color=red] да pardon


3131re
 
SpartaNДата: Суббота, 03.07.2010, 12:17 | Сообщение # 11






А не понимаешь потому, что не хочешь понять....мозгами нужно тоже шевелить...а не только тупо всё готовенькое брать..
 
ЛЁХАДата: Вторник, 06.07.2010, 15:40 | Сообщение # 12
Сообщений: 3
Награды: 0
Репутация: 0
выложите собственную сборку скриптов для джимбот 0.3.6 wink

создаю чаты за 50 и за 100рублей
за 50 простой без настроек за 100 навороченый с настройками
 
армянинДата: Четверг, 15.07.2010, 23:52 | Сообщение # 13
Сообщений: 7
Награды: 0
Репутация: 0
ахахахах,Саш,ты у меня ещё спрашивал куда кидать скрипт???

армянин)))
 
TrayserДата: Воскресенье, 18.07.2010, 17:15 | Сообщение # 14
Сообщений: 10
Награды: 0
Репутация: 1
Sehy, А можеш обьяснить про обычный скрипт. что то вроде !поцеловать. А то мне кажется что на её примере я пойму лучше...... :'(

Mik095799max
 
PUMAДата: Пятница, 26.11.2010, 11:53 | Сообщение # 15
Сообщений: 1
Награды: 0
Репутация: 0
russian
 
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:
Меню
Сейчас на сайте



Нас сегодня посетили:
LavillHoult
Топ пользователей
Sehy
Рейтинг: 29%
Постов: 240
Житель
joker
Рейтинг: 11%
Постов: 219
Постоялец
5ilay
Рейтинг: 21%
Постов: 161
Пользователь
Rus
Рейтинг: 2%
Постов: 114
Новичек
adm56
Рейтинг: 2%
Постов: 81
Гость
Кнопка сайта
получить код

Материальная помощь проекту:

Webmoney
R394598304545 - р
Z111864586950 - $
E196222960009 - €
или Яндекс
41001552556741 - р

www.megastock.ru V1T.RU
контекстная реклама, яндекс директ

Rambler's Top100

мини-чат

Вы не авторизованы!

Здравствуйте уважаемый Гость нашего портала!
Пожалуйста зарегистрируйтесь и зайдите под своим логином!

ICQ-чаты

»{Kurganinsk-siti}«
621770

``[ПуфЫстЫй][CHAT]``
9869418

super-mega chat
7457878

>>Gr[i]nChat<<
8952185

Статистика
Зарегистрировано на сайте:
Всего: 7410
Новых за месяц: 0
Новых за неделю: 0
Новых вчера: 0
Новых сегодня: 0


Из них:
Парней: 7294
Девушек: 116
Друзья

TEGPRO





Design of portal - by Sehy 2024 All Rights Reserved
jimbot-portal.net.ru ©