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;
}
function drop_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 FROM items WHERE belongs = '" . $login . "' AND is_in <> 'ban' AND fullname = '" . $item . "';");
    if (!mysql_num_rows($q)) {
        put_g_error('у вас нету этой вещи');
    }
    $name = mysql_result($q, 0);
    // raz vse estq, vykinem v lokaciju.
    $q = do_mysql("SELECT location FROM players WHERE id_player = '" . $id . "';");
    $loc = mysql_result($q, 0);
    include_once 'modules/f_add_item_to_loc.php';
    add_item_to_loc($loc, $item);
    $q = do_mysql("SELECT gender, name FROM players WHERE id_player = '" . $id . "';");
    $p = mysql_fetch_assoc($q);
    if ($p['gender'] == 'male') {
        $text = $p['name'] . ' 6poccul';
    } else {
        $text = $p['name'] . ' 6poccula';
    }
    add_journal($text . ' ' . $name . '!', 'l.' . $loc);
}
}
$count_i = mysql_result($q, 0);
if ($count > $count_i) {
    $count = $count_i;
}
if (!$count) {
    $count = 1;
}
$iq = do_mysql("SELECT name FROM items WHERE fullname = '" . $item . "';");
$itname = mysql_result($iq, 0);
include_once 'modules/f_add_item_to_loc.php';
// esli kidaetsja vse:
if ($count == $count_i) {
    add_item_to_loc($p['location'], $item);
} else {
    include_once 'modules/f_decrease_misc.php';
    include_once 'modules/f_create_item_m.php';
    include_once 'modules/f_real_name.php';
    $rn = real_name($item);
    $nitem = create_item_m($rn, $count);
    decrease_misc($item, $count);
    add_item_to_loc($p['location'], $nitem);
}
if ($p['gender'] == 'male') {
    $vz = 'бросил';
} else {
    $vz = 'бросила';
}
add_journal('<p>' . $p['name'] . ' ' . $vz . ' ' . $itname . ' (' . $count . ')</p>', 'l.' . $p['location']);
$NO_CONTINUE = 1;
include 'modules/s_journal.php';
<?php 
// pustoj svitok. pri prjamom ispolqzovanii ego mozhno pometitq pod portal, vtoroj raz portal sozdaetsja
$q = do_mysql("SELECT on_take FROM items WHERE fullname = '" . $item . "';");
$loc = mysql_result($q, 0);
if ($loc) {
    // sozdaem portal
    // maksimalqnyj navyk magii
    $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] * 5 + $p['skills'][$sk] * 4 + $p['skills'][4] && $sk) {
        $t = ($p['skills'][2] + $p['skills'][$sk] + $p['skills'][4]) * 2;
        $itn = 'i.o.sta.portal~' . $loc . '~' . $p['location'] . '~' . $t;
        include_once 'modules/f_create_item.php';
        $portal = create_item($itn);
        include_once 'modules/f_add_item_to_loc.php';
        add_item_to_loc($p['location'], $portal);
        add_journal('Вы долго вглядывались в намалеванный пейзаж, пока тот четко не возник перед глазами.', $LOGIN);
        add_journal('<b>Вдруг воздух расступился, и появилась пустота. Через какое-то мгновенье пустота привратилась в пейзаж, отличный от укружающей вас местности.</b>', 'l.' . $p['location']);
        add_journal('<b>Вдруг воздух расступился, и появилась пустота. Через какое-то мгновенье пустота привратилась в пейзаж, отличный от укружающей вас местности.</b>', 'l.' . $loc);
    } else {
        include_once 'modules/f_delete_item.php';
        delete_item($item);
        add_journal('Вы долго любовались намалеванным пейзажом, и решили что ему самое место в фондах эрмитажа. Тут свиток изщез.', $LOGIN);
    }
}
                        $qpp = 5;
                        $n = 'мощный';
                    }
                }
            }
        }
        $q = do_mysql("SELECT id_item, name, jewel, weight FROM items WHERE fullname = '" . $it . "';");
        $ii = mysql_fetch_assoc($q);
        if ($ii['jewel']) {
            $ii['jewel'] .= '|' . $qpp;
        }
        $ii['name'] = $n . ' ' . $ii['name'] . ' [' . $p['name'] . ']';
        do_mysql("UPDATE items SET name = '" . $ii['name'] . "', jewel = '" . $ii['jewel'] . "' WHERE id_item = '" . $ii['id_item'] . "';");
        include_once 'modules/f_get_pl_weight.php';
        include_once 'modules/f_add_item_to_pl.php';
        include_once 'modules/f_add_item_to_loc.php';
        $pw = get_pl_weight($login);
        $q = do_mysql("SELECT COUNT(*) FROM items WHERE belongs = '" . $LOGIN . "' AND is_in = 'inv' AND weight > 0;");
        $c = mysql_result($q, 0);
        $p['carry'] = explode('|', $pp['carry']);
        if ($pw + $ii['weight'] > $p['carry'] || $c > $I_SEP_C) {
            add_item_to_loc($p['location'], $it);
        } else {
            add_item_to_pl($LOGIN, $it);
        }
        $name = $ii['name'];
        add_journal('вы получили ' . $name . '!', $LOGIN);
    } else {
        add_journal('невышло приготовить', $LOGIN);
    }
}
             $iloc = gen_rnd_loc($pl_map, $items[$a[1]][1]);
         }
         $nitem = create_item_m($items[$a[1]][0], $items[$a[1]][2], $iloc, 0);
         add_item_to_loc($iloc, $nitem);
         unset($act[$i]);
     } else {
         $nitem = create_item($items[$a[1]][0]);
         // esli vtoraja chastq pusta, generiruem sluchajno iz vsej karty
         // esli net to iz ukazanyh
         if (!$items[$a[1]][1]) {
             $iloc = gen_rnd_loc($pl_map);
         } else {
             $iloc = gen_rnd_loc($pl_map, $items[$a[1]][1]);
         }
         // dobavljaem veshq v lokaciju i vse
         add_item_to_loc($iloc, $nitem);
         unset($act[$i]);
     }
 }
 if ($a[0] == 'npc' && $a[2] < $now) {
     // npc
     include_once 'modules/f_create_npc.php';
     include_once 'modules/f_add_to_loc.php';
     include_once 'modules/f_gen_rnd_loc.php';
     // sozdaem npc
     if (!is_array($npc[$a[1]])) {
         $npc[$a[1]] = explode(':', $npc[$a[1]]);
     }
     // esli vtoraja chastq pusta, generiruem sluchajno iz vsej karty
     // esli net to iz ukazanyh
     if (!$npc[$a[1]][1]) {