[Johnny_Smith]
Мастер
Доброго времени суток дорогие друзья.
Что-то не могу сообразить как мне правильно построить проверку.
Суть в чем:
Есть инвентарь на диалогах. Нужно построить проверку так, чтобы нельзя было положить в инвентарь вещи, если нет места.
Например:
Первая проверка: Например у нас есть яблоко. Мы не можем взять его, если у нас их и так 10. Проверка на лимиты переноса вещей в GetMaxItemCount(item);.
Вторая проверка: Например у нас куплен первый вариант рюкзака, в данном случае pBackPack. В рюкзаке у нас есть десять разных видов фруктов. Нужно сделать так, чтобы одиннадцатый вид фрукта было НЕ ВЗЯТЬ.
Главное, объединить все это в одну функцию.
Сделал небольшие наброски функции, но работает она не совсем верно. Может кто заметит ошибку?
Разбор функции: CheckEmptyInv(playerid, ID_Предмета, Количество);
Что-то не могу сообразить как мне правильно построить проверку.
Суть в чем:
Есть инвентарь на диалогах. Нужно построить проверку так, чтобы нельзя было положить в инвентарь вещи, если нет места.
Например:
Первая проверка: Например у нас есть яблоко. Мы не можем взять его, если у нас их и так 10. Проверка на лимиты переноса вещей в GetMaxItemCount(item);.
Вторая проверка: Например у нас куплен первый вариант рюкзака, в данном случае pBackPack. В рюкзаке у нас есть десять разных видов фруктов. Нужно сделать так, чтобы одиннадцатый вид фрукта было НЕ ВЗЯТЬ.
Главное, объединить все это в одну функцию.
Сделал небольшие наброски функции, но работает она не совсем верно. Может кто заметит ошибку?
Разбор функции: CheckEmptyInv(playerid, ID_Предмета, Количество);
PHP:
stock CheckEmptyInv(playerid, item, itcount)
{
if(PlayerInventory[playerid][item] != 0) if(PlayerInventory[playerid][item] + itcount > GetMaxItemCount(item)) return 1;
else
{
if(PData[playerid][pBackPack] == 1) if(CheckInventory(playerid) > 9) return 1;
if(PData[playerid][pBackPack] == 2) if(CheckInventory(playerid) > 14) return 1;
if(PData[playerid][pBackPack] == 3) if(CheckInventory(playerid) > 19) return 1;
}
return 0;
}
