Вход Регистрация
Файл: takedied.php
Строк: 41
<?
if ($id)  {    // если указан
            // повтор
            
$died=split("|",$game["loc"][$player["loc"]][$take]);
// подготовим массив предметов с трупа
            
$items=array();
            if (
$died[2]) {
                
$it=split(",",$died[2]);
                foreach (
$it as $i) if ($i) {
                    
$item=split("=",$i);
                    
$items[$item[0]]=str_replace(":","|",$item[1]);
                    }
                }
            
//---
            
if (!isset($items[$id])) msg("<p>Нет такого предмета");
            
$item=split("|",$items[$id]);
            
// проверим кол-во
            
if ($item[1]>&& !$num
            {        
                
// запросим кол-во
                
$stmp="<form action="$PHP_SELF?sid=$sid&take=$take&id=$id" method="post">Укажите количество:n<br/><input name="num" value="".$item[1]."" format="6n" class="inup"/>n<br/><input type="submit" value="Отправить" class="btn">";
                
msg($stmp);
            }
            
$count = (int)$num;
            if (!
$count || $count<1$count=1;    // если не указано, то 1 предмет
            
if ($count>$item[1]) $count=$item[1];    // и максимум берем все что есть
            // удаляем с трупа
            
$item[1]-=$count;
            if (
$item[1]<=0) unset($items[$id]); else $items[$id]=implode("|",$item);
            
// добавляем игроку в items
            
if (isset($player["items"][$id])) $itemp=split("|",$player["items"][$id]); else {$itemp=$item$itemp[1]=0;}
            
$itemp[1]+=$count;
            
$player["items"][$id]=implode("|",$itemp);
            
addjournal($login,"Вы взяли ".$count." ".$item[0]);
            
// обновляем все предметы у трупа
            
$it="";
            foreach(
array_keys($items) as $i$it.=$i."=".str_replace("|",":",$items[$i]).",";
            
$died[2]=$it;
            
$game["loc"][$player["loc"]][$take]=implode("|",$died);
            
$id=0;    // чтобы вывести список оставшихся
            
}

        if (!
$id) {        // если не указан конкретный предмет, кот. взять, выведем список
            // повтор, чтобы после забирания одного предмета вывести список оставшихся
            
$died=split("|",$game["loc"][$player["loc"]][$take]);
            
// подготовим массив предметов с трупа
            
$items=array();
            if (
$died[2]) {
                
$it=split(",",$died[2]);
                foreach (
$it as $i) if ($i) {
                    
$item=split("=",$i);
                    
$items[$item[0]]=str_replace(":","|",$item[1]);
                    }
                }
            
//---
            
if (count($items)>0) {
                if (
$died[1]) $stmp="<p>Брать отсюда предметы будет преступлением!"; else $stmp="<p>Предметы:";
                
$ind=0$count=0; if(!$start$start=0;
                foreach (
array_keys($items) as $i) {
                    if (
$ind>=$start && $ind<$start+$count_show) {    //FIX: может +1?
                        
$k=split("|",$items[$i]);
                        if (
$k[1]>1$k=$k[0]." (".$k[1].")"; else $k=$k[0];
                        
$stmp.= "n<br/><a href="$PHP_SELF?sid=$sid&how=takedied&take=$take&to=$i">".$k."</a>";
                        }
                    
$ind++;
                    }
                if (
$start) {$stmp.= "n<br/><a href="$PHP_SELF?sid=$sid&take=$take">^ </a>";}
                if (
$start+$count_show<count($items)) {if (!$start$stmp.="n<br/>"$stmp.= "<a href="$PHP_SELF?sid=$sid&take=$take&start=".($start+$count_show)."">+ ".(count($items)-$start-$count_show)."</a>";}
                
msg($stmp,$died[0]);
                }else 
msg("<p>Ничего нет",$died[0]);
            }
?>
Онлайн: 2
Реклама