diff --git a/main.php b/main.php index d3e5bc6..bf879a5 100644 --- a/main.php +++ b/main.php @@ -315,8 +315,11 @@ function dressitem($id) $itemInSlotRow = db::c()->query('SELECT dressed_slot FROM inventory WHERE owner_id = ?i AND dressed_slot > 0 AND item_type = ?i', $_SESSION['uid'], $selectedItem->item_type); $itemInSlotQuantity = $itemInSlotRow->getNumRows(); if ($itemInSlotQuantity) { - $itemInSlot = $itemInSlotRow->fetch_assoc_array(); - print_r($itemInSlot['dressed_slot']).'
'; + //$itemInSlot = $itemInSlotRow->fetch_assoc(); + while ($row = $itemInSlotRow->fetch_assoc()) { + $itemInSlot[] = $row; + } + print_r($itemInSlot).'
'; } if (in_array($selectedItem->item_type,[HELMET,ARMOR,LEGS,BOOTS,GLOVES,WEAPON,SHIELD,BELT,AMULET])) { //работаем с нормальными слотами @@ -325,7 +328,7 @@ function dressitem($id) db::c()->query('UPDATE inventory SET dressed_slot = item_type WHERE item_id = ?i', $id); } elseif ($itemInSlotQuantity === 1) { // снимаем предмет и одеваем вместо - db::c()->query('UPDATE inventory SET dressed_slot = 0 WHERE dressed_slot = ?i', $itemInSlot['dressed_slot']); + db::c()->query('UPDATE inventory SET dressed_slot = 0 WHERE dressed_slot = ?i', $itemInSlot); db::c()->query('UPDATE inventory SET dressed_slot = item_type WHERE item_id = ?i', $id); } else { // невозможная ситуация - два предмета в одиночном слоте. критическая ошибка, запись в лог, раздевание. @@ -340,7 +343,7 @@ function dressitem($id) } elseif ($itemInSlotQuantity > 0 && $itemInSlotQuantity < 3) { // Сравниваем массив колец и массив слотов для колец. //FIXME Два кольца стакаются в среднем слоте! - $emptyRingSlots = array_diff([9,10,11], $itemInSlot['dressed_slot']); + $emptyRingSlots = array_diff([9,10,11], $itemInSlot); // Сортируем массив свободных слотов по возрастанию. sort($emptyRingSlots); print_r($emptyRingSlots);