function rem_sc_from_book($spell, $book, $login)
{
    // v has_item proveritsja
    //$spell = preg_replace ('/[^a-z0-9_\.]/i', '', $spell);
    //$book = preg_replace ('/[^a-z0-9_\.]/i', '', $book);
    //$login = preg_replace ('/[^a-z0-9_]/i', '', $login);
    include_once 'modules/f_has_item.php';
    if (!has_item($book, $login)) {
        put_g_error('у вас нету книги');
    }
    // zapros na magiju chto v knige:
    $q = do_mysql("SELECT on_take FROM items WHERE fullname = '" . $book . "' AND type = 'b';");
    if (!mysql_num_rows($q)) {
        return 0;
    }
    $magic = mysql_result($q, 0);
    if (strpos($magic, $spell) === false) {
        put_g_error('в этой книге нету этого заклинания!');
    }
    // esli prodolzhaetsja skript, znachit magija estq, izvlekem ee (snachala udalim, togda bagov skryvatq nebvudut:)
    $magic = string_drop($magic, $spell);
    // terq sozdadim:
    //include_once ('modules/f_create_item.php');
    $q = do_mysql("SELECT type FROM magic WHERE fullname = '" . $spell . "';");
    if (!mysql_num_rows($q)) {
        put_error('netu takogo zaklinanija');
    }
    $tp = mysql_result($q, 0);
    //#####$scroll = create_item ('i.s.'.$tp.'.'.$spell);
    include_once 'modules/f_gain_item.php';
    gain_item('i.s.' . $tp . '.' . $spell, 1, $login);
    // obnovim knigu i vse:
    do_mysql("UPDATE items SET on_take = '" . $magic . "' WHERE fullname = '" . $book . "';");
    return 1;
}
function mag_it_create($spell, $login)
{
    //$spell = preg_replace ('/[^a-z0-9_]/i', '', $spell);
    //$login = preg_replace ('/[^a-z0-9_]/i', '', $login);
    $q = do_mysql("SELECT cname FROM magic WHERE fullname = '" . $spell . "';");
    if (!mysql_num_rows($q)) {
        return 0;
    }
    $fullname = mysql_result($q, 0);
    if (!$fullname) {
        return 0;
    }
    // sozdaem veshq:
    include_once 'modules/f_gain_item.php';
    // eta funkcija sama i sozdast
    gain_item($fullname, 1, $login);
    return 1;
}
    exit_msg('рецепт', $f);
} else {
    // prigotavlivaem
    $q = do_mysql("SELECT on_take FROM items WHERE (realname = 'i.o.sta.fireplace' OR realname = 'i.o.sta.fireplace2' OR realname = 'i.o.sta.fireplace3' OR realname = 'i.o.sta.fireplace4') AND location = '" . $p['location'] . "';");
    if (!mysql_num_rows($q)) {
        put_g_error('разведите костер!');
    }
    $on = mysql_result($q, 0);
    if ($on == 'on') {
        // mozhno pristupitq
        for ($i = 0; $i < $c_ins; $i++) {
            check_in_has($ins[$i]);
        }
        for ($i = 0; $i < $c_ing; $i++) {
            check_in_has($ing[$i]);
        }
        include_once 'modules/f_delete_count.php';
        for ($i = 0; $i < $c_ing; $i++) {
            use_in_has($ing[$i]);
        }
        include_once 'modules/f_delete_item.php';
        delete_item($item);
        include_once 'modules/f_gain_item.php';
        if ($p['skills'][37] && rand(0, 100) <= 50 - $c_ing * 10 + $p['skills'][37] * 10) {
            $it = gain_item($what, 1, $LOGIN);
            do_mysql("UPDATE items SET name = CONCAT(name, ' [" . $p['name'] . "]') WHERE fullname = '" . $it . "';");
        }
    } else {
        add_journal('разведите костер!', $LOGIN);
    }
}
}
if (!$p['skills'][35]) {
    put_g_error('нема навыка - нема дров }=[');
}
$f = '';
$q = do_mysql("SELECT on_use FROM items WHERE fullname = '" . $item . "';");
$time = mysql_result($q, 0);
if ($time > 0 && $time > time()) {
    add_journal('Нету гринписа на вас! Глянь во что дерево превратили!!!', $LOGIN);
} else {
    $q = do_mysql("SELECT on_take FROM items WHERE fullname = '" . $item . "';");
    $count = mysql_result($q, 0);
    if ($time > 0) {
        do_mysql("UPDATE items SET on_use = '' WHERE fullname = '" . $item . "';");
        $count = 5;
    }
    if ($p['skills'][35] * 10 >= rand(0, 100)) {
        // рубим ветви -
        $count--;
        include_once 'modules/f_gain_item.php';
        gain_item('i.q.que.vetka', 1, $LOGIN);
    } else {
        add_journal('Вам неудалось срубить ветки!', $LOGIN);
        $count--;
    }
    // obnovim kolichestvo
    do_mysql("UPDATE items SET on_take = '" . $count . "' WHERE fullname = '" . $item . "';");
    if ($count == 0) {
        do_mysql("UPDATE items SET on_use = '" . (time() + 300) . "' WHERE fullname = '" . $item . "';");
    }
}
        gain_item('i.q.que.tabakerka', 1, $LOGIN);
    }
    if ($part == 'na') {
        $p['smq'][0] = 4;
        do_mysql("UPDATE players SET smq = '" . $p['smq'] . "' WHERE login = '******';");
    }
    $spf['please'] = 'Так уж и быть, подожди маленько. [работаeт] Вот, держи. Но если что, я тебя невидел даже!|sps~спасибо';
    $spf['na'] = 'Ех, убирайся с моих глаз, и доставай табакерку как хочешь!';
} elseif ($p['classof'] == 0 && $p['smq'][0] == 5) {
    include_once 'modules/f_has_count.php';
    $c = has_count('i.q.que.leora_letter', 1, $LOGIN);
    if ($c) {
        $wtd .= '|leora~тут тебе Леора письмо прислала...';
        if ($part == 'leora') {
            include_once 'modules/f_gain_item.php';
            gain_item('i.q.que.tabakerka', 1, $LOGIN);
            $p['smq'][0] = 6;
            do_mysql("UPDATE players SET smq = '" . $p['smq'] . "' WHERE login = '******';");
        }
        $spf['leora'] = 'Дай ка.. Ладно тебе повезло, так уже мог и не надеятся на табакерку. Держи, но в дальнейшем будь повежливей...';
    }
}
$spf['sps'] = 'Да незачто, заказы у меня редкие, иногда полезно вспомнить как что делать )|about_plot~расскажи ка про работу плотника';
$spf['start'] = 'Добро пожаловать. Я тутошный плотник, причем неплохой.|about_plot~можно поподробней про работу плотника?' . $wtd;
$spf['about_plot'] = 'Хм, ну что я тебе могу сказать... Умея работать с деревом, ты можешь создавать оружие из дерева, стрелы и все тому подобное. В паре с лесорубом очень приятный навык.|lesorub~а лес рубить меня научить неможешь?|lplot~и сколько ето удоволствие cтоит?';
$spf['lesorub'] = 'Конечно могу. За 600 серебрянных. Тогда тебе останется одеть топор лесоруба, который довольно дешего можно купить у меня, и идти к ближайшему дереву.|learn_treecut~держи деньги|lplot~ну а плотником за сколько стать могу?';
$spf['lplot'] = 'Я объучу тебя азам за 700 серебрянных. Все инструменты ты также можешь купить у меня.|learn_plot~ок, учи!|lesorub~так походу навык лесоруба тоже нужен. Можешь научить?';
if ($part == 'learn_plot') {
    include_once 'modules/f_learn_skill.php';
    learn_skill(36, 700);
}
<?php 
// butylka:
// esli rjadom estq bereg reki ili bereg ozera, to ona prevratitsja v vodu
$q = do_mysql("SELECT COUNT(*) FROM items WHERE (realname = 'i.o.sta.seashore' OR realname = 'i.o.sta.riverbank' OR realname = 'i.o.sta.lake') AND location = '" . $p['location'] . "';");
$c = mysql_result($q, 0);
if ($c) {
    // naberem vody:
    include_once 'modules/f_delete_item.php';
    include_once 'modules/f_gain_item.php';
    delete_item($item);
    gain_item('i.f.dri.nor.water21', 1, $LOGIN);
} else {
    add_journal('никакого эффекта', $LOGIN);
}
$action = '';
<?php 
// ispolqzovatq tjuremnyj kamenq
$q = do_mysql("SELECT fullname FROM items WHERE belongs = '" . $LOGIN . "' AND is_in = 'wea';");
if (!mysql_num_rows($q)) {
    put_g_error('возьмите нож в руки');
}
$w = mysql_result($q, 0);
if (substr($w, 4, 3) != 'kni') {
    put_g_error('возьмите нож в руки');
}
// esli uzhe vybrali travu:
if (isset($_GET['to'])) {
    $to = preg_replace('/[^a-z-0-9\\._]/i', '', $_GET['to']);
    if (!$to) {
        put_g_error('что резать та?');
    }
    $rez[''] = ':';
    if (!isset($rez[$to])) {
        exit_msg('измелчить', 'ничего хорошего из этого не выйдет');
    }
    include_once 'modules/f_gain_item.php';
    $rez[$to] = explode(':', $rez[$to]);
    gain_item($rez[$to][0], $rez[$to][1], $LOGIN);
} else {
    include_once 'modules/f_list_inventory.php';
    $f = list_inventory($LOGIN, 'i.f.tra', 'cut_grass');
    exit_msg('измелчить', $f);
}
<?php 
// ruda->serebro
include_once 'modules/f_has_count.php';
if (has_count('i.q.que.ore', 1, $LOGIN)) {
    // udaljaem syrqe
    include_once 'modules/f_delete_count.php';
    delete_count('i.q.que.ore', 1, $LOGIN);
    include_once 'modules/f_gain_item.php';
    gain_item('i.q.que.alch.serebro', 1, $LOGIN);
}
    // luchniku tutorial
    $wtd = '|tutorial~мне Робина велела прослушать у тебя всю теорию стрельбы...';
    $spf['tutorial'] = 'Так ты у нас лучник будующий. Чтож, помогу чем смогу. Вот несколько вешей, которые ты обязан знать: 1) луки и арбалеты используют стрелы, следи чтоб они не кончились. 2) ты можешь выстрелить на соседнюю локацию. Но разьяренный зверь скорее всего тутже примчится к тебе. Людекй это не касается) 3) вывод: умей пользоватся каким либо оружием ближнего боя. Например ножем. 4) напасть в черте города нелзя. Даже если ты стоишь за городом, а цель нет. В общем, думаю хватает. Остальное познаешь со временем. Иди теперь обратно к внучке.';
    if ($part == 'tutorial') {
        $p['smq'][1] = 4;
        do_mysql("UPDATE players SET smq = '" . $p['smq'] . "' WHERE login = '******';");
    }
}
if ($p['classof'] == 0 && $p['smq'][0] == 0 && !$p['smq'][1] && !$p['smq'][2]) {
    $wtd .= '|about_fur~да, тут дело к тебе нехилое есть. Мне срочно шкура зайца нужна...';
    $spf['about_fur'] = 'Да, а я тут при чем?|fur~при шкуре...';
    $spf['fur'] = 'Ну раз так срочно надо... Тебе качество неимеет значения?|weights~имеет|weights~неимеет';
    $spf['weights'] = 'Я тебе только одну за так отдать могу, но когда я ее снимал нож затупившийся был. Вообщем качество, прямо скажу, китайское. Все еще надо?|yes~а кудаж я денусь...';
    if ($part == 'yes') {
        include_once 'modules/f_gain_item.php';
        gain_item('i.q.hun.rabbit_fur', 1, $LOGIN);
        $p['smq'][0] = 1;
        do_mysql("UPDATE players SET smq = '" . $p['smq'] . "' WHERE login = '******';");
    }
    $spf['yes'] = 'Держи. А теперь, если не секрет, скажи, зачем она тебе?|i_cant~нелзя мне говорить|tell~ай Роттен просил принести...';
}
if ($p['smq'][0] == 1) {
    $spf['i_cant'] = 'Вот помоги человеку а он даже пообщатся нехочет. Тьфу.';
    $spf['tell'] = 'Ха, так он тебя наверно поймать просил ) Так все-таки ты в вояк пошел.. Еще пока передумать можешь, если неотдашь ему шкуру. Яб на твоем месте пошел бы в лучники. Сам подумай, раннее утро, лук, стрелы, охота... А зверья в наших краях.. Ну, как?|about_hunt~нукась, а про охоту по-подробней...|no~Нет, я выбрал, мне солдатская доля по душе!';
    $spf['no'] = 'Хех, такая твоя доля-то будет, в кустах каши нажравшись сидеть. Но ты конечно как хочешь';
}
$spf['start'] = 'Мои тебе поздравления! Приятно, что решил навестить старика. Но чую, не спроста ты пришел...|about_hunt~ага, расскажи-ка ты мне про охоту' . $wtd;
$spf['about_hunt'] = 'А что тебя интересует?|osvezh~как шкуру со зверя снять?|where_hunt~где охотится?|cuts~а ранения на охоте часты?|how_hunt~как вообще охотится?!';
$spf['osvezh'] = 'Возле трупа убитого зверя будет ссылка >, ты одень нож или кинжал, и нажми на нее. Шкуру сдирают от пуповины, но тебе знание таких живодерских подробностей не понадобится, шкуру и все остальное снимется точно. Кстате, если такой ссылки нет - то скорей всего нечего сдирать.|about_hunt~я еще спросить хотел..';
$spf['where_hunt'] = 'Ех, только оглянись вокруг, одни леса! Вот там и охотся. Я могу только тебе поведать про каждый лес. В лесу Красной птици хорошо оттачивать навыки, зайци одни, зато в них еще и попасть надо. Южный лес да пригородный - это глушь ужасная, паутина, деревья вокруг с корнями выдранные, нечисть всякая водится, брр... зато медведи встречаются, а шкура ихняя немало стоит... В дальнем небывал, там жуть тоже говорят, волки вокруг и лесные троли... Я так обычно в столетнем охочусь, тихо там, приятно, но далеко тоже заходить несоветую. Далее Волшебный лес, но в него неположено вообще-то людям ходить. Есть еще пара мест, но ведь небуду тебе всего говорить, ато неинтерестно будет )|about_hunt~ну тогда поговорим о другом';
$spf['cuts'] = 'Ну это смотря с чем сравнивать. Охотясь на зайца опытный охотник его из далека застрелит. Ну а медведя одной стрелой врятли выйдет, поэтому ранения вероятны. В отличии от схватки с нечистью, где ранения почти гарантированы.|regen~а что тогда делать?|about_hunt~расскажи еще';
<?php 
// kamenq venery, ruda->MEDQ
include_once 'modules/f_has_count.php';
if (has_count('i.q.que.ore', 1, $LOGIN)) {
    // udaljaem syrqe
    include_once 'modules/f_delete_count.php';
    delete_count('i.q.que.ore', 1, $LOGIN);
    include_once 'modules/f_gain_item.php';
    gain_item('i.q.que.alch.medq', 1, $LOGIN);
}
<?php 
// kostq
// esli v rukah drevkovoe ili molot, drobim
$q = do_mysql("SELECT COUNT(*) FROM items WHERE ( realname LIKE 'i.w.tre%' OR realname LIKE 'i.w.ham%' ) AND belongs = '" . $LOGIN . "' AND is_in = 'wea';");
$c = mysql_result($q, 0);
if ($c) {
    // naberem vody:
    include_once 'modules/f_delete_item.php';
    include_once 'modules/f_gain_item.php';
    delete_item($item);
    gain_item('i.m.rea.kostq', 25, $LOGIN);
} else {
    add_journal('никакого эффекта', $LOGIN);
}
$action = '';
         include_once 'modules/f_delete_count.php';
         delete_count('i.q.hun.feather', 1, $LOGIN);
     }
 }
 if (($p['smq'][1] == 1 || $p['smq'][1] == 2) && $c_stick) {
     $bec .= '|stick~ветка при мне. Что далее?';
     $spf['stick'] = 'Держи стрелу. В награду ;) Вообщем, со стрелами почти разобрались. Теперь осталося просветить тебя по другим вопросам. Ай, сходи ка к деду, охотнику, ему всеровно там в избе делать нефиг...';
     if ($part == 'stick') {
         $p['smq'][1] = 3;
         do_mysql("UPDATE players SET smq = '" . $p['smq'] . "' WHERE login = '******';");
         include_once 'modules/f_gain_peace_exp.php';
         gain_peace_exp(50, $LOGIN);
         include_once 'modules/f_delete_count.php';
         delete_count('i.q.hun.feather', 1, $LOGIN);
         include_once 'modules/f_gain_item.php';
         gain_item('i.m.arr.arr', 1, $LOGIN);
     }
 }
 if ($p['smq'][1] == 4) {
     $bec .= '|end~Прослушал я туториал. Все?';
     $spf['end'] = 'Все. Держи серебра, это тебе на объучение. Иди теперь во дворец, к Лорду. Должны тебя уже впустить, и грамоту выдать. Служи верно!';
     if ($part == 'end') {
         $p['smq'][1] = 5;
         $p['classof'] = 1;
         do_mysql("UPDATE players SET smq = '" . $p['smq'] . "', classof = '2' WHERE login = '******';");
         include_once 'modules/f_gain_peace_exp.php';
         gain_peace_exp(50, $LOGIN);
         include_once 'modules/f_gain_silver.php';
         gain_silver(700, $LOGIN);
     }
 }
$pts = rand(1, $maxp);
$fs = 0;
foreach ($fish as $key => $value) {
    if ($pts < $key) {
        $pts = $key;
        $fs = $value;
        break;
    }
}
// esli pojmali rybu
if ($fs) {
    $fs = explode('|', $fs);
    // proverka na to chto vytashishq
    $maxcatch = $p['skills'][31] * 5 + $p['skills'][0] * 3 + $p['skills'][1] * 2;
    if (rand(0, $maxcatch) <= rand(0, $pts)) {
        add_journal('Пусто как в колодце :/', $LOGIN);
    } else {
        if (rand(0, $fs[1]) <= rand(0, $maxcatch)) {
            // lovim
            include_once 'modules/f_gain_item.php';
            gain_item($fs[0], 1, $LOGIN);
        } else {
            // lomaem udochku
            include_once 'modules/f_delete_item.php';
            delete_item($p['weapon']);
            add_journal('Ваша удочка не выдержала такой нагрузки. Рыба ее сломала!', $LOGIN);
        }
    }
} else {
    add_journal('Пусто как в колодце :/', $LOGIN);
}
    $max = -1;
    $sk = -1;
    for ($i = 22; $i < 30; $i++) {
        if ($p['skills'][$i] > $max) {
            $sk = $i;
            $max = $p['skills'][$sk];
        }
    }
    if (rand(0, 100) <= $p['skills'][2] * 7 + $p['skills'][$sk] * 5 + $p['skills'][4] && $sk) {
        // pometili uspeshno
        include_once 'modules/f_delete_item.php';
        delete_item($item);
        include_once 'modules/f_gain_item.php';
        gain_item('i.q.que.tscroll', 1, $LOGIN);
        $q = do_mysql("SELECT fullname FROM items WHERE realname = 'i.q.que.tscroll' AND belongs = '" . $LOGIN . "' ORDER BY id_item DESC LIMIT 1;");
        $item = mysql_result($q, 0);
        include_once 'modules/f_loc.php';
        $loc = loc($p['location'], 'locinfo');
        $name = 'свиток портал ' . $loc[1];
        $rn = 'i.q.que.tscroll.' . $p['location'];
        $rn = str_replace('|', '.', $rn);
        do_mysql("UPDATE items SET name = '" . $name . "', on_take = '" . $p['location'] . "', realname = '" . $rn . "' WHERE fullname = '" . $item . "';");
        add_journal('недолго думая вы мастерски нарисовали на свитке пейзаж окружающей вас местности. Возможно, когданибудь это поможет вам сюда вернутся...<br/>', $LOGIN);
    } else {
        include_once 'modules/f_delete_item.php';
        delete_item($item);
        add_journal('вы рисовали магические знаки на свитке до тех пор, пока он стал пригоден лишь для похода в кусты...<br/>', $LOGIN);
        include_once 'modules/f_gain_item.php';
        gain_item('i.q.que.toiletpaper', 1, $LOGIN);
    }
}
}
if ($n == 4) {
    $spf['start'] = 'Вот были времена! И воздух был чище, и пиво вкуснее, и девушки красивее...';
}
if ($n == 5) {
    $spf['start'] = 'Лес Красной птици - это очень странное место. В глуши, около дальней городской стены, прячутся разные волшебные существа - сам видел!';
}
// kvest na zhenitqbu
if ($p['smq'][6] == 3) {
    $spf['start'] = 'Ась? Что ты говорил?|knife1~ты мне неможешь продать тот нож, который ты когда-то выйграл в кости у спецназовца?|knife2~я скупщик товаров. Ищу ценные вещи. Может имеешь какие-нибудь?';
    //if ($part == 'knife1') set_smq (6, 6);
    $spf['knife1'] = 'Какой какой? А, вспомнил... Не, даже не смей просить.';
    $spf['knife2'] = 'Какие например?|knife3~да хотя бы тот нож на стене...';
    $spf['knife3'] = 'И сколько предложешь?|m100~100 серебра|m1000~1000 серебра|m10000~10,000 серебром.';
    //if ($part == 'm100' || $part == 'm1000') set_smq (6, 6);
    $spf['m100'] = 'Не в коем случае... Мне нечего тебе продать. Ступай.';
    $spf['m1000'] = 'Не в коем случае... Мне нечего тебе продать. Ступай.';
    if ($p['money'] < 10000 && $part == 'm10000') {
        //set_smq (6, 6);
        $spf['m10000'] = 'Ну и где деньги? Врун! Убирайся прочь.';
    } else {
        if ($p['money'] >= 10000 && $part == 'm10000') {
            set_smq(6, 4);
            $p['money'] -= 10000;
            do_mysql("UPDATE players SET money = '" . $p['money'] . "' WHERE login = '******';");
            include_once 'modules/f_gain_item.php';
            gain_item('i.q.que.ritual_knife', 1, $LOGIN);
            $spf['m10000'] = 'Не в коем случае... Хотя... Это даже за много... Он где-то 15 серебром стоит. Но раз ты предложил 10000... Бери';
        }
    }
}
<?php 
// kostq->kalqcij
include_once 'modules/f_has_count.php';
if (has_count('i.q.hun.bone', 1, $LOGIN)) {
    // udaljaem syrqe
    include_once 'modules/f_delete_count.php';
    delete_count('i.q.hun.bone', 1, $LOGIN);
    include_once 'modules/f_gain_item.php';
    gain_item('i.q.que.alch.kalqcij', 1, $LOGIN);
}
示例#17
0
function pay_item($Item_ID)
{
    $Item = get_db('request_item', array('Item_ID' => $Item_ID));
    if (!empty($Item)) {
        if (user_data('Account_Golds') >= $Item[$sell_price]) {
            $Gold = user_data('Account_Golds') - $Item[$sell_price];
            update_db('Caranille_Accounts', array('Account_Golds' => $Gold, 'Account_ID' => user_data('Account_ID')));
            return gain_item($Item_ID);
            //return true ;
        }
    }
    return false;
}
<?php 
// ispolqzovatq tjuremnyj kamenq
$q = do_mysql("SELECT id_item FROM items WHERE fullname = '" . $item . "';");
$id_item = mysql_result($q, 0);
if ($id_item % 3 == 0) {
    $ch = 15;
} elseif ($id_item % 2 == 0) {
    $ch = 10;
} else {
    $ch = 5;
}
if (substr($p['weapon'], 0, 11) == 'i.w.axe.kir') {
    $ch *= 2;
}
if (rand(0, 100) <= $ch) {
    // poluchaem zoloto;
    include_once 'modules/f_gain_item.php';
    gain_item('i.q.que.goldpiece', 1, $LOGIN);
} else {
    // poluchaem granit;
    exit_msg('камнеломня', 'Вы отломали куcок камня!');
}
<?php 
// zheltyj kamenq, prevrashjaet rybu v fosfor
if (!isset($_GET['part'])) {
    // vyberaem chto prevratitq v fosfor, ato somov vsjakih zhalko budet
    include_once 'modules/f_list_inventory.php';
    $f .= '<b>выберите рыбу, какую не жалко:</b><br/>';
    $f .= list_inventory($LOGIN, 'i.f.foo.fish_', 'use_stand&item=' . $item . '&part=2');
    exit_msg('желтый камень', $f);
} else {
    $to = mysql_real_escape_string(strip_tags($_GET['to']));
    if (substr($to, 0, 12) != 'i.f.foo.fish') {
        put_g_error('ты та что суешь?');
    }
    include_once 'modules/f_has_item.php';
    if (!has_item($to, $LOGIN)) {
        put_g_error('а где рыба?');
    }
    // udaljaem syrqe
    include_once 'modules/f_delete_item.php';
    delete_item($to);
    include_once 'modules/f_gain_item.php';
    gain_item('i.q.que.alch.fosfor', 1, $LOGIN);
}
    } else {
        if ($rnd < 48) {
            // kvestavaja veshq:
            include 'modules/sp/sp_rand_quest_item.php';
        } else {
            if ($rnd < 59) {
                // wit
                include 'modules/sp/sp_rand_shield.php';
            } else {
                if ($rnd < 79) {
                    // eda
                    include 'modules/sp/sp_rand_food.php';
                } else {
                    if ($rnd < 89) {
                        // svitok:
                        include 'modules/sp/sp_rand_scroll.php';
                    } else {
                        // reagenty
                        include 'modules/sp/sp_rand_rea.php';
                    }
                }
            }
        }
    }
}
add_journal('Свечка ярко вспыхнула и расстворилась в воздухе, оставив за собой едкий болотный запах.', $LOGIN);
include_once 'modules/f_delete_item.php';
delete_item($item);
include_once 'modules/f_gain_item.php';
gain_item($npc['drop2'], 1, $LOGIN);
function carpenter($i)
{
    global $LOGIN;
    global $p;
    global $arr;
    global $sm;
    // setting image
    $imga = substr($sm['carpenter'], 0, 7);
    if (!array_key_exists($imga, $arr)) {
        put_error('несовпадают индексы');
    }
    $imga = str_replace('.', '_', $imga);
    $img = file('modules/ascii_art/carpenter/' . $imga . '.txt');
    $img = implode('', $img);
    $img = str_replace("\n", '', $img);
    $img = str_replace("\r", '', $img);
    $sm['carpenter_img'][$i] = $img[$i];
    do_mysql("UPDATE carpenter SET carpenter_img = '" . $sm['carpenter_img'] . "' WHERE id_player = '" . $p['id_player'] . "';");
    // checking if all identical
    $found = 1;
    for ($i = 0; $i < 25; $i++) {
        if ($img[$i] == ' ') {
            continue;
        }
        if ($img[$i] != $sm['carpenter_img'][$i]) {
            $found = 0;
            break;
        }
    }
    if ($found) {
        // gaining item
        include_once 'modules/f_gain_item.php';
        $it = gain_item($sm['carpenter'], 1, $LOGIN);
        do_mysql("DELETE FROM carpenter WHERE id_player = '" . $p['id_player'] . "';");
        do_mysql("UPDATE items SET name = CONCAT(name, ' [" . $p['name'] . "]') WHERE fullname = '" . $it . "';");
        exit_msg('плотник', 'изделье завершено! ');
    }
}
<?php 
// ruda->zhelezo
include_once 'modules/f_has_count.php';
if (has_count('i.q.que.ore', 1, $LOGIN)) {
    // udaljaem syrqe
    include_once 'modules/f_delete_count.php';
    delete_count('i.q.que.ore', 1, $LOGIN);
    include_once 'modules/f_gain_item.php';
    gain_item('i.q.que.alch.zhelezo', 1, $LOGIN);
}
}
if ($_GET['part'] == 2) {
    // teperq sobstvenno vse i delaem
    $scroll = preg_replace('/[^a-z0-9_\\.]/i', '', $_GET['to']);
    include_once 'modules/f_has_item.php';
    if (!has_item($scroll, $LOGIN)) {
        put_error('netu etogo svitka');
    }
    // proverim estq li u igroka pustoj svitok:
    include_once 'modules/f_has_count.php';
    include_once 'modules/f_delete_count.php';
    if (!has_count('i.q.que.scroll', 1, $LOGIN)) {
        put_g_error('при себе надо иметь пустой свиток для записи');
    }
    // udaljaem -
    delete_count('i.q.que.scroll', 1, $LOGIN);
    // berem nazvanie svitka
    include_once 'modules/f_real_name.php';
    $rn = real_name($scroll);
    // berem cebnu svitka
    $q = do_mysql("SELECT price FROM items WHERE fullname = '" . $scroll . "';");
    $price = mysql_result($q, 0);
    if (rand(0, $price / 10) <= $p['skills'][30]) {
        // sozdaem svitok
        include_once 'modules/f_gain_item.php';
        gain_item($rn, 1, $LOGIN);
        add_journal('вы скопировали свиток', $LOGIN);
    } else {
        add_journal('вы испортили пустой свиток', $LOGIN);
    }
}
<?php 
// slabaja poroda, otbivaetsja kamenq
include_once 'modules/f_gain_item.php';
gain_item('i.q.que.alch.kamenq', 1, $LOGIN);
示例#25
0
 if (monster_data('HP') <= 0) {
     $end_battle = true;
     $Gold_Gained = monster_data('Golds');
     $_final .= "Vous avez remporté le combat !!!<br /><br />";
     $_final .= "Pièces d'or (PO) + {$Gold_Gained} <br /><br />";
     user_set('Account_Golds', user_data('Account_Golds') + $Gold_Gained);
     if ($_SESSION['Arena_Battle'] !== 1) {
         $Experience_Gained = monster_data('Experience');
         $_final .= "Experience (XP) + {$Experience_Gained} <br />";
         user_set('Account_Experience', user_data('Account_Experience') + $Experience_Gained);
         $loots = list_db('foreign_list', array('table' => 'Caranille_Monster_Loot', 'ID' => 'Loot_Monster_ID', 'value' => monster_data("ID")));
         if (!empty($loots)) {
             foreach ($loots as $loot) {
                 $Monster_Item_Rate = mt_rand(0, 100);
                 if ($Monster_Item_Rate <= $loot['Loot_Rate']) {
                     $Item = gain_item($loot['Loot_Item_ID']);
                     if ($Item != null) {
                         $Item_Name = stripslashes($Item['Item_Name']);
                         $_final .= "Vous avez gagné l'objet suivant: {$Item_Name}<br />";
                     }
                 }
             }
         }
     }
     if ($_SESSION['Arena_Battle'] == 1) {
         $message = "Votre victoire dans l'arène vous rapporte 1 points de notoriete<br />";
         user_set('Account_Notoriety', user_data('Account_Notoriety') + 1);
         $Player_ID = monster_data('ID');
         exec_db("UPDATE Caranille_Accounts SET Account_Notoriety= Account_Notoriety - 1 WHERE Account_ID= {$Player_ID}");
     }
     if ($_SESSION['Chapter_Battle'] == 1) {
<?php 
// ruda->svinec
include_once 'modules/f_has_count.php';
if (has_count('i.q.que.ore', 1, $LOGIN)) {
    // udaljaem syrqe
    include_once 'modules/f_delete_count.php';
    delete_count('i.q.que.ore', 1, $LOGIN);
    include_once 'modules/f_gain_item.php';
    gain_item('i.q.que.alch.svinec', 1, $LOGIN);
}
示例#27
0
     $mi['i.q.que.inv4'] = '9|заплечный мешок - 9золотых - устонавливает количество мест до 35, положеные вещи весят на 25% меньше (одноразовый эффект на всегда)';
     $mi['i.q.que.inv5'] = '12|заплечный мешок - 12золотых - устонавливает количество мест до 40, положеные вещи весят на 50% меньше (одноразовый эффект на всегда)';
     $mi['i.q.que.flow_stone'] = '100|цветущий камень - 100золотых - позволяет женится';
     if (isset($_GET['item'])) {
         $item = $_GET['item'];
         if (!isset($mi[$item])) {
             put_g_error('нет такой вещи в продаже');
         }
         $mi[$item] = explode('|', $mi[$item]);
         if ($mi[$item][0] > $p['gold']) {
             put_g_error('нехватает золота');
         }
         $p['gold'] -= $mi[$item][0];
         do_mysql("UPDATE players SET gold = '" . $p['gold'] . "' WHERE id_player = '" . $p['id_player'] . "';");
         include_once 'modules/f_gain_item.php';
         gain_item($item, 1, $LOGIN);
         exit_msg('купля состоялась', '<a class="blue" href="game.php?sid=' . $sid . '&action=gold">вернутся</a>');
     }
     foreach ($mi as $key => $val) {
         $val = explode('|', $val);
         $f .= $val[1];
         $f .= '<br/><a class="blue" href="game.php?sid=' . $sid . '&action=gold&sa=mall&item=' . $key . '">купить</a><br/>';
     }
 } else {
     if ($_GET['sa'] == 'buy') {
         $f .= 'пока — никак. скоро будет';
         //$f .= 'для получения золота надо перевести определеное количество wmz на счет администрации:<br/>';
         //$f .= '<b>Z318250669664</b><br/>';
         //$f .= 'сумма - обезательно целое число. 1wmz - 10золотых. в коментарий ОБЕЗАТЕЛЬНО запишите слово gold и ваш логин, например <b>gold maxx</b>. в течении рабочего дня ваш золотой счет должен пополнится.<br/>';
     }
 }
            $to = real_name($to);
            // dalee, berem shans prigotovitq
            // on raven 100 - ves * 10 + navyk * 10.
            // esli ves > 30, on raven navyku prigotovlenija
            // esli navyk 0, shans 0
            $chanse = 0;
            if ($wgh < 30) {
                $chanse = 100 - $wgh * 10 + $p['skills'][37] * 10;
            } else {
                $chanse = $p['skills'][37];
            }
            if (!$p['skills'][37]) {
                $chanse = 0;
            }
            // proverjaem vyshlo li prigotovitq -
            if (rand(0, 100) <= $chanse) {
                $to = str_replace('raw_', 'fry_', $to);
                $to = str_replace('fish', 'fry_fish', $to);
                include_once 'modules/f_gain_item.php';
                gain_item($to, 1, $LOGIN);
            } else {
                add_journal('еда обуглилась...', $LOGIN);
            }
        }
    } else {
        if ($_GET['sa'] == 'takeugolq') {
            include_once 'modules/f_gain_item.php';
            gain_item('i.q.que.alch.ugolq', 1, $LOGIN);
        }
    }
}
    $c = has_count('i.f.dri.nor.water', 1, $LOGIN);
    if (!$c) {
        $wtd .= '|was~Был я у Фьюярна.';
        $spf['was'] = 'Да? Ой, наверно забыл тебе напомнить, он безумец, хоть и ужастно мошьный маг. А может быть и сошел с ума от своей силы.Почему надо его задание выполнить? Просто традиция такая. А, кстати, какое задание тебе дали?|ros~утреней росы принести';
        $spf['ros'] = 'Даа, mon ami, кранты тебе. Он еще не настолько крышей съехал чтоб воду за росу принять. А роса росой является пока на траве. Донести с травой тебе тоже невыйдет. Оба, одно заклинание вспомнил! Что, если его на воду наложить? Давай попробуем, самому интерестно стало, вдрук выйдет? Принеси мне воду. Купи бутылку у Неретора, подойди к озеру, что в лесу Красной птици, и используй. Потом неси ко мне. Вроде все сказал...';
    } else {
        $wtd .= '|water~вот вода';
        $spf['water'] = 'Какая? Нет, что из озера вижу, пить страшно, грязная такая, а мне то она зачем?  Тебе помочь? Как? А, говоришь росу из нее сделать? Как я тебе ее сделаю, ведь роса это... А! Вспомнил, извини старика..|skleroz~ничего, склероз хорошая болезнь, ничего неболит, а каждый день что-то новое узнаешь...';
        $spf['skleroz'] = 'Точно. Дай-ка... Fljur! Ба! Чистейшая роса! А была тина болотная... Держи, неси ему, побыстрей бы избавится от него тебе )';
        if ($part == 'skleroz') {
            $p['smq'][2] = 5;
            do_mysql("UPDATE players SET smq = '" . $p['smq'] . "' WHERE login = '******';");
            include_once 'modules/f_gain_item.php';
            include_once 'modules/f_delete_count.php';
            delete_count('i.f.dri.nor.water', 1, $LOGIN);
            gain_item('i.q.que.rosa', 1, $LOGIN);
        }
    }
}
if ($p['smq'][8] == 2) {
    $wtd .= '|sun~расскажи мне про ритуал солнца.';
    $spf['sun'] = 'Зачем тебе?|greg~Грег просил разузнать|ilike~да Велдир упомянул такой, но отмахнулся нехваткой времени что бы пояснить. Я думаю, это очень интерестный ритуал?';
    $spf['ilike'] = 'У меня тоже его нет...';
    if ($part == 'ilike') {
        set_smq(8, 3);
    }
    $spf['greg'] = 'Он то откуда знает?|dont~я то почем знаю...';
    $spf['dont'] = 'Это все очень странно... Доложи Велдиру что Грег интересуется ритуалом...';
    if ($part == 'dont') {
        set_smq(8, 4);
    }
<?php 
// ruda->olovo
include_once 'modules/f_has_count.php';
if (has_count('i.q.que.ore', 1, $LOGIN)) {
    // udaljaem syrqe
    include_once 'modules/f_delete_count.php';
    delete_count('i.q.que.ore', 1, $LOGIN);
    include_once 'modules/f_gain_item.php';
    gain_item('i.q.que.alch.olovo', 1, $LOGIN);
}