Название: Анаграмма
Версия: 1.1
Автор: Epic
Программа: mIRC
Скрипт: Anagram.mrc
Описание: Простая игра в анаграмму на внимательность и эрудицию. Скрипт случайным образом выбирает из файла слово, в котором перемешиваются буквы, после чего игрокам необходимо отгадать/распутать это слово. В игре нет статистики и подсчёта очков, но при необходимости это можно добавить в следующей версии.
Требование: Необходимо создать в корневой папке бота текстовый файл по пути "scripts\Anagram\words.txt" и заполнить его разными словами в столбик. В зависимости от того, какой сложности вы хотите сделать игру, вы можете подобрать слова с определённым количеством букв. Чем будет больше в файле слов и чем длиннее они будут составлены, тем разнообразнее и сложнее будет отгадывать игрокам такие слова.
Настройка: С помощью специальных алиасов в нижней части кода вы можете изменить возвращаемые параметры на необходимые вам значения:
anag_commands - возвращает список вариантов команды (через запятую), которая является главной для запуска и управления игрой.
anag_file - возвращает путь к файлу со списком слов, которые случайным образом будут выбираться и перемешиваться для игры.
anag_timer_answer - возвращает число времени в секундах, через которое будет отправлено сообщение с правильным ответом.
anag_timer_next - возвращает число времени в секундах, через которое будет отправлено следующее сообщение с новой анаграммой.
Управление: Синтаксис команды: !анаграмма [стоп]
Установка:
Откройте редактор скриптов вашего клиента с помощью комбинации клавиш "ALT+R" (на вкладке "Remote").
Выберите в верхнем меню пункт "File/New", чтобы открыть новый файл и разместите в нём этот код.
Выберите в верхнем меню пункт "File/Save As..." и сохраните код по пути "scripts\Anagram\Anagram.mrc".
Если ранее была установлена предыдущая версия кода, то замените его на этот новый код скрипта.
Скачать 💾
;##################################################################### ;# Название: Анаграмма v1.1 ;# Автор: Epic (https://forum.epicnet.ru, irc.epicnet.ru 6667 #Code) ;# Описание: Простая игра в анаграмму на внимательность и эрудицию. Скрипт случайным образом выбирает из файла слово, в котором перемешиваются буквы, после чего игрокам необходимо отгадать/распутать это слово. ;# Управление: !анаграмма [стоп] ;##################################################################### on *:TEXT:*:#:{ if ($istok($anag_commands,$strip($1),44)) { if ($istok(стоп stop,$strip($2),32)) { if ($hget($+(anag,$chan),start)) { hdel $+(anag,$chan) start | $+(.timerAnagram,$chan,*) off | msg $chan 10Игра в анаграмму остановлена! | return } } else { if ($hget($+(anag,$chan),start)) { notice $nick 10Игра в анаграмму уже запущена... } | else { hadd -m $+(anag,$chan) start $true | anagram_start $chan } } } elseif ($hget($+(anag,$chan),start) && $lower($strip($1)) == $hget($+(anag,$chan),word)) { $+(.timerAnagram,$chan,*) off | $+(.timerAnagram,$chan,Next) 1 $anag_timer_next anagram_start $unsafe($chan) msg $chan $+(4,$nick) 10правильно! Это слово:7 $upper($strip($1)) } } alias -l anagram_start { hadd -m $+(anag,$1) word $read($anag_file,nt) | var %word $hget($+(anag,$1),word), %w_split, %w_mix, %i 1, %x 1 while (%i <= $len($hget($+(anag,$1),word))) { %w_split = %w_split $mid(%word,%i,1) | inc %i } | var %num_split $numtok(%w_split,32) while (%x <= %num_split) { var %r $rand(1,$numtok(%w_split,32)) | %w_mix = %w_mix $+ $gettok(%w_split,%r,32) | %w_split = $deltok(%w_split,%r,32) | inc %x } if (%w_mix == $hget($+(anag,$1),word)) { anagram_start $1 | return } msg $1 10Анаграмма:7 $upper(%w_mix) | $+(.timerAnagram,$1,Answer) 1 $anag_timer_answer anagram_answer $unsafe($1) } alias -l anagram_answer { msg $1 10Никто не смог распутать слово:4 $upper($hget($+(anag,$1),word)) | $+(.timerAnagram,$1,Next) 1 $anag_timer_next anagram_start $unsafe($1) } alias -l anag_commands { return !анаг,!анаграмма,!анаграммы,!anag,!anagram,!anagrams } alias -l anag_file { return scripts\Anagram\words.txt } alias -l anag_timer_answer { return 60 } alias -l anag_timer_next { return 5 }
P.S. Если вы столкнулись с трудностями установки скрипта или вы обнаружили ошибки, а может быть у вас возникли новые идеи по модификации, то обязательно оставьте здесь свой комментарий со списком всех ваших запросов, с подробным описанием и примерами для каждого пункта.
- Подпись автора
[html]<style>img {vertical-align:middle;}.hnet{color:#FFFFFF;}.hstar{color:#DE0000;}.htext{font-family:Verdana;font-size:13px;color:#6E1E00;}.heading{font-family:Verdana;font-size:13px;font-weight:bold;background-color:#4897E7;}.stitle{font-family:Verdana;font-size:12px;}.dot{color:#808000;}.desc{color:#ADADAD;}a .curl{font-family:Verdana;font-size:13px;color:#3A92CD;}</style><table><tr><td width="20px" height="20px"><img src="http://forumstatic.ru/files/000d/c9/8c/34681.jpg"></td><td><a href="http://forum.epicnet.ru/viewtopic.php?id=234"><span class="heading"> <span class="hstar">★</span> <span class="hnet">EpicNet.Ru</span> <span class="hstar">★</span> </span><span class="htext"> - IRC Чат © 2008</span></a></td></tr><tr><td></td><td><div class="stitle"><span class="dot">•</span> <span class="desc">Вход через вебгейт:</span> <a href="http://irc.epicnet.ru"><span class="curl">http://irc.epicnet.ru</span></a><br><span class="dot">•</span> <span class="desc">Сервер:</span> irc.epicnet.ru <span class="desc">Порты:</span> 6667, 6668 (ssl)<br><div></td></tr></table>[/html]