Скрипт базы героев.

Решение вопросов при работе с TCL скриптами.

Модератор: Модераторы

Скрипт базы героев.

Сообщение ksd » 24 июн 2010 14:05

Код: Выделить всё
bind pub - !hero pub:heroes
proc pub:heroes {nick host hand chan text} {
   set hero1 "троль"
   set hero2 "эльф"
   set hero3 "человек"
   set hero4 "хоббит"
   set kto [lindex $text 0]
      if {$kto == ""} {
         putquick "NOTICE $nick :Герои: $hero1 $hero2 $hero3 $hero4"
return
   }
      if {$kto == $hero1} {
   set data "троль: бла, бла, бла "
         putquick "PRIVMSG $chan :$data"
return
   }
      if {$kto == $hero2} {
   set data "Эльф, ссуко, остроухий!"
         putquick "PRIVMSG $chan :$data"
return
   }
      if {$kto == $hero3} {
   set data "Человек, ссуко,  разъебай!"
         putquick "PRIVMSG $chan :$data"
return
   }
      if {$kto == $hero4} {
   set data "Хоббит, ссуко, мелкий!"
         putquick "PRIVMSG $chan :$data"
return
   }
      putquick "NOTICE $nick :Чё-то я не знаю такую расу..."
   }


скрипт выводит инофрмацию по героям, а как сделать если в базе нету героя, а юзер знает про него и хочет добавить в базу, напрмиер командой !добавить <ГЕРОЙ> <Описание>
Последний раз редактировалось tvrsh 24 июн 2010 22:24, всего редактировалось 1 раз.
Причина: Переименовал топик в более конкретное название.
ksd
 
Сообщения: 19
Зарегистрирован: 24 июн 2010 10:05
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.19+suzi

Re: Скрипт базы героев.

Сообщение tvrsh » 24 июн 2010 22:32

База героев это эти четыре строки чтоли?
    set hero1 "троль"
   set hero2 "эльф"
   set hero3 "человек"
   set hero4 "хоббит"

Если да, то лучше хранить ее в текстовом файле по названию героя в каждой строке. Дописываешь в файл новых героев. Как дописывать строки в файл написано тут: Работа с файлами. А чтобы не дописать туда повторяющихся героев читай тут: Дописываем отсутствующие строки в файл.
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi

Re: Скрипт базы героев.

Сообщение ksd » 15 июл 2010 22:17

а как сделать, что бы бот понимал такую команду Троль, ТролЬ и тд?
ksd
 
Сообщения: 19
Зарегистрирован: 24 июн 2010 10:05
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Версия бота: Eggdrop 1.6.19+suzi

Re: Скрипт базы героев.

Сообщение tvrsh » 16 июл 2010 08:02

Вот так:
bind pub - Троль процедура
bind pub - ТролЬ процедура

Или ловить весь текст используя
bind pubm - "*" процедура
и потом искать в нем ключевые слова:
if {[string match "*Троль*"]} { действие }
Have fun.
-
Получить помощь можно на каналах #egghelp в сети IrcNet.ru и #eggdrop в сети RusNet(Ключ канала eggdrop).
Перед созданием новой темы внимательно читайте Правила оформления топиков.
Аватара пользователя
tvrsh
 
Сообщения: 1230
Зарегистрирован: 19 авг 2008 16:55
Откуда: Russian Federation, Podolsk
Благодарил (а): 6 раз.
Поблагодарили: 130 раз.
Версия бота: Eggdrop 1.6.20+suzi


Вернуться в TCL скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16

cron