Кольца стакались в одном слоте потому что у них один тип.
This commit is contained in:
parent
bab8ccf6bb
commit
6c37d1ce1b
11
main.php
11
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);
|
$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();
|
$itemInSlotQuantity = $itemInSlotRow->getNumRows();
|
||||||
if ($itemInSlotQuantity) {
|
if ($itemInSlotQuantity) {
|
||||||
$itemInSlot = $itemInSlotRow->fetch_assoc_array();
|
//$itemInSlot = $itemInSlotRow->fetch_assoc();
|
||||||
print_r($itemInSlot['dressed_slot']).'<br>';
|
while ($row = $itemInSlotRow->fetch_assoc()) {
|
||||||
|
$itemInSlot[] = $row;
|
||||||
|
}
|
||||||
|
print_r($itemInSlot).'<br>';
|
||||||
}
|
}
|
||||||
if (in_array($selectedItem->item_type,[HELMET,ARMOR,LEGS,BOOTS,GLOVES,WEAPON,SHIELD,BELT,AMULET])) {
|
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);
|
db::c()->query('UPDATE inventory SET dressed_slot = item_type WHERE item_id = ?i', $id);
|
||||||
} elseif ($itemInSlotQuantity === 1) {
|
} 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);
|
db::c()->query('UPDATE inventory SET dressed_slot = item_type WHERE item_id = ?i', $id);
|
||||||
} else {
|
} else {
|
||||||
// невозможная ситуация - два предмета в одиночном слоте. критическая ошибка, запись в лог, раздевание.
|
// невозможная ситуация - два предмета в одиночном слоте. критическая ошибка, запись в лог, раздевание.
|
||||||
@ -340,7 +343,7 @@ function dressitem($id)
|
|||||||
} elseif ($itemInSlotQuantity > 0 && $itemInSlotQuantity < 3) {
|
} elseif ($itemInSlotQuantity > 0 && $itemInSlotQuantity < 3) {
|
||||||
// Сравниваем массив колец и массив слотов для колец.
|
// Сравниваем массив колец и массив слотов для колец.
|
||||||
//FIXME Два кольца стакаются в среднем слоте!
|
//FIXME Два кольца стакаются в среднем слоте!
|
||||||
$emptyRingSlots = array_diff([9,10,11], $itemInSlot['dressed_slot']);
|
$emptyRingSlots = array_diff([9,10,11], $itemInSlot);
|
||||||
// Сортируем массив свободных слотов по возрастанию.
|
// Сортируем массив свободных слотов по возрастанию.
|
||||||
sort($emptyRingSlots);
|
sort($emptyRingSlots);
|
||||||
print_r($emptyRingSlots);
|
print_r($emptyRingSlots);
|
||||||
|
Loading…
Reference in New Issue
Block a user