function gain_item($item, $count, $login) { global $I_SEP_C, $p; //$item = preg_replace ('/[^a-z0-9\._]/i', '', $item); $count = preg_replace('/[^0-9]/', '', $count); //$login = preg_replace ('/[^a-z0-9_]/', '', $login); if (!$item || !$count || !$login) { put_error('заполните усе данные (это к админу)'); } $id = is_player($login); include_once 'modules/f_create_item.php'; include_once 'modules/f_add_item_to_pl.php'; include_once 'modules/f_add_item_to_loc.php'; include_once 'modules/f_get_it_name.php'; if (substr($item, 2, 1) == 'm') { $nitem = create_item($item); //add_item_to_pl ($login, $nitem); $name = get_it_name($nitem); $q = do_mysql("SELECT COUNT(*) FROM items WHERE belongs = '" . $login . "' AND is_in = 'inv' AND weight > 0;"); $c = mysql_result($q, 0); if ($c > $I_SEP_C) { add_item_to_loc($p['location'], $nitem); } else { $q = do_mysql("SELECT fullname FROM items WHERE belongs = '" . $login . "' AND is_in = 'inv' AND realname = '" . $item . "';"); if (mysql_num_rows($q)) { $fn = mysql_result($q, 0); do_mysql("UPDATE items SET on_take = on_take + " . $count . " WHERE fullname = '" . $fn . "';"); do_mysql("DELETE FROM items WHERE fullname = '" . $nitem . "';"); } else { add_item_to_pl($login, $nitem); do_mysql("UPDATE items SET on_take = '" . $count . "' WHERE fullname = '" . $nitem . "';"); } } add_journal('вы получили ' . $name . '!', $login); } else { for ($i = 0; $i < $count; $i++) { $nitem = create_item($item); $name = get_it_name($nitem); $q = do_mysql("SELECT COUNT(*) FROM items WHERE belongs = '" . $login . "' AND is_in = 'inv' AND weight > 0;"); $c = mysql_result($q, 0); if ($c > $I_SEP_C) { add_item_to_loc($p['location'], $nitem); } else { add_item_to_pl($login, $nitem); } add_journal('вы получили ' . $name . '!', $login); } } return $nitem; }
put_g_error('больше этой веши взять нелзя'); } include_once 'modules/f_increase_misc.php'; if ($count == $it['on_take']) { include_once 'modules/f_delete_item.php'; delete_item($item); increase_misc($b['fullname'], $count); } else { include_once 'modules/f_decrease_misc.php'; decrease_misc($item, $count); increase_misc($b['fullname'], $count); } } } else { // veshq normalqnaja, posemu prosto perelozhim: add_item_to_pl($LOGIN, $item); } $dead2 = $dead; // nu a teperq razberemsja, mozhno li tak: if (substr($dead, 0, 4) == 'd.n.') { $dead = explode('.', $dead); if ($dead[2] != $p['id_player']) { $q = do_mysql("SELECT login, clan FROM players WHERE id_player = '" . $dead[2] . "';"); $cl = mysql_fetch_assoc($q); $clan = explode('|', $cl['clan']); if ($p['clan'][0] != $clan[0]) { if ($p['marry'] != $cl['login']) { // ne ty, ne zhena i ne soklanovec. // maroder tobishq $p['status1'][0] = 1; $p['last'][4] = time();
function take_item($item, $login) { //$item = preg_replace ('/[^a-z0-9\._]/i', '', $item); //$login = mysql_real_escape_string ($login); $id = is_player($login); $q = do_mysql("SELECT name, gender, location, carry, skills FROM players WHERE id_player = '" . $id . "';"); if (!mysql_num_rows($q)) { return 0; } $p = mysql_fetch_assoc($q); $p['skills'] = explode('|', $p['skills']); $q = do_mysql("SELECT name FROM items WHERE location = '" . $p['location'] . "' AND fullname = '" . $item . "';"); if (!mysql_num_rows($q)) { put_g_error('нету такой вещи!'); } $name = mysql_result($q, 0); include_once 'modules/f_add_item_to_pl.php'; add_item_to_pl($login, $item); // teperq esli che odenem: $q = do_mysql("SELECT on_take, name FROM items WHERE fullname = '" . $item . "';"); $iti = mysql_fetch_assoc($q); $cl = substr($item, 2, 1); $itinf = explode('~', $iti['on_take']); $q = do_mysql("SELECT fullname FROM items WHERE belongs = '" . $login . "' AND is_in = 'wea';"); if (!mysql_num_rows($q)) { $weapon = ''; } else { $weapon = mysql_result($q, 0); } $q = do_mysql("SELECT fullname FROM items WHERE belongs = '" . $login . "' AND is_in = 'shi';"); if (!mysql_num_rows($q)) { $shield = ''; } else { $shield = mysql_result($q, 0); } if ($cl == 'w' && strpos($item, '.2h.') === false || $cl == 'w' && !$shield && $p['skills'][40] > 0) { // odenem oruzhie if (!$weapon) { // tip $tp = substr($item, 4, 3); switch ($tp) { case 'swo': $numb = 7; break; case 'axe': $numb = 8; break; case 'ham': $numb = 9; break; case 'spe': $numb = 10; break; case 'bow': $numb = 11; break; case 'arb': $numb = 12; break; case 'kni': $numb = 13; break; case 'kli': $numb = 14; break; case 'tre': $numb = 15; break; } if ($p['skills'][0] >= $itinf[0] && $p['skills'][1] >= $itinf[1] && $p['skills'][2] >= $itinf[2] && $p['skills'][3] >= $itinf[3] && isset($numb) && $p['skills'][$numb] >= $itinf[4]) { do_mysql("UPDATE items SET is_in = 'wea' WHERE fullname = '" . $item . "';"); } } } elseif ($cl == 'x') { // vzjatq shit // esli netu odetogo wita if (!$shield && strpos($weapon, '.2h.') === false) { if ($p['skills'][0] >= $itinf[0] && $p['skills'][1] >= $itinf[1] && $p['skills'][2] >= $itinf[2] && $p['skills'][3] >= $itinf[3]) { do_mysql("UPDATE items SET is_in = 'shi' WHERE fullname = '" . $item . "';"); } } } elseif ($cl == 'a') { // odetq bronju) if ($p['skills'][0] >= $itinf[0] && $p['skills'][1] >= $itinf[1] && $p['skills'][2] && $itinf[2] && $p['skills'][3] >= $itinf[3]) { // tip $tp = substr($item, 4, 3); switch ($tp) { case 'hea': $numb = 0; break; case 'bo1': $numb = 1; break; case 'bo2': $numb = 2; break; case 'sho': $numb = 3; break; case 'glo': $numb = 4; break; case 'bel': $numb = 5; break; case 'leg': $numb = 6; break; case 'pon': $numb = 7; break; case 'bot': $numb = 8; break; case 'amu': $numb = 9; break; case 'rin': $numb = 10; break; } // esli netu odetogo togo tipa broni $q = do_mysql("SELECT price FROM items WHERE belongs = '" . $login . "' AND is_in = 'a" . $numb . "';"); if (!mysql_num_rows($q)) { do_mysql("UPDATE items SET is_in = 'a" . $numb . "' WHERE fullname = '" . $item . "';"); ///////////////////////////// // esli odelisq kolqca i amulety, izmenim harakteristiku if ($numb == 9 || $numb == 10) { $jew = do_mysql("SELECT on_use FROM items WHERE fullname = '" . $item . "';"); $jew = mysql_result($jew, 0); $jew = explode('~', $jew); $p['skills'][0] += $jew[0]; $p['skills'][1] += $jew[1]; $p['skills'][2] += $jew[2]; $p['skills'][3] += $jew[3]; $sk = implode('|', $p['skills']); do_mysql("UPDATE players SET skills = '" . $sk . "' WHERE login = '******';"); } } } } if ($p['gender'] == 'male') { $text = $p['name'] . ' поднял'; } else { $text = $p['name'] . ' поднялa'; } add_journal($text . ' ' . $iti['name'] . '!', 'l.' . $p['location']); }
// klad tjurqmy $kl['rele|2x11'] = 10; // klad niutona $kl['rogl|2x2'] = 11; // klad Rogla // postojannye iskopaemye $pi['prf4|2x5'] = 'i.q.que.alch.sera'; include_once 'modules/f_gain_item.php'; $shoron = 0; // klanovye shorony $q = do_mysql("SELECT fullname, name FROM items WHERE belongs = '" . $p['location'] . "';"); if (mysql_num_rows($q)) { include_once 'modules/f_add_item_to_pl.php'; $shoron = 1; while ($it = mysql_fetch_assoc($q)) { add_item_to_pl($LOGIN, $it['fullname']); add_journal('вы получили ' . $it['name'] . '!', $LOGIN); } } if (isset($pi[$p['location']])) { gain_item($pi[$p['location']], 1, $LOGIN); include 'modules/s_main.php'; } if (!isset($kl[$p['location']]) && !$shoron) { exit_msg('клад', 'тут клада нет...'); } else { if (!isset($kl[$p['location']])) { include 'modules/s_main.php'; } } // teperq esli lokacija takova, i klad ne vykopan, podkljuchaem fajl