Вход Регистрация
Файл: gamele.ru/inc/maps/QUEST.php
Строк: 1353
<?
$add_parameters 
= array ();

function 
show_add_params ($quest,$param) {
global 
$add_parameters;
    if (
count($add_parameters[$quest])==0):
        
create_add_params ($quest);
    endif;
    return 
$add_parameters[$quest][$param];
}

function 
create_add_params ($quest) {
global 
$add_parameters;
    
$add_parameters[$quest] = array ('add_text'=>'','st_par'=>'');
    if (
$quest=='wizard_2'):
        
$st_params '';
        
$add_text '';
        
$temp = array();
        for (
$a=1,$b=5;$a<$b;$a++):
            
$temp[] = 'heal_otv_'.round(rand(1,8));
        endfor;
        
sort($temp);
        
$names = array ('heal_otv_1'=>'Настой на Алоэ','heal_otv_2'=>'Настой на Астрагале','heal_otv_3'=>'Настой на Подорожнике','heal_otv_4'=>'Настой на Пустырнике','heal_otv_5'=>'Настой на Шалфее','heal_otv_6'=>'Настой на Каланхоэ','heal_otv_7'=>'Настой на Мяте','heal_otv_8'=>'Настой на Душице');
        foreach (
$temp as $t):
            if (
$st_params<>''): $st_params $st_params.'|'; endif;
            if (
$add_text<>''): $add_text=$add_text.', '; endif;
            
$st_params $st_params.$t;
            
$add_text $add_text.$names[$t];
        endforeach;
        
$add_parameters[$quest]['add_text'] = $add_text;
        
$add_parameters[$quest]['st_par'] = $st_params;
    endif;
}


$all_texts = array (
    
'taverna_1' => array (
        
"start"=>"Здравствуй, <b>".$pers["login"]."</b>!<br>Не откажи мне в помощи. Посетителей много, а обоз с рыбой где-то задерживается. Боюсь что запасы мои вот-вот закончатся. Ежели ты не чужд рыбной ловли, принеси-ка мне 15 рыбок каких-нибудь. А я уж тебя отблагодарю как смогу.<br>Спасибо!<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=taverna_1&step=1&vcode=".VCODE.""'>",
        
"ready"=>"О, <b>".$pers["login"]."</b>, ты уже вернулся?<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=taverna_1&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Ну, <b>".$pers["login"]."</b>, спасибо, помог ты мне! Выручил трактирщика!<br>Вот тебе и подарок заслуженный!<br>И помни - если занесет тебя нелегкая к трактирщику, найду я для тебя еще задание!",
        
"failure"=>"Эх, <b>".$pers["login"]."</b>, <b>".$pers["login"]."</b>...<br>Понадеялся я на тебя, а зря... Рыбка-то твоя уже протухла!<br>Ну ничего, может в следующий раз порасторопней будешь.",
        
"not_yet"=>"О, <b>".$pers["login"]."</b>, ты уже вернулся?<br>А нет, ты еще не выполнил мое поручение.",
        
"ill_wait"=>"Спасибо что взялся за мое задание!"
    
),
    
'taverna_2' => array (
        
"start"=>"Здравствуй, <b>".$pers["login"]."</b>!<br>Ага, вспомнил меня! Ежели у тебя есть время свободное, то найду чем тебя занять. <br>Смотри-ка, и правда есть для тебя занятие. Запасы моей Персиковой Настойки подходят к концу, надо чтобы ты принес мне 10 персиков.<br>Ну а я, само собой, тебя отблагодарю!<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=taverna_2&step=1&vcode=".VCODE.""'>",
        
"ready"=>"О, <b>".$pers["login"]."</b>, ты уже вернулся?<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=taverna_2&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Ну, <b>".$pers["login"]."</b>, спасибо, помог ты мне! Пойду займусь готовкой. Нравится мне с тобой сотрудничать. Будет время - заходи.",
        
"failure"=>"Эх, <b>".$pers["login"]."</b>, <b>".$pers["login"]."</b>...<br>Закончились мои запасы настойки, и теперь ко мне никто не ходит... А пока новая будет готова, это ж сколько времени!<br>Бросать мне придется это дело...",
        
"not_yet"=>"О, <b>".$pers["login"]."</b>, ты уже вернулся?<br>А нет, ты еще не выполнил мое поручение.",
        
"ill_wait"=>"Спасибо что взялся за мое задание!"
    
),
    
'taverna_3' => array (
        
"start"=>"Привет, <b>".$pers["login"]."</b>, старый друг!<br>А я только вот что думал - кто же может мне помочь, порученьице небольшое на себя взять, и ты зашел! Сам видишь - постетители у меня есть постоянно, в чем несомненно есть и твоя заслуга. А мне бы отлучиться неплохо - поговорить надо со старым другом. Так вот - не мог бы ты выручить меня еще раз? Отнести письмо моему старому другу? Вот оно! Идти тут недалеко - к старому волшебнику дорогу все знают!<br>Надеюсь на твою помощь, а сам побегу посетителей обслуживать!<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=taverna_3&step=1&vcode=".VCODE.""'>",
        
"ready"=>"О, <b>".$pers["login"]."</b>, ты уже вернулся?<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=taverna_3&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Ну, <b>".$pers["login"]."</b>, спасибо, помог ты мне! Понимаю что устал, и отблагодарю как смогу!",
        
"failure"=>"Эх, <b>".$pers["login"]."</b>, <b>".$pers["login"]."</b>...<br>Закончились мои запасы настойки, и теперь ко мне никто не ходит... А пока новая будет готова, это ж сколько времени!<br>Бросать мне придется это дело...",
        
"not_yet"=>"О, <b>".$pers["login"]."</b>, ты уже вернулся?<br>А нет, ты еще не выполнил мое поручение.",
        
"ill_wait"=>"Спасибо что взялся за мое задание!"
    
),
    
'taverna_4' => array (
        
"start"=>"Здравствуй, <strong>".$pers["login"]."</strong>. <br />Давненько ты ко мне не заглядывал. Тут такое на днях произошло, не поверишь! Шел через наш город караван. Лошади у них странные – двугорбые, погонщики черные, как сажей вымазанные, на головах тряпки намотаны. Остановились они у меня, настойки персиковой испили, а вот от еды отказались. Видно не водится в их краях рыба. Они через день (3 дня) обратно идти будут, надо к тому времени, новое блюдо приготовить. Я, сам понимаешь, из таверны ни ногой. Одна надежда на тебя<br /><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=taverna_4&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Принес все?<br /><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=taverna_4&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Вот молодец. Побегу готовить. Заходи и тебя угощу",
        
"failure"=>"Опоздал ты с грибами. Прошел уже караван. Добра всякого везли, но как узнали, что меню у меня все тоже, так и уехали",
        
"not_yet"=>"Еще не принес?<br />Потарапливайся, караван вот-вот пойдет!",
        
"ill_wait"=>"Спасибо, знал, что ты не откажешься. Хочу я гостей наших угостить блюдами грибными. Принеси мне грибов разных съедобных, может от них они не откажутся."
    
),
    
'taverna_5' => array (
        
"start"=>"Ох! Горе, горе! <br />Не понравились грибы караванщикам! Так они недовольны были, что всю посуду перебили. Как мне теперь людей кормить!? Выручай!<br /><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=taverna_5&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Уже вернулся?<br /><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=taverna_5&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Ух, какие тарелки! Эти точно не разобьют. Порадовал ты меня.",
        
"failure"=>"Не получилось? Не надо мне рассказывать, что у тебя не так пошло. Некогда мне тебя сейчас слушать. Найдутся и порасторопнее бойцы.",
        
"not_yet"=>"Торопись, <strong>".$pers["login"]."</strong>, торопись.",
        
"ill_wait"=>"Сходи в лавку. Принеси мне 20 тарелок."
    
),
    
'wizard_1' => array(
        
"start"=>"Приветствую тебя, путник. Как звать-то тебя? <b>".$pers["login"]."</b>?<br>Довелось мне слышать, что ты воин неплохой? Ну а коль неплохой, докажи делом!<br>Для дел моих волшебнических надо мне чешуек драконьих. Ну знаешь, Золотого, Красного и Зеленого драконов. По десять штучек всего лишь!<br>    Для настоящего воина это мелочь, ну да порадуй старика. А я уж тебя отблагодарю, не забуду!<br>    <input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=wizard_1&step=1&vcode=".VCODE.""'>",
        
"ready"=>"О, <b>".$pers["login"]."</b>, ты уже вернулся?<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=wizard_1&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Вот уж действительно не врет молва! Великий ты воин, <b>".$pers["login"]."</b>!<br>Вот тебе и подарок заслуженный!<br>Ну а я через несколько дней еще себе зелье варить буду. Заходи, поможешь!",
        
"failure"=>"Разочаровал ты меня, <b>".$pers["login"]."</b><br>Не пришел ты вовремя, зелье-то мое и протухло.<br>Уйди с глаз моих долой, пока не испепелил!",
        
"not_yet"=>"О, <b>".$pers["login"]."</b>, ты уже вернулся?<br>А нет, ты еще не выполнил мое поручение.",
        
"ill_wait"=>"Спасибо что взялся за мое задание!"
    
),
    
'wizard_2' => array(
        
"start"=>"Кто это там на пороге? Никак целитель!<br>Чую, чую я запах трав целебных. Никак травы вокруг дома моего высматривал? Ну да ничего, прощаю я тебя.<br>А ведь правду про вашего брата говорят - как где беда или болезнь какая - вы тут как тут! Вот и сейчас мне помощь твоя нужна очень. Знакомая моя заболела сильно, лекарство надо сварить срочно, а я не могу ее оставить одну. А вот если ты сваришь для меня лекарство это, буду премного тебе благодарен!<br>Ну что, берешься?<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=wizard_2&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Ох, ты вернулся вовремя.<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=wizard_2&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Ну спасибо тебе! Обрадовал ты меня! Да и поступил благородно - жизнь человеку спас!<br>Вот тебе и подарок заслуженный!<br>Не забывай старика, заходи почаще.",
        
"failure"=>"Убирайся отсюда. Не смог ты помочь мне.",
        
"not_yet"=>"Ох, давай скорее, поторапливайся! Время на исходе!",
        
"ill_wait"=>"Запомни рецепт: <b>".show_add_params ('wizard_2','add_text')."</b><br>Спасибо что взялся за мое задание!"
    
),
    
'wizard_3' => array(
        
"start"=>"Привет, <strong>".$pers["login"]."</strong>! Снова за заданием пожаловал?<br>Пожалуй надется для тебя поручение. Раскололась у меня моя любимая миска, необходимая мне для приготовления зелий. И не смогу я закончить одно дело, отнявшее у меня столько времени. Поэтому не поможешь ли ты мне? Надо сходить к лавочнику, да купить у него новую миску.<br>Не сильно тебя это отвлечет от великих подвигов?<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=wizard_3&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Ох, ты вернулся вовремя. Мне как раз нужна миска.<br>Грязная? А, у тебя есть чем очистить. Ну и хорошо.<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=wizard_3&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Вот спасибо, удружил ты мне, не дал труду моему пропасть!<br>Чем бы тебя отблагодарить-то? А вот, кажется есть чем!<br>Не забывай меня, заходи почаще!",
        
"failure"=>"Жаль что ты не помог мне.",
        
"not_yet"=>"Ох, давай скорее, поторапливайся! Зелье мое почти готово!",
        
"ill_wait"=>"Вот тебе <strong>100 LN</strong>. Должно хватить.<br>Спасибо что взялся за мое задание!"
    
),
    
'memorial' => array(
        
"start"=>"Никак новичок? Привет! Хочешь узнать город получше? Так вот, я, старая голова, вчера разбил свой любимый амулет в битве с Монстрами. Осколки собрал, в город вернулся. Но вот незадача - пока добирался до дома - порастерял их все. Не откажи старику - найди все 5 осколков моего амулета.<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=memorial&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Уже все?<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=memorial&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Ну спасибо тебе! Обрадовал ты меня!",
        
"failure"=>"Жаль, придется старику идти самому осколки-то искать.",
        
"not_yet"=>"Еще не собрал?",
        
"ill_wait"=>"Спасибо что взялся за мое задание!"
    
),
    
'touch_the_legend' => array(
        
"start"=>"Проходя в очередной раз мимо обелиска, ваш взгляд неожиданно зацепился за странную корявую надпись почти у самого основания. Определенно, она там появилась совсем недавно. Ведь каждый вечер вы встречаетесь именно тут со своими боевыми товарищами, чтоб завалится в таверну и осушить пару бочонков персиковой настойки. Может опять ребятня хулиганит или все-таки нет?<br />Присмотревшись повнимательней вам удается разобрать несколько слов:<br /><strong>«...легенда не врет... он у него...»</strong><br />Да, написано явно не рукой мальчишки. Буквы небрежно нацарапаны и еле читаются. Стоит ли придавать значение, каким то надписям, когда рядом таверна с такой хмельной настойкой?<br /><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=touch_the_legend&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Вот я снова в начале пути: все жители посещены, все что-то рассказали. А приблизило ли это меня к разгадке тайны? В этих фразах определенно есть смысл...<br /><br /><strong>Легенды тайна приоткрыта<br />Вдали от городских сует<br />Среди лугов – воитель грозный<br />Живой сейчас, а завтра мертвый<br />Он мирно доживал свой век</strong><br /><br />Кто-то мне явно сказал не всю правду. Теперь главное не ошибиться кто именно.<br />Сила решает все, но ошибка будет дорого стоить!<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&quest=touch_the_legend&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Вы облачаетесь в боевые доспехи, достаете свое оружие и делаете еще один шаг к своей цели.",
        
"failure"=>"",
        
"not_yet"=>"Надписи больше нет.",
        
"ill_wait"=>"<strong>«...легенда не врет... он у него...»</strong><br />Вы почувствовали, как холодок пробежал у Вас по спине. Где-то вдалеке раздался раскат грома, а надпись с обелиска медленно исчезла."
    
),
    
'touch_the_legend2' => array(
        
"start"=>"",
        
"ready"=>"Ааа.. Ты вернулся.<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&quest=touch_the_legend2&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Я не был уверен, что ты достоин прикоснуться к легенде. Еще никому не удавалось собрать воедино всю информацию. Твоя голова достаточно хорошо работает, чтоб найти этому достойное применение. Вот возьми. Это твое по праву.<br />Но запомни - как бы бережно ты не относился к Легенде, рано или поздно она будет разрушена.",
        
"failure"=>"Ты не достоин был прикоснуться к легенде. Ты неправильно использовал собранные знания.",
        
"not_yet"=>"Надписи больше нет.",
        
"ill_wait"=>""
    
),
    
'alchemy_1' => array(
        
"start"=>"Здравствуй, <strong>".$pers["login"]."!</strong><br>Захотел освоить алхимию? Ну что ж, помогу тебе немного.<br>Начнем с основ - возьми серп и принеси мне 10 любых травок, которые сможешь срезать.<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=alchemy_1&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Уже все?<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=alchemy_1&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Молодец, поздравляю тебя. Алхимику травки всегда пригодятся. Режь их, заготавливай, экспериментируй - и у тебя обязательно будут получаться зелья. Захожешь еще уму-разуму набраться - обращайся, помогу.",
        
"failure"=>"Не получилось у тебя с алхимией. Ну ничего, авось в другой профессии повезет.",
        
"not_yet"=>"Еще не собрал?",
        
"ill_wait"=>"Дерзай!"
    
),
    
'fisher_1' => array(
        
"start"=>"Здравствуй, <strong>".$pers["login"]."!</strong><br>Рыбалке захотел научиться? Отчего ж не помочь, помогу.<br>Только чтобы мне попроще было с тобой общаться - принеси-ка мне эля.<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=fisher_1&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Принес мне эль?<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=fisher_1&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Так, стало быть надо тебя уму-разуму научить. Так выходит? Ну что ж, давай... эээ не, присаживаться я тебя не приглашал! И на эль мой не смотри так косо!<br>Рыбалка она вещь такая, требует от тебя не только умения, но и душевной отдачи, вот. Ежели нет у тебя чистой души - то и рыба к тебе не потянется. Да... вот. Значится иди к Истоку реки, да порыбачь там чуток... вот я тебе даже удочку простеньку дам - попробовать. Приманку правда тебе самому найти придется, да... <br />Ну а как опыта немного поднаберешься - приходи, поглядим на твой опыт. Может действительно из тебя какой-никак, а рыбачок получится.",
        
"failure"=>"Не получилось у тебя с рыбалкой. Ну ничего, авось в другой профессии повезет. Отдай сюда мой эль и кыш!",
        
"not_yet"=>"Еще не купил?",
        
"ill_wait"=>"Поторопись."
    
),
    
'fisher_2' => array(
        
"start"=>"А, это ты, <strong>".$pers["login"]."</strong>, хорошо что зашел. Беда у меня, приходил ко мне в гости давече старый отшельник, да и нечаянно поставил свой рюкзак на мою любимую удочку... Принеси-ка мне новую удочку, а я тебя как-ниубдь, да отблагодарю.<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=fisher_2&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Чего тебе, <strong>".$pers["login"]."</strong>? Эххх, потерял я сон, не могу перед сном порыбачить со своей любимой удочкой...<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=fisher_2&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Ну что ж, спаибо тебе, <strong>".$pers["login"]."</strong>, выручил ты меня, мда...<br /> Не знаю что бы я без тебя делал, вот тебе обещанная награда.<br />Давече прогуливался я, значится, по окрестностям, да видел как ты рыбачил. Стало быть отвратительно ты рыбачишь, но все ж получше некоторых. Глядишь и толк в тебе есть. Давай тогда научу тебя еще какую-нибудь рыбку ловить. Авось пригодится, в жизни-то. А порыбачить попробуй-ка на опарыша. Озерцо одно есть, на юго-востоке от лагеря разбойников. Вот там и попробуй.",
        
"failure"=>"Останусь я без удочки. Стало быть бесполезен ты мне, и нечему мне тебя учить.",
        
"not_yet"=>"Ну и где моя удочка?",
        
"ill_wait"=>"Поторопись, <strong>".$pers["login"]."</strong>. И знай - у меня была удочка не простая, а зачарованная!"
    
),
    
'mine_1' => array(
        
"start"=>"Здравствуй, <strong>".$pers["login"]."!</strong><br>Не сидится на земле, решил под землей поработать? Дело твое, не мне тебя отговаривать.<br>А вот давай с чего нчнем - надо мне 10 поленьев. Отбери у Хозяина Леса, и приходи ко мне.<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=mine_1&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Все собрал?<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=mine_1&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Неплохо, неплохо. Ну теперь из поленьев выберем то что получше, да сделаем рукоятку для кирки. Будет у тебя своя первая кирка.<br>Теперь тебе надо спуститься в шахту, посетить там магазинчик, взять телегу, и можешь пробовать себя в это профессии.",
        
"failure"=>"Не получилось у тебя с шахтерством. Ну ничего, авось в другой профессии повезет.",
        
"not_yet"=>"Еще не собрал?",
        
"ill_wait"=>"Удачи!"
    
),
    
'thiefs_1' => array(
        
"start"=>"Здравствуй, <strong>".$pers["login"]."!</strong><br>Беда посетила меня - стоило мне отвернуться, и завистники, залезшие ко мне на склад, унесли часть моих припасов!<br />Очень тебя прошу - помоги мне вернуть товар!<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=thiefs_1&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Все товары собрал?<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=thiefs_1&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Ох, спасибо тебе, добрый человек!",
        
"failure"=>"Жаль что не получилось у тебя вернуть товар.",
        
"not_yet"=>"Еще не собрал?",
        
"ill_wait"=>"Грабители отобрали у меня 20 свечей. Думаю они не успели уйти далеко."
    
),
    
'thiefs_2' => array(
        
"start"=>"Здравствуй, <strong>".$pers["login"]."!</strong><br>Пересчитав товары на складе, обнаружил я что не только свечи у меня завистники отобрали - не хватает еще факелов.<br />Ежели ты не сильно занят, выручи меня еще раз - помоги мне вернуть товар еще раз.<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=thiefs_2&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Все факелы собрал?<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=thiefs_2&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Ох, спасибо тебе, добрый человек!",
        
"failure"=>"Жаль что не получилось у тебя вернуть товар.",
        
"not_yet"=>"Еще не собрал?",
        
"ill_wait"=>"Посчитал я - не хватает 15 товаров. Думаю их забрали разбойники."
    
),
    
'thiefs_3' => array(
        
"start"=>"Здравствуй, <strong>".$pers["login"]."!</strong><br>Осмотрел я свой склад еще раз - все на месте, кроме сундуков зачарованных. А их как раз у меня Старый Волшебник заказал.<br />Если я не выполню его просьбу - потеряю покупателя очень важного.<br />Помоги мне вернуть последний товар пожалуйста.<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=thiefs_3&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Все сундуки в сборе?<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=thiefs_3&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Ох, спасибо тебе, добрый человек! Долгих лет тебе жизни!",
        
"failure"=>"Жаль что не получилось у тебя вернуть товар.",
        
"not_yet"=>"Еще не собрал?",
        
"ill_wait"=>"Посчитал я - не хватает 10 товаров. Видел следы фагнов, наверное они из забрали."
    
),
    
'writer_1' => array(
        
"start"=>"Зайдя в кабинет Мастера Каллиграфии, вы не обнаружили его на месте. Прежде чем с ним поговорить, сначала придется его найти.<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=writer_1&step=1&vcode=".VCODE.""'>",
        
"ready"=>"Зайдя в кабинет Мастера Каллиграфии, вы увидели его на месте. Свежая грязь на его сапогах подсказала Вам, что он только что вернулся к себе в кабинет. Теперь с ним можно поговорить.<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=writer_1&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Значит искусству каллиграфии ты обучиться хочешь?<br />Ну что ж, я помогу тебе в этом, но тебя ждет нелегкий путь. Возвращайся ко мне как будешь готов - у меня для тебя есть первое задание.",
        
"failure"=>"Следы на полу подсказали Вам что Мастер был здесь только что, но опять куда-то ушел.",
        
"not_yet"=>"Мастера все еще нет в кабинете.",
        
"ill_wait"=>"Сначала стоит заглянуть в лавку - наверное Мастер пошел за какими-нибудь товарами."
    
),
    
'writer_2' => array(
        
"start"=>"Ага, <strong>".$pers["login"]."</strong>, вернулся за своим первым заданием? Отлично.<br />Слышал я что мелкие союзники Неназываемого Врага обзавелись амулетами особыми - магию поглощают, дневной свет, радость и даже волю к жизни. Мы со Старым Волшебником решили отпор им дать. Так вот пока волшебник заклинание придумывает, мне надо амулеты эли найти и изучить. Очень ты мне поможешь если амулетов этих ты для меня штучек 40 принесешь.<br />Справишься?<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=writer_2&step=1&vcode=".VCODE.""'>",
        
"ready"=>"О, я вижу ты вернулся. Ну как, принес амулеты?<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=writer_2&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Вот как замечательно!<br />Спасибо, <strong>".$pers["login"]."</strong>, выручил ты меня. Ну а взамен, как я и обещал, научу тебя кое-каким основам Каллиграфии. А как бужешь готов - возвращайся еще за уроками.",
        
"failure"=>"Ах, жаль что ты не справился. Боюсь я, что тебе не стать мастером Каллиграфии - ты совсем не обучен дисциплине и нет в тебе терпения.",
        
"not_yet"=>"О, я вижу ты вернулся. Ну как, принес амулеты?",
        
"ill_wait"=>"Спасибо тебе, здорово выручишь ты меня. Возвращайся поскорее!"
    
),
    
'writer_3' => array(
        
"start"=>"<strong>".$pers["login"]."</strong>, пришел еще уму-разуму набраться? Ну что ж, это хорошо.<br />Первую тайну Неназываемого Врага мы с Волшебником разгадали, однако и противник наш - не дурак. Наградил он своих приспешников источником жизни великим - Сердцем Леса. И каждому дал того Сердца частичку. Нам с Волшебником изучить надо сию тайну, чтобы значть как Врага атаковать в следующий раз. Сам-то я мечом плохо владею, так может ты мне поможешь?<br />Справишься?<br><input type='button' value='Принять задание' class='laar' onClick='location="?room=quests&quest=writer_3&step=1&vcode=".VCODE.""'>",
        
"ready"=>"О, вернулся уже. Ну как, добыл все?<br><input type='button' value='Завершить задание' class='laar' onClick='location="?room=quests&quest=writer_3&step=2&vcode=".VCODE.""'>",
        
"finish"=>"Вот как замечательно!<br />Спасибо, <strong>".$pers["login"]."</strong>, выручил ты меня. Что ж, основам я тебя обучил, чистописание ты мне сдал, теперь можно тебе и свои свитки делать. Мы тут как раз помовещались с Волшебником, разобрали тайну Сердца Леса, и теперь знаем как воинов выносливее да здоровее делать. Этому я тебя и научу!",
        
"failure"=>"Ах, жаль что ты не справился. Боюсь я, что тебе не стать мастером Каллиграфии - ты совсем не обучен дисциплине и нет в тебе терпения.",
        
"not_yet"=>"О, вернулся уже. Ну как, добыл все?",
        
"ill_wait"=>"Спасибо тебе, здорово выручишь ты меня. Возвращайся поскорее!"
    
)
);

$all_chains = array (
    
'taverna_3' => array (
        array (
            
"text" => "Зайдя к Старому Волшебнику, вы обнаружили, что его нет дома. К двери приколота записка: &laquo;Ушел к безмозглым ящерицам&raquo;.",
            
"fail" => '',
            
"confirm" => '',
            
"journal" => '',
            
"query" => array(),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "Старик? Был здесь, был. Да вот только что ушел! Куда? А мне почем знать? Домой наверное к себе.",
            
"fail" => '',
            
"confirm" => '',
            
"journal" => '',
            
"query" => array(),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "Ага, вот и ты, преследователь мой. Заклинания-то мои не подвели меня, знал что ты за мной идешь.<br>Чего хотел-то? Поручений у меня для тебя нет.<br>Письмо от трактирщика? Замечательно, вот только нет у меня пергамента чтобы ответ ему написал. Пока я письмо читаю, не мог бы ты сходить да купить мне пергамента?<br>Вот и спасибо.",
            
"fail" => '',
            
"confirm" => '',
            
"journal" => '',
            
"query" => array("DELETE FROM wp WHERE `index`='taverna_3' and uidp=".$pers["uid"].""),
            
"require" => '',
            
"needs" => array()
        ),
        array (
            
"text" => "Пергамент? Есть. Держи. Денег не надо, я с Волшебника денег не беру.",
            
"fail" => '',
            
"confirm" => '',
            
"journal" => '',
            
"query" => array("INSERT INTO wp (`uidp`,`weared`,`price`,`image`,`index`,`type`,`stype`,`name`,`weight`,`max_durability`,`durability`) VALUES ('".$pers["uid"]."',0,100,'quest_pergament','taverna_3','quest','quest','Пергамент для Волшебника',1,1,1)"),
            
"require" => '',
            
"needs" => array()
        ),
        array (
            
"text" => "Спасибо, помог ты мне. Вот ответ мой Трактирщику. Будь добр, отнеси.",
            
"fail" => '',
            
"confirm" => '',
            
"journal" => '',
            
"query" => array("DELETE FROM wp WHERE `index`='taverna_3' and uidp=".$pers["uid"]."","INSERT INTO wp (`uidp`,`weared`,`price`,`image`,`index`,`type`,`stype`,`name`,`weight`,`max_durability`,`durability`) VALUES ('".$pers["uid"]."',0,100,'quest_letter','taverna_3','quest','quest','Письмо для Трактирщика',1,1,1)"),
            
"require" => '',
            
"needs" => array()
        )
    ),
    
'wizard_3' => array (
        array (
            
"text" => 'Привет. Миска? Подожди, сейчас помотрю, может быть есть.<br>Не, закончились. Последнюю только что продал. Сходи к Трактирщику, может быть у него есть.',
            
"fail" => 'Привет. Миска? Да, есть, последняя осталась. <strong>100 LN</strong> стоит. А деньги у тебя есть?<br>Нету? Ну приходи когда будут.',
            
"confirm" => '',
            
"journal" => '',
            
"query" => array("UPDATE quests SET params='1|0|0|0|0' WHERE id='wizard_3' and uidp=".$pers["uid"].""),
            
"require" => 'quest_money@10@10',
            
"needs" => array()
        ),
        array (
            
"text" => 'Здравствуй, <strong>'.$pers["login"].'</strong>. Миску тебе надо? Дай-ка гляну, может и есть.<br>Ага, есть. Но грязная она. Отмыть я ее не могу. Не уходит грязь, как не три. Может кто и поможет тебе.<br>Нет, ты что, задаром отдам, денег не надо.<br>Говорят Смотритель Склада по этим делам большой специалист.',
            
"fail" => '',
            
"confirm" => '',
            
"journal" => '',
            
"query" => array("INSERT INTO wp (`uidp`,`weared`,`price`,`image`,`index`,`type`,`stype`,`name`,`weight`,`max_durability`,`durability`) VALUES ('".$pers["uid"]."',0,1,'quest_miska1','wizard_3','quest','quest','Грязная миска',5,1,1)"),
            
"require" => '',
            
"needs" => array()
        ),
        array (
            
"text" => 'Здравствуй, путник. С чем пожаловал?<br>Ох, непростая работка. Это ж кто ж так посуду испортить умудрился?<br>Трактирщик? Ну не мудрено, этот неряха никогда не умел с посудой обращаться.<br>Помочь могу, но помощь моя денег стоит. <strong>100 LN</strong>? Сойдет. <br>Чтобы очистить, надо тебе 3 Чистотела и 4 Чистеца. Соберешь - приходи.<br>',
            
"fail" => '',
            
"confirm" => '',
            
"journal" => '',
            
"query" => array("DELETE FROM wp WHERE image='quest_money' and uidp=".$pers["uid"]."","UPDATE quests SET params='h60@0@3|h70@0@4', journal='Надо собрать 3 Чистотела и 4 Чистеца и вернуться к Смотрителю Склада'  WHERE id='wizard_3' and uidp=".$pers["uid"].""),
            
"require" => '',
            
"needs" => array()
        ),
        array(),
        array (
            
"text" => 'Вот, готово, теперь миска чистая.',
            
"fail" => 'Ты еще не собрал все, что нужно',
            
"confirm" => '',
            
"journal" => '',
            
"query" => array("DELETE FROM wp WHERE `index`='wizard_3' and uidp=".$pers["uid"]."","UPDATE quests SET params='ready' WHERE id='wizard_3' and uidp=".$pers["uid"]."""INSERT INTO wp (`uidp`,`weared`,`price`,`image`,`index`,`type`,`stype`,`name`,`weight`,`max_durability`,`durability`) VALUES ('".$pers["uid"]."',0,1,'quest_miska1','wizard_3','quest','quest','Чистая миска',5,1,1)"),
            
"require" => '',
            
"needs" => array()
        )
    ),
    
'taverna_5' => array (
        array (
            
"text" => "Тарелки говоришь. Сейчас посмотрим.<br />Кончились тарелки. Надо тебе к волшебнику идти, только он помочь может.",
            
"fail" => '',
            
"confirm" => '',
            
"journal" => '',
            
"query" => array(),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "Тарелки, тарелки... Вспомнил! С тарелками не все так просто. Их из воздуха не сделаешь. Для начала принеси мне руды особой, что из под земли добывают.",
            
"fail" => '',
            
"confirm" => '',
            
"journal" => 'Надо принести Волшебнику 20 единиц железа.',
            
"query" => array(),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "Железо? А может олово или кремний сгодится? Жаль, нет у меня железа. Все ресурсы разбойники разграбили. Совсем с ними последнее время сладу нет. Если смелости хватит иди у них попроси.",
            
"fail" => '',
            
"confirm" => '',
            
"journal" => 'Отберите у разбойников 20 единиц железа.',
            
"query" => array("UPDATE quests SET params=concat(params,'|quest_iron@0@20') WHERE id='taverna_5' and uidp=".$pers["uid"].""),
            
"require" => '',
            
"needs" => array()
        ),
        array (
            
"text" => "Принес? Теперь самое сложное начинается. Как выйдешь от меня, увидишь горы. В этих горах должна быть пещера. В самом дальнем ее конце живет странный человек, он из простых камней делает удивительные вещи.",
            
"fail" => 'Что хочешь? Ничего? Возвращайся когда дело будет.',
            
"confirm" => '',
            
"journal" => 'Отнесите железо мастеру, живущему в пещере.',
            
"query" => array("UPDATE quests SET params='1|1|1|1|0' WHERE id='taverna_5' and uidp=".$pers["uid"].""),
            
"require" => '1|1|1|0|0|quest_iron@20@20',
            
"needs" => array()
        ),
        array (
            
"text" => "Вот тебе тарелки.",
            
"fail" => 'У тебя деньги-то есть?<br />Вот и приходи когда появятся!',
            
"confirm" => "Ты спрашиваешь могу ли я сделать тарелки? И железо есть? Ха-ха-ха! Конечно могу, но сам понимаешь просто так я такой работой заниматься не буду, не мой это профиль – я все больше по оружию, доспехам мастер. 50 LN за каждую тарелку и договорились.<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=taverna_5&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => 'Отнесите тарелки Трактирщику.',
            
"query" => array("DELETE FROM wp WHERE `index`='taverna_5' and uidp=".$pers["uid"]."","INSERT INTO wp (`uidp`,`weared`,`price`,`image`,`index`,`type`,`stype`,`name`,`weight`,`max_durability`,`durability`) VALUES ('".$pers["uid"]."',0,1000,'quest_20plates','taverna_5','quest','quest','20 железных тарелок',20,1,1)","UPDATE users SET money=money-1000 WHERE uid=".$pers["uid"]),
            
"require" => '',
            
"needs" => array("money"=>1000)
        )
    ),
    
'touch_the_legend' => array (
        array (
            
"text" => "<strong>«Среди лугов – воитель грозный»</strong>",
            
"fail" => '...Хозяин лавки занят своими делами. Лучше его не беспокоить...',
            
"confirm" => "Приносили мне из дальних походов много разных вещей: совсем новых, переливающихся на солнце и ржавых, явно с павших воинов, но ничего легендарного в них не было. Были и с гербами невиданными и с узорами замысловатыми, один меч даже с надписью был чеканной <strong>«Среди лугов – воитель грозный»</strong>.<br />Ммм... Хорошо его помню, да... На вид невзрачный, серый, рукоять чешуей отделана и клыки чудища вставлены, долго у меня на витрине провалялся, а потом затерялся среди вещей и больше я его не видел.<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=touch_the_legend&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => '',
            
"query" => array("UPDATE quests SET journal=concat(journal,'<br>«...Среди лугов – воитель грозный...»') WHERE id='touch_the_legend' and uidp=".$pers["uid"].""),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "<strong>«Он мирно доживал свой век»</strong>",
            
"fail" => '...Смотритель склада занят своими делами. Лучше его не беспокоить...',


            
"confirm" => "Ко мне всякое носят, но все в тачках, мешках, корзинах. Сам видишь, чем у меня склад забит. Какая тут легенда!? Хотя заходил один шахтер как-то, повторял раз за разом <strong>«Он мирно доживал свой век»</strong>, ну не бред? Они в этой шахте месяцами сидят, света белого не видят, гадостью всякой дышат. Сами как камни стали: сдадут ресурсы и в таверну на неделю.<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=touch_the_legend&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => '',
            
"query" => array("UPDATE quests SET journal=concat(journal,'<br>«...Он мирно доживал свой век...»') WHERE id='touch_the_legend' and uidp=".$pers["uid"].""),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "<strong>«Легенды тайна приоткрыта»</strong>",
            
"fail" => '...Трактирщик занят своими делами. Лучше его не беспокоить...',
            
"confirm" => "Сам знаешь, что у трезвого на уме – то у пьяного на языке. Всякое тут болтают, и про края дальние, и про зверье дикое, а стражники с дальних ворот и про зеленых людей с пустыни.<br />Легенду тоже иногда вспоминают, но время проходит, и многое уже забывается. Кто сейчас скажет, почему именно: <strong>«Легенды тайна приоткрыта»</strong>? Старожилы может и помнят что, да их на этом свете почти не осталось.<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=touch_the_legend&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => "",
            
"query" => array("UPDATE quests SET journal=concat(journal,'<br>«...Легенды тайна приоткрыта...»') WHERE id='touch_the_legend' and uidp=".$pers["uid"].""),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "<strong>«Живой сейчас, а завтра мертвый»</strong>",
            
"fail" => '...Житель пещеры занят своими делами. Лучше его не беспокоить...',
            
"confirm" => "И почему все связывают легенду именно с драконами? Постоянно приходят воины и пытаются победить драконов, как будто это их приблизит к разгадке. И юные, и почти седые – испытывают свою удачу. Кто зелий волшебных напьется, кто ауру защитную накинет, маг даже приходил, пытался Словом дракона поразить. Сказал он дракону: <strong>«Живой сейчас, а завтра мертвый»</strong>, да что толку? Итог один – я потом хожу за ними вещи собираю. Надоело, честное слово, у меня уже тут целый склад.<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=touch_the_legend&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => '',
            
"query" => array("UPDATE quests SET journal=concat(journal,'<br>«...Живой сейчас, а завтра мертвый...»') WHERE id='touch_the_legend' and uidp=".$pers["uid"].""),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "<strong>«Вдали от городских сует»</strong>",
            
"fail" => '...Старый волшебник занят своими делами. Лучше его не беспокоить...',
            
"confirm" => "Были времена – многие интересовались легендой. Ходили, спрашивали, искали, да все в пустую. Я по молодости тоже не мало времени на поиски потратил. Десять лет над древними книгами просидел, но так и не удалось приблизиться к разгадке. Я их с лавки тогда десятками приносил. Одна даже на непонятном языке написана, большая, черная, на замочек закрывалась. Мне потом волхвы название перевели <strong>«Вдали от городских сует»</strong> Наверно, трактат по медитации. Я так и не понял.<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=touch_the_legend&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => "",
            
"query" => array("UPDATE quests SET journal=concat(journal,'<br>«...Вдали от городских сует...»') WHERE id='touch_the_legend' and uidp=".$pers["uid"].""),
            
"require" => '',
            
"needs" => array()
            )
        ),
    
'touch_the_legend2' => array (
        array (
            
"text" => "Легенда свела с ума многих хороших бойцов. Жаль, что и тебе не открылась ее тайна. Напрасно ты пугаешь меня своим грозным видом. Я больше ничего не знаю.",
            
"fail" => 'Легенда свела с ума многих хороших бойцов. Жаль, что и тебе не открылась ее тайна. Напрасно ты пугаешь меня своим грозным видом. Я больше ничего не знаю.',
            
"confirm" => "",
            
"journal" => '',
            
"query" => array(),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "Легенда свела с ума многих хороших бойцов. Жаль, что и тебе не открылась ее тайна. Напрасно ты пугаешь меня своим грозным видом. Я больше ничего не знаю.",
            
"fail" => 'Легенда свела с ума многих хороших бойцов. Жаль, что и тебе не открылась ее тайна. Напрасно ты пугаешь меня своим грозным видом. Я больше ничего не знаю.',
            
"confirm" => "",
            
"journal" => '',
            
"query" => array(),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "Легенда свела с ума многих хороших бойцов. Жаль, что и тебе не открылась ее тайна. Напрасно ты пугаешь меня своим грозным видом. Я больше ничего не знаю.",
            
"fail" => 'Легенда свела с ума многих хороших бойцов. Жаль, что и тебе не открылась ее тайна. Напрасно ты пугаешь меня своим грозным видом. Я больше ничего не знаю.',
            
"confirm" => "",
            
"journal" => '',
            
"query" => array(),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "Легенда свела с ума многих хороших бойцов. Жаль, что и тебе не открылась ее тайна. Напрасно ты пугаешь меня своим грозным видом. Я больше ничего не знаю.",
            
"fail" => 'Легенда свела с ума многих хороших бойцов. Жаль, что и тебе не открылась ее тайна. Напрасно ты пугаешь меня своим грозным видом. Я больше ничего не знаю.',
            
"confirm" => "",
            
"journal" => '',
            
"query" => array(),
            
"require" => '',
            
"needs" => array()
            )
        ),
    
'writer_1' => array (
        array (
            
"text" => "Удачи, <strong>".$pers["login"]."</strong>",
            
"fail" => '...Хозяин лавки занят...',
            
"confirm" => "Мастер Каллиграфии? Да неделю назад он был, теперь раньше чем через месяц он ко мне точно не придет. Если нет его в кабинете - попробуй у Старого Волшебника его поискать. Говорят что они друзья большие.<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=writer_1&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => "",
            
"query" => array("UPDATE quests SET journal='Необходимо найти Мастера Каллиграфии (Старый Волшебник)' WHERE id='writer_1' and uidp=".$pers["uid"].""),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "Спеши, <strong>".$pers["login"]."</strong>, ты можешь не успеть.",
            
"fail" => '...Волшебник склонился над своими картами. Лучше его не беспокоить...',
            
"confirm" => "Ммм, <strong>".$pers["login"]."</strong>, чувствовал я что ты придешь ко мне. Что за проблема тебя волнует?<br />А, Мастер Каллиграфии? Нет, не видел его, да и карты молчат - не придет он ко мне сегодня. Сходи к Рыбаку Одноглазому. Чует мое сердце что стоит тебе туда зайти.<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=writer_1&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => "",
            
"query" => array("UPDATE quests SET journal='Необходимо найти Мастера Каллиграфии (Одноглазый Пират)' WHERE id='writer_1' and uidp=".$pers["uid"].""),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "Увидимся еще, <strong>".$pers["login"]."</strong>, как пить дать увидимся.",
            
"fail" => '...Одногразый Пират занят...',
            
"confirm" => "Ах, <strong>".$pers["login"]."</strong>, привет.<br />Рыбки сушеной не хочешь? Нет? Ну так зачем тогда пожаловал?<br />А, да, заходил ко мне Мастер, как раз за рыбкой вяленой.<br />Куда пошел? Ну так ты подумай - куда известный любитель пива мог пойти, прихватив у меня рыбки?<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=writer_1&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => "",
            
"query" => array("UPDATE quests SET journal='Необходимо найти Мастера Каллиграфии' WHERE id='writer_1' and uidp=".$pers["uid"].""),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "Спеши-спеши.",
            
"fail" => '...Хозяин Таверны наливает себе пиво. Вряд ли он уже сможет чем-то помочь...',
            
"confirm" => "Кого? Мастера?<br />Разминулся ты с ним - он минут 5 назад вышел. Наверное к себе пошел. Поспешишь - еще по дороге догонишь.<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=writer_1&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => "",
            
"query" => array("UPDATE quests SET journal='Необходимо найти Мастера Каллиграфии' WHERE id='writer_1' and uidp=".$pers["uid"].""),
            
"require" => '',
            
"needs" => array()
            )
        ),
    
'fisher_1' => array (
        array (
            
"text" => "Удачи, <strong>".$pers["login"]."</strong>",
            
"fail" => '...Хозяин таверны занят...',
            
"confirm" => "Ааа, очередной посыльный от Пирата... опять ему эля мало? Ну что ж, с тебя 150 LM.<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=writer_1&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => "",
            
"query" => array("UPDATE quests SET journal='Отнесите Эль Одноглазому Пирату',params='bought' WHERE id='fisher_1' and uidp=".$pers["uid"]."","UPDATE users SET money=money-150 WHERE uid=".$pers["uid"]),
            
"require" => '',
            
"needs" => array("money"=>150)
            )
        ),
    
'fisher_2' => array (
        array (
            
"text" => "Держи удочку.",
            
"fail" => '...смотритель склада занят...',
            
"confirm" => "Удочка Новичка? 75 LM с тебя.<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=fisher_2&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => 'Отнесите удочку Одноглазому Пирату',
            
"query" => array("UPDATE users SET money=money-150 WHERE uid=".$pers["uid"]),
            
"require" => '',
            
"needs" => array('money'>=150)
            ),
        array (
            
"text" => "Давай-давай, чем быстрее - тем лучше.",
            
"fail" => '...волшебник занят...',
            
"confirm" => "Чего тебе, <strong>".$pers["login"]."</strong>? Если учится волшебству пришел, то можешь уходить - не учу я больше...<br />Что? Опять этот старый свою удочку поломал? У меня как раз кончилась рыба для экспериментов вот если принесешь мне 20 любых рыбок, то я зачарую удочку.<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=fisher_2&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => 'Поймайте 20 любых рыбин и отнесите их Волшебнику',
            
"query" => array("UPDATE quests SET params=concat(params,'|any_fish@0@20') WHERE id='fisher_2' and uidp=".$pers["uid"].""),
            
"require" => '',
            
"needs" => array()
            ),
        array (
            
"text" => "Все, зачаровал. Можешь относить Пирату.",
            
"fail" => '...волшебник занят...',
            
"confirm" => "А принес рыбку. Очень хорошо, как раз вовремя!<br /><input type='button' value='Продолжить' class='laar' onClick='location="?room=quests&step=0&quest=fisher_2&confirm=confirm&vcode=".VCODE.""'>",
            
"journal" => 'Отнесите зачарованную удочку Одноглазому Пирату',
            
"query" => array("UPDATE quests SET params='1|1|1' WHERE id='fisher_2' and uidp=".$pers["uid"].""),
            
"require" => '1|1|0|any_fish@20@20',
            
"needs" => array()
        )
    )
);

$all_quests = array(
    
'taverna' => array (
        
'taverna_1' => array('Рыба для Трактирщика','taverna_1',array()),
        
'taverna_2' => array('Персики для Трактирщика','taverna_2',array('taverna_1')),
        
'taverna_3' => array('Письмо для Трактирщика','taverna_3',array('taverna_1','taverna_2')),
        
'taverna_4' => array('Еда для каравана','taverna_4',array()),
        
'taverna_5' => array('Перебитая посуда','taverna_5',array('taverna_4'))
        ),
    
'wizard' => array (
        
'wizard_1' => array('Драконьи Чешуйки','wizard_1',array()),
        
'wizard_2' => array('Лекарство от Неведомой Хвори','wizard_2',array()),
        
'wizard_3' => array ('Поручение Волшебника','wizard_3',array('wizard_2')),
        
'touch_the_legend2' => array ('Прикосновение к Легенде','touch_the_legend2',array())
        ),
    
'memorial' => array (
        
'memorial' => array('Осколки Амулета','memorial',array()),
        
'touch_the_legend' => array('Прикосновение к Легенде','touch_the_legend',array()),
        ),
    
'store_2' => array (
        
'alchemy_1' => array ('Посвящение в алхимики','alchemy_1',array()),
        
'mine_1' => array ('Посвящение в шахтеры','mine_1',array()),
        
'writer_1' => array ('Поиски Мастера Каллиграфии','writer_1',array()),
        
'writer_2' => array ('Амулеты для Каллиграфа','writer_2',array('writer_1')),
        
'writer_3' => array ('Сердце Леса для Каллиграфа','writer_3',array('writer_1','writer_2'))
        ),
    
'lavka' => array (
        
'thiefs_1' => array ('Разобраться с ворами (часть 1)','thiefs_1',array()),
        
'thiefs_2' => array ('Разобраться с ворами (часть 2)','thiefs_2',array('thiefs_1')),
        
'thiefs_3' => array ('Разобраться с ворами (часть 3)','thiefs_3',array('thiefs_1','thiefs_2'))
        ),
    
'fisher' => array (
        
'fisher_1' => array ('Посвящение в рыболовы','fisher_1',array()),
        
'fisher_2' => array ('Поломанная Удочка','fisher_2',array('fisher_1')),
        
'fisher_3' => array ('Суета с Прикормкой','fisher_3',array('fisher_1','fisher_2'))
    )
);

$all_finish = array (
    
'taverna_1' => array (
        
'type' => 'multi',
        
'needs' => array (),
        
'st_par' => '0',
        
'params' => '15',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='taverna_1' and type='quest' and uidp=".$pers["uid"]." and weared=0 LIMIT 15",
            
"UPDATE quests SET params=0 WHERE uidp=".$pers["uid"]." and id='taverna_1'",
            
"UPDATE taverna SET q_s=q_s+4 WHERE id='eat_2' or id='eat_3' or id='eat_1'"
        
),
        
'updates' => array ('money'=>1000'peace_exp'=>$pers["level"]*500'QP'=>5),
        
'prizes' => array(),
        
'time' => 172800,
        
'to_task' => 86400,
        
'journal' =>'Надо выловить 15 любых рыб, и принести их Трактирщику.',
        
'chain' => array(),
        
'chain_opt' => array('type'=>'''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'taverna_2' => array (
        
'type' => 'multi',
        
'needs' => array (),
        
'st_par' => '0',
        
'params' => '10',
        
'fails' => '',

        
'start' => array(),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='taverna_2' and type='quest' and uidp=".$pers["uid"]." and weared=0 LIMIT 10",
            
"UPDATE quests SET params=0 WHERE uidp=".$pers["uid"]." and id='taverna_2'",
            
"UPDATE taverna SET q_s=q_s+2 WHERE id='drink_2' or id='drink_3' or id='drink_1'"
        
),
        
'updates' => array ('money'=>1000'peace_exp'=>$pers["level"]*550'QP'=>5),
        
'prizes' => array(),
        
'time' => 172800,
        
'to_task' => 86400,
        
'journal' =>'Надо срезать 10 персиков, и принести их Трактирщику.',
        
'chain' => array(),
        
'chain_opt' => array('type'=>'''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'taverna_3' => array (
        
'type' => 'single',
        
'needs' => array (),
        
'st_par' => '0|0|0|0|0',
        
'params' => '1|1|1|1|1',
        
'fails' => '',
        
'start' => array("INSERT INTO wp (`uidp`,`weared`,`price`,`image`,`index`,`type`,`stype`,`name`,`weight`,`max_durability`,`durability`) VALUES ('".$pers["uid"]."',0,100,'quest_letter','taverna_3','quest','quest','Письмо для Волшебника',1,1,1)"),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='taverna_3' and type='quest' and uidp=".$pers["uid"]." and weared=0",
            
"UPDATE quests SET params=0 WHERE uidp=".$pers["uid"]." and id='taverna_3'"
        
),
        
'updates' => array ('money'=>3000'peace_exp'=>$pers["level"]*1000'QP'=>10),
        
'prizes' => array("svit_blag_dd"),
        
'time' => 172800,
        
'to_task' => 86400,
        
'journal' =>'Надо отнести письмо Трактирщика Старому Волшебнику.',
        
'chain' => array('wizard','inst_prefight','wizard','lavka','wizard'),
        
'chain_opt' => array('type'=>'one_by_one''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'taverna_4' => array (
        
'type' => 'multi',
        
'needs' => array (),
        
'st_par' => 'h17@0@5|h12@0@5|h40@0@5|h84@0@5',
        
'params' => 'h17@5@5|h12@5@5|h40@5@5|h84@5@5',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='taverna_4' and type='quest' and uidp=".$pers["uid"]." and weared=0",
            
"UPDATE quests SET params=0 WHERE uidp=".$pers["uid"]." and id='taverna_3'"
        
),
        
'updates' => array ('money'=>2500'peace_exp'=>$pers["level"]*750'QP'=>5),
        
'prizes' => array(),
        
'time' => 172800,
        
'to_task' => 86400,
        
'journal' =>'Надо собрать: Рыжик (5 шт), Белый гриб (5 шт), Груздь черный (5 шт), Опенок (5 шт) и отнести Трактирщику.',
        
'chain' => array(),
        
'chain_opt' => array('type'=>'''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'taverna_5' => array (
        
'type' => 'single',
        
'needs' => array (),
        
'st_par' => '0|0|0|0|0',
        
'params' => '1|1|1|1|1',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='taverna_5' and type='quest' and uidp=".$pers["uid"]." and weared=0",
            
"UPDATE quests SET params=0 WHERE uidp=".$pers["uid"]." and id='taverna_5'"
        
),
        
'updates' => array ('money'=>4000'exp'=>$pers["level"]*1000'QP'=>10),
        
'prizes' => array("svit_prei_dd"),
        
'time' => 172800,
        
'to_task' => 86400,
        
'journal' =>'Надо принести Трактирщику 20 тарелок.',
        
'chain' => array('lavka','wizard','store_2','wizard','inst_prefight'),
        
'chain_opt' => array('type'=>'one_by_one''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'wizard_1' => array (
        
'type' => 'multi',
        
'needs' => array (),
        
'st_par' => 'gold_dragon_quest@0@10|red_dragon_quest@0@10|green_dragon_quest@0@10',
        
'params' => 'gold_dragon_quest@10@10|red_dragon_quest@10@10|green_dragon_quest@10@10',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='wizard_1' and type='quest' and uidp=".$pers["uid"]." and weared=0 LIMIT 30",
            
"UPDATE quests SET params='0|0|0' WHERE uidp=".$pers["uid"]." and id='wizard_1'"
        
),
        
'updates' => array ('money'=>3500'peace_exp'=>$pers["level"]*800'QP'=>10),
        
'prizes' => array('dragons_alumet'),
        
'time' => 604800,
        
'to_task' => 259200,
        
'journal' =>'Надо получить с драконов 10 золотых, 10 красных и 10 зеленых чешуек.',
        
'chain' => array(),
        
'chain_opt' => array('type'=>'''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'wizard_2' => array (
        
'type' => 'single',
        
'needs' => array ('healer'=>20),
        
'st_par' => show_add_params ('wizard_2','st_par'),
        
'params' => '1',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='wizard_2' and type='quest' and uidp=".$pers["uid"]." and weared=0 LIMIT 1",
            
"UPDATE quests SET params='0' WHERE uidp=".$pers["uid"]." and id='wizard_2'"
        
),
        
'updates' => array ('money'=>500'peace_exp'=>$pers["level"]*300'QP'=>3'healer'=>5),
        
'prizes' => array(),
        
'time' => 604800,
        
'to_task' => 259200,
        
'journal' =>'Надо сварить Зелье Лечения Неведомой Хвори, используя рецепт Старого Волшебника ('.show_add_params ('wizard_2','add_text').').',
        
'chain' => array(),
        
'chain_opt' => array('type'=>'''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'wizard_3' => array (
        
'type' => 'single',
        
'needs' => array ('healer'=>50),
        
'st_par' => 'start',
        
'params' => 'ready',
        
'fails' => '',
        
'start' => array("INSERT INTO wp (`uidp`,`weared`,`price`,`image`,`index`,`type`,`stype`,`name`,`weight`,`max_durability`,`durability`) VALUES ('".$pers["uid"]."',0,100,'quest_money','wizard_3','quest','quest','100 LN',1,1,1)"),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='wizard_3' and type='quest' and uidp=".$pers["uid"]." and weared=0",
            
"UPDATE quests SET params='0' WHERE uidp=".$pers["uid"]." and id='wizard_3'"
        
),
        
'updates' => array ('peace_exp'=>$pers["level"]*500'QP'=>5'healer'=>5),
        
'prizes' => array(),
        
'time' => 604800,
        
'to_task' => 259200,
        
'journal' =>'Надо купить в лавке новую миску для Волшебника.',
        
'chain' => array('lavka','taverna','store_2','out','store_2'),
        
'chain_opt' => array('type'=>'one_by_one''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'memorial' => array (
        
'type' => 'single',
        
'needs' => array (),
        
'st_par' => '0|0|0|0|0',
        
'params' => '1|1|1|1|1',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='memorial' and type='quest' and uidp=".$pers["uid"]." and weared=0 LIMIT 5",
            
"UPDATE quests SET params='0' WHERE uidp=".$pers["uid"]." and id='memorial'"
        
),
        
'updates' => array ('money'=>75'exp'=>($pers["level"]*20+20)),
        
'prizes' => array("quest_dagger"),
        
'time' => 604800,
        
'to_task' => 259200,
        
'journal' =>'Надо обыскать все здания в городе и найти 5 осколков Амулета.',
        
'chain' => array(),
        
'chain_opt' => array('type'=>'''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'touch_the_legend' => array (
        
'type' => 'single',
        
'needs' => array ("level"=>15),
        
'st_par' => 'lavka@0|store_2@0|taverna@0|inst_prefight@0|wizard@0',
        
'params' => 'lavka@1|store_2@1|taverna@1|inst_prefight@1|wizard@1',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"UPDATE quests SET params='hidden' WHERE uidp=".$pers["uid"]." and id='touch_the_legend'"
        
),
        
'updates' => array (),
        
'prizes' => array(),
        
'time' => 604800,
        
'to_task' => 259200,
        
'journal' =>'«...легенда не врет... он у него...»',
        
'chain' => array('lavka','store_2','taverna','inst_prefight','wizard'),
        
'chain_opt' => array('type'=>'randomize''finish'=>''),
        
'next' => 'touch_the_legend2'
    
),
    
'touch_the_legend2' => array (
        
'type' => 'single',
        
'needs' => array ("level"=>15),
        
'st_par' => 'lavka@0|store_2@0|taverna@0|inst_prefight@0',
        
'params' => 'lavka@0|store_2@0|taverna@0|inst_prefight@0',
        
'fails' => 'yep',
        
'start' => array(),
        
'queries' => array (
            
"UPDATE quests SET params='0' WHERE uidp=".$pers["uid"]." and id='touch_the_legend2'"
        
),
        
'updates' => array ('peace_exp'=>($pers["level"]*5000)),
        
'prizes' => array("quest_legend_mace"),
        
'time' => 604800,
        
'to_task' => 259200,
        
'journal' =>'Главное - не ошибиться!',
        
'chain' => array('lavka','store_2','taverna','inst_prefight'),
        
'chain_opt' => array('type'=>'randomize''finish'=>''),
        
'next' => ''
    
),
    
'alchemy_1' => array (
        
'type' => 'single',
        
'needs' => array (),
        
'st_par' => '0',
        
'params' => '10',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='alchemy_1' and type='quest' and uidp=".$pers["uid"]." and weared=0",
            
"UPDATE quests SET params='0' WHERE uidp=".$pers["uid"]." and id='alchemy_1'"
        
),
        
'updates' => array ('peace_exp'=>($pers["level"]*100), 'alchemy_b'=>10'sp11'=>10'QP'=>2),
        
'prizes' => array(),
        
'time' => 604800,
        
'to_task' => 259200,
        
'journal' =>'Надо срезать 10 любых травок.',
        
'chain' => array(),
        
'chain_opt' => array('type'=>'''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'fisher_1' => array (
        
'type' => 'single',
        
'needs' => array ("level"=>5),
        
'st_par' => '0',
        
'params' => 'bought',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"UPDATE quests SET params='0' WHERE uidp=".$pers["uid"]." and id='fisher_1'"
        
),
        
'updates' => array ('peace_exp'=>($pers["level"]*100), 'sp6'=>5'QP'=>2'money'=>150),
        
'prizes' => array('fishing_noob'),
        
'time' => 604800,
        
'to_task' => 18000,
        
'journal' =>'Принесите Одноглазому Пирату эль',
        
'chain' => array('taverna'),
        
'chain_opt' => array('type'=>'one_by_one''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'fisher_2' => array (
        
'type' => 'single',
        
'needs' => array ("sp6"=>20),
        
'st_par' => '0|0|0',
        
'params' => '1|1|1',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"UPDATE quests SET params=0 WHERE uidp=".$pers["uid"]." and id='fisher_2'"
        
),
        
'updates' => array ('money'=>300'peace_exp'=>$pers["level"]*100'QP'=>4),
        
'prizes' => array(),
        
'time' => 172800,
        
'to_task' => 86400,
        
'journal' =>'Принесите Одноглазому Пирату новую удочку',
        
'chain' => array('store_2','wizard','wizard'),
        
'chain_opt' => array('type'=>'one_by_one''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'mine_1' => array (
        
'type' => 'single',
        
'needs' => array (),
        
'st_par' => 'quest_miner1@0@10',
        
'params' => 'quest_miner1@10@10',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='mine_1' and type='quest' and uidp=".$pers["uid"]." and weared=0",
            
"UPDATE quests SET params='0' WHERE uidp=".$pers["uid"]." and id='mine_1'"
        
),
        
'updates' => array ('peace_exp'=>($pers["level"]*100), 'sp7'=>10'sp12'=>10'QP'=>2),
        
'prizes' => array("kir1"),
        
'time' => 604800,
        
'to_task' => 259200,
        
'journal' =>'Надо выбить 10 поленьев с Хозяев Леса.',
        
'chain' => array(),
        
'chain_opt' => array('type'=>'''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'thiefs_1' => array (
        
'type' => 'single',
        
'needs' => array ("level"=>10),
        
'st_par' => 'quest_candle@0@20',
        
'params' => 'quest_candle@20@20',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='thiefs_1' and type='quest' and uidp=".$pers["uid"]." and weared=0",
            
"UPDATE quests SET params='0' WHERE uidp=".$pers["uid"]." and id='thiefs_1'"
        
),
        
'updates' => array ('exp'=>($pers["level"]*1500),'money'=>1000,'QP'=>5),
        
'prizes' => array(),
        
'time' => 604800,
        
'to_task' => 259200,
        
'journal' =>'Надо забрать 20 свечек у грабителей.',
        
'chain' => array(),
        
'chain_opt' => array('type'=>'''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'thiefs_2' => array (
        
'type' => 'single',
        
'needs' => array ("level"=>10),
        
'st_par' => 'quest_torch@0@15',
        
'params' => 'quest_torch@15@15',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='thiefs_2' and type='quest' and uidp=".$pers["uid"]." and weared=0",
            
"UPDATE quests SET params='0' WHERE uidp=".$pers["uid"]." and id='thiefs_2'"
        
),
        
'updates' => array ('exp'=>($pers["level"]*1750),'money'=>1500,'QP'=>5),
        
'prizes' => array(),
        
'time' => 604800,
        
'to_task' => 259200,
        
'journal' =>'Надо забрать 15 факелов у разбойников.',
        
'chain' => array(),
        
'chain_opt' => array('type'=>'''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'thiefs_3' => array (
        
'type' => 'single',
        
'needs' => array ("level"=>10),
        
'st_par' => 'quest_chest@0@10',
        
'params' => 'quest_chest@10@10',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array (
            
"DELETE FROM wp WHERE `index`='thiefs_3' and type='quest' and uidp=".$pers["uid"]." and weared=0",
            
"UPDATE quests SET params='0' WHERE uidp=".$pers["uid"]." and id='thiefs_3'"
        
),
        
'updates' => array ('exp'=>($pers["level"]*2000),'money'=>2000,'QP'=>10),
        
'prizes' => array(),
        
'time' => 604800,
        
'to_task' => 259200,
        
'journal' =>'Надо забрать 10 сундуков у фагнов.',
        
'chain' => array(),
        
'chain_opt' => array('type'=>'''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'writer_1' => array (
        
'type' => 'single',
        
'needs' => array ("level"=>8),
        
'st_par' => '0|0|0|0',
        
'params' => '1|1|1|1',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array ("UPDATE quests SET params=0 WHERE uidp=".$pers["uid"]." and id='writer_1'"),
        
'updates' => array ('peace_exp'=>$pers["level"]*500'QP'=>5),
        
'prizes' => array(),
        
'time' => 172800,
        
'to_task' => 259200,
        
'journal' =>'Необходимо найти Мастера Каллиграфии (лавка)',
        
'chain' => array('lavka','wizard','fisher','taverna'),
        
'chain_opt' => array('type'=>'one_by_one''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'writer_2' => array (
        
'type' => 'single',
        
'needs' => array ("level"=>8),
        
'st_par' => 'quest_writer_amulet@0@40',
        
'params' => 'quest_writer_amulet@40@40',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array ("UPDATE quests SET params=0 WHERE uidp=".$pers["uid"]." and id='writer_2'","DELETE FROM wp WHERE `index`='writer_2' and type='quest' and uidp=".$pers["uid"]." and weared=0"),
        
'updates' => array ('peace_exp'=>$pers["level"]*500'QP'=>5'writer'=>5),
        
'prizes' => array(),
        
'time' => 172800,
        
'to_task' => 259200,
        
'journal' =>'Необходимо забрать у Грабителей 40 амулетов',
        
'chain' => array(),
        
'chain_opt' => array('type'=>'''finish'=>'''params'=>''),
        
'next' => ''
    
),
    
'writer_3' => array (
        
'type' => 'single',
        
'needs' => array ("level"=>10"writer"=>5),
        
'st_par' => 'quest_writer_heart@0@20',
        
'params' => 'quest_writer_heart@20@20',
        
'fails' => '',
        
'start' => array(),
        
'queries' => array ("UPDATE quests SET params=0 WHERE uidp=".$pers["uid"]." and id='writer_3'""DELETE FROM wp WHERE `index`='writer_3' and type='quest' and uidp=".$pers["uid"]." and weared=0"),
        
'updates' => array ('peace_exp'=>$pers["level"]*500'QP'=>5),
        
'prizes' => array(),
        
'time' => 172800,
        
'to_task' => 259200,
        
'journal' =>'Необходимо вырезать у Хозяев Леса 20 сердец',
        
'chain' => array(),
        
'chain_opt' => array('type'=>'''finish'=>'''params'=>''),
        
'next' => ''
    
)
);

$all_prizes = array ('money'=>'LM','peace_exp'=>'мирного опыта','exp'=>'опыта','QP'=>'QP''healer'=>'к умению &laquo;Целительство&raquo;''alchemy_b'=>'пустых емкостей''sp11'=>'к умению &laquo;Алхимия&raquo;''sp6'=>'к умению &laquo;Рыбалка&raquo;''sp7'=>'к умению &laquo;Шахтер&raquo;''sp12'=>'к умению &laquo;Добыча камней&raquo;''writer'=>'к умению &laquo;Каллиграфия&raquo;',);

function 
start_quest ($q,$p) {
global 
$all_quests;
global 
$all_finish;
$p sqla("SELECT * FROM users WHERE uid=".$p);
$task sqla("SELECT * FROM quests WHERE uidp=".$p["uid"]." and id='".$q."'");
    if (
$task["uid"]):
        
$status explode ('|',$task["status"]);
        
$status '1|'.$status[1].'|'.$status[2];
        
mysql_query ("UPDATE quests SET status='".$status."', time=".time().", task_to=".(time()+$all_finish[$q]["to_task"])." WHERE uid=".$task["uid"]."");
    else:
        
mysql_query ("INSERT INTO quests VALUES ('','".$q."','".$p["uid"]."','".time()."','".(time()+$all_finish[$q]["to_task"])."','".$all_finish[$q]["st_par"]."','1|0|0','".$all_quests[$p["location"]][$q][0]."','".$all_finish[$q]["journal"]."')");
    endif;
    foreach (
$all_finish[$q]['start'] as $que):
        
mysql_query($que);
    endforeach;
    
say_to_chat('s',"Начался квест <b>&laquo;".$all_quests[$p["location"]][$q][0]."&raquo;</b>.",1,$p["user"],'*',0);
}

function 
finish_quest($s,$q,$p) {
global 
$all_finish;
global 
$all_prizes;
global 
$all_quests;
$p sqla("SELECT * FROM users WHERE uid=".$p);
    if (
$s=='finish'):
        if (
$all_finish[$q]["next"]==''):
            
$task sqla("SELECT * FROM quests WHERE uidp=".$p["uid"]." and id='".$q."'");
            
$to_db '';
            
$to_ch '';
            foreach (
$all_finish[$q]["updates"] as $fi=>$up):
                if (
$to_db<>''): $to_db=$to_db.','; endif;
                if (
$to_ch<>''): $to_ch=$to_ch.', '; endif;
                
$to_db $to_db.$fi.'='.$fi.'+'.$up;
                
$to_ch $to_ch.'<b>'.$up.' '.$all_prizes[$fi].'</b>';
            endforeach;
            foreach (
$all_finish[$q]["prizes"] as $pr):
                
$info sqla ("SELECT * FROM weapons WHERE id='".$pr."'");
                if (
$info["id"]):
                if (
$to_ch<>''): $to_ch=$to_ch.', '; endif;
                
$to_ch $to_ch.'<b>Вещь &laquo;'.$info["name"].'&raquo;</b>';
                
insert_wp($info["id"],$p["uid"],-1,0);
                endif;
            endforeach;
            
$name $all_quests[$p["location"]][$q][0];
            
sql("UPDATE users SET ".$to_db." WHERE uid=".$p["uid"]."");
            
say_to_chat('s',"Выполнен квест <b>&laquo;".$name."&raquo;</b>. Получено: ".$to_ch.".",1,$p["user"],'*',0);
            
$status explode ('|',$task["status"]);
            
$status '0|'.($status[1]+1).'|'.$status[2];
            
mysql_query ("UPDATE quests SET status='".$status."' WHERE uidp=".$p["uid"]." and id='".$q."'");
        else:
            
$task sqla("SELECT * FROM quests WHERE uidp=".$p["uid"]." and id='".$q."'");
            
sql("UPDATE quests SET id='".$all_finish[$q]["next"]."' WHERE uidp=".$p["uid"]." and uid='".$task["uid"]."'");
            
mysql_query ("UPDATE quests SET params='".$all_finish[$all_finish[$q]["next"]]["st_par"]."' WHERE uid=".$task["uid"]."");
            if (
$all_finish[$all_finish[$q]["next"]]["journal"]<>''):
                
mysql_query ("UPDATE quests SET journal='".$all_finish[$all_finish[$q]["next"]]["journal"]."' WHERE uid=".$task["uid"]."");
            endif;
        endif;
    else:
        
$task sqla("SELECT * FROM quests WHERE uidp=".$p["uid"]." and id='".$q."'");
        
$name $all_quests[$p["location"]][$q][0];
        
say_to_chat('s',"Провален квест <b>&laquo;".$name."&raquo;</b>.",1,$p["user"],'*',0);
        
$status explode ('|',$task["status"]);
        
$status '0|'.$status[1].'|'.($status[2]+1);
        
mysql_query ("UPDATE quests SET status='".$status."' WHERE uidp=".$p["uid"]." and id='".$q."'");
    endif;
foreach (
$all_finish[$q]["queries"] as $query):
    
sql($query);
endforeach;
}


function 
check_quest_status($w,$p,$in) {
global 
$all_finish;
    
$quest_info mysql_query ("SELECT * FROM quests WHERE id='".$w."' and uidp=".$p."");
    if (
mysql_num_rows($quest_info)==0): $res 'start';
    else:
        
$status explode ('|',mysql_result($quest_info,0,'status'));
        if (
$status[0]==1):
            if (
mysql_result($quest_info,0,'params')==$all_finish[$w]["params"]):
                if (
mysql_result($quest_info,0,'task_to')>time()):
                    
$res 'ready';
                else:
                    
$res 'ready';
                endif;
            elseif (
mysql_result($quest_info,0,'params')<>$all_finish[$w]["params"] && $all_finish[$w]["fails"]=='yep'):
                
$res 'ready';
            else:
                
$res 'not_yet';
            endif;
        else:
            if (
mysql_result($quest_info,0,'time')+$all_finish[$w]["time"]<time()): $res 'start';
            else: 
$res mysql_result($quest_info,0,'time')+$all_finish[$w]["time"]-time();
            endif;
        endif;
    endif;
    if (
$in=='just_started'): $res 'ill_wait';
    elseif (
$in=='just_complete'): 
        if (
mysql_result($quest_info,0,'params')==$all_finish[$w]["params"] && mysql_result($quest_info,0,'task_to')>time()):
        
$res 'finish';
        else:
        
$res 'failure';
        endif;
    endif;
return 
$res;    
}

function 
output_quest ($q,$p,$i) {
global 
$all_texts;
global 
$all_chains;
global 
$all_finish;
global 
$pers;
    
$status check_quest_status($q,$p,$i);
    if (
$i=='just_complete'): finish_quest ($status,$q,$p); endif;
    if (
$i=='just_started'): start_quest ($q,$p); endif;
    
$ss mysql_fetch_array(mysql_query("SELECT * FROM quests WHERE id='".$q."' and uidp=".$p.""));
    
$sta $ss["params"];
    
$ploc mysql_result(mysql_query("SELECT location FROM users WHERE uid=".$p.""),0,'location');
    if (!empty(
$all_chains[$q]) && (substr_count($sta,'0')>|| $all_finish[$q]["chain_opt"]["type"]=='randomize') && in_array($ploc,$all_finish[$q]["chain"])):
        
$sta explode ('|',$sta);
        if (
$all_finish[$q]["chain_opt"]["type"]=='one_by_one'):
            
$alr false;
            
$steps 0;
            for (
$sa=0,$sb=count($sta);$sa<$sb;$sa++):
                if (
$sta[$sa]==&& !$alr):
                    
$steps $sa;
                    
$alr true;
                endif;
            endfor;
            
$sta[$steps]=1;
            
$sta implode ('|',$sta);
        elseif (
$all_finish[$q]["chain_opt"]["type"]=='randomize'):
            
$alr false;
            
$steps 0;
            for (
$sa=0,$sb=count($sta);$sa<$sb;$sa++):
                
$in_par explode('@',$sta[$sa]);
                if (
$ploc==$in_par[0] && !$alr):
                    
$steps $sa;
                    
$in_par[1]=1;
                    
$sta[$sa] = implode('@',$in_par);
                    
$alr true;
                endif;
            endfor;
            
$sta implode ('|',$sta);
        endif;
            if ((
$ss["params"]==$all_chains[$q][$steps]["require"] || $all_chains[$q][$steps]["require"]=='') && ($all_chains[$q][$steps]["confirm"]=='' || $_REQUEST["confirm"]=='confirm')):
                if (
count($all_chains[$q][$steps]["needs"])==0): $prolong true;
                else:
                    
$total count($all_chains[$q][$steps]["needs"]);
                    
$passed 0;
                    foreach (
$all_chains[$q][$steps]["needs"] as $req=>$value):
                            if (
$pers[$req]>=$value):
                                
$passed++;
                            endif;
                    endforeach;
                    if (
$passed==$total):
                        
$prolong true;
                    else:
                        
$prolong false;
                    endif;
                endif;
                if (
$all_finish[$q]["chain_opt"]["type"]=='randomize'):
                    if (
$all_chains[$q][$steps]["require"]=='' || $all_chains[$q][$steps]["require"]==$ss["params"]):
                        
$st_in explode ('|',$ss["params"]);
                        foreach (
$st_in as $st):
                            
$inst explode ('@',$st);
                            if (
$inst[0]==$ploc && $inst[1]==1):
                                
$prolong false;
                            endif;
                        endforeach;
                    else:
                        
$prolong false;
                    endif;
                endif;
                if (
$prolong):
                    
mysql_query ("UPDATE quests SET params='".$sta."' WHERE id='".$q."' and uidp=".$p."");
                    if (
$all_chains[$q][$steps]['journal']<>''):
                        
mysql_query ("UPDATE quests SET journal='".$all_chains[$q][$steps]['journal']."' WHERE id='".$q."' and uidp=".$p."");
                    endif;
                    foreach (
$all_chains[$q][$steps]["query"] as $que):
                        
mysql_query ($que);
                    endforeach;
                    return 
$all_chains[$q][$steps]["text"]; 
                else:
                    return 
$all_chains[$q][$steps]["fail"]; 
                endif;
            elseif (
$all_chains[$q][$steps]["confirm"]<>'' && (empty($_REQUEST["confirm"]) || !isset($_REQUEST["confirm"]))):
                
$show_confirm true;
                if (
$all_finish[$q]["chain_opt"]["type"]=='randomize'):
                    if (
$all_chains[$q][$steps]["require"]=='' || $all_chains[$q][$steps]["require"]==$ss["params"]):
                        
$st_in explode ('|',$ss["params"]);
                        foreach (
$st_in as $st):
                            
$inst explode ('@',$st);
                            if (
$inst[0]==$ploc && $inst[1]==1):
                                
$show_confirm false;
                            endif;
                        endforeach;
                    else:
                        
$show_confirm false;
                    endif;
                endif;
                if (
$show_confirm):
                    return 
$all_chains[$q][$steps]["confirm"];
                else:
                    return 
$all_chains[$q][$steps]["fail"]; 
                endif;
            else:
                return 
$all_chains[$q][$steps]["fail"]; 
            endif;
    else:
        return 
$all_texts[$q][$status];
    endif;
}

function 
list_quests ($q,$p) {
$res '';
global 
$all_quests;
global 
$all_finish;
$previous count($q[2]);
$passed 0;
    if (
$previous==0):
        
$res $q[1];
    else:
        foreach (
$q[2] as $prev):
            
$pq sqla ("SELECT * FROM quests WHERE uidp=".$p["uid"]." and id='".$prev."'");
            if (
$pq["uid"]):
                
$st explode ('|',$pq["status"]);
                if (
$st[1]>0):
                    
$passed++;
                endif;
            endif;
        endforeach;
        if (
$previous==$passed):
            
$res $q[1];
        endif;
    endif;
        
    if (
$res<>''):
    
$quest sqla ("SELECT * FROM quests WHERE uidp=".$p["uid"]." and id='".$res."'");
    
$name $q[0];
    
$status = @explode('|',$quest["status"]);
        if ((!
$quest["id"] || ($quest["id"] && @$quest["time"]+$all_finish[$quest["id"]]["time"]<time() && $all_finish[$quest["id"]]["type"]=='multi') || @$status[0]==1) && $res):
            if (
count($all_finish[$res]["needs"])==0):
                
$res '<input type=button class=laar style="width:350px; padding: 1px; margin:1px;" onclick="location='?room=quests&quest='.$res.'&step=0'" value="'.$name.'"><br>';
            else:
                
$needs count($all_finish[$res]["needs"]);
                
$pass 0;
                foreach (
$all_finish[$res]["needs"] as $f=>$n):
                    if (
$p[$f]>=$n): $pass++; endif;
                endforeach;
                if (
$needs==$pass):
                    
$res '<input type=button class=laar style="width:350px; padding: 1px; margin:1px;" onclick="location='?room=quests&quest='.$res.'&step=0'" value="'.$name.'"><br>';
                else:
                    
$res '';
                endif;
            endif;
        elseif (
$quest["id"] && $all_finish[$quest["id"]]["type"]=='single' && (@$status[1]==|| @$status[2]==|| @$status[0]==0)):
            
$res '';
        else:
            
$to_task $quest["time"]+$all_finish[$quest["id"]]["time"]-time();
            
$act_s $to_task%60;
            
$act_m = (($to_task-$act_s)/60)%60;
            
$act_h = (((($to_task-$act_s)/60)-$act_m)/60)%24;
            
$act_d = ((((($to_task-$act_s)/60)-$act_m)/60)-$act_h)/24;
            
$tempor '';
            if (
$act_d>0): $tempor .=$act_d.' дн '; endif; 
            if (
$act_h>0): $tempor .=$act_h.' ч '; endif;
            if (
$act_m>0): $tempor .=$act_m.' мин '; endif;
            
$res '<input type=button class=laar style="width:350px; padding: 1px; margin:1px;" onclick="location='?room=quests&quest='.$res.'&step=0'" value="'.$name.' (еще '.$tempor.')" disabled><br>';
        endif;
    endif;
    return 
$res;
}

function 
check_quests($p,$r$i) {
global 
$all_quests;
global 
$all_finish;
global 
$all_texts;
$res 'empty';
    if (isset(
$r["step"]) && isset($r["quest"]) && !empty($r["quest"])):
        if (
$i=='' && $r["task_to"]<time()): 
            
$st explode ('|',$r["status"]);
            if (
$st[0]==1):
            
$i 'just_complete'
            endif;
        endif;
        echo 
output_quest ($r["quest"],$p["uid"],$i);
    else:
        
$chains mysql_query("SELECT * FROM quests WHERE status like '1|%' and uidp=".$p["uid"]."");
        while (
$ch=mysql_fetch_array($chains)):
            if (
count($all_finish[$ch["id"]]["chain"])>0):
                if (
$all_finish[$ch["id"]]["chain_opt"]["type"]=='one_by_one'):
                    
$where explode ('|',$ch["params"]);
                    
$step 0;
                    
$find false;
                    for (
$sa=0,$sb=count($where);$sa<$sb;$sa++):
                        if (!
$find):
                        if (
$where[$sa]==0): $step $sa$find true; endif;
                        endif;
                    endfor;
                    if (
$p["location"]==$all_finish[$ch["id"]]["chain"][$step] && substr_count($ch["params"],'0')>0):
                        foreach(
$all_quests as $pl=>$qu):
                            if (
count($qu[$ch["id"]])>0):
                                echo 
list_quests($qu[$ch["id"]],$p);
                                
$res '';
                            endif;
                        endforeach;
                    endif;
                elseif (
$all_finish[$ch["id"]]["chain_opt"]["type"]=='randomize'):
                    
$where explode ('|',$ch["params"]);
                    
$step 0;
                    
$find false;
                    for (
$sa=0,$sb=count($where);$sa<$sb;$sa++):
                        if (!
$find):
                        
$in_par explode ('@',$where[$sa]);
                        if (
$p["location"]==$in_par[0]): $step $sa$find true; endif;
                        endif;
                    endfor;
                    if (
$p["location"]==$all_finish[$ch["id"]]["chain"][$step]):
                        foreach(
$all_quests as $pl=>$qu):
                            if (
count($qu[$ch["id"]])>0):
                                echo 
list_quests($qu[$ch["id"]],$p);
                                
$res '';
                            endif;
                        endforeach;
                    endif;
                endif;
            endif;
        endwhile;
        if (
count($all_quests[$p["location"]])>0):
            foreach (
$all_quests[$p["location"]] as $quest):
            if ((
$all_finish[$quest[1]]['next']=='' || mysql_num_rows(mysql_query("SELECT * FROM quests WHERE uidp=".$p["uid"]." and id='".$all_finish[$quest[1]]['next']."'"))==0) && ($all_texts[$quest[1]]['start']<>'' || mysql_num_rows(mysql_query("SELECT * FROM quests WHERE uidp=".$p["uid"]." and id='".$quest[1]."'"))>0)):
                echo 
list_quests ($quest,$p);
            endif;
            endforeach;
        else:
            if (
$res=='empty'):
                
$res "Здравствуй, <b>".$p["login"]."</b>!<br>Сейчас у меня нет поручений.";
            endif;
        endif;
    endif;
if (
$res<>'empty'):
    return 
$res;
endif;
}
?>
Онлайн: 2
Реклама