Количество преметов для инвентаря до 66%

Модератор: IvaniuS

Ответить
Paradigma
Сообщения: 13
Зарегистрирован: Ср окт 07, 2015 12:40 pm

Вт фев 05, 2019 9:29 am

Функция будет возвращать количество предметов которое можно купить столько, что бы ваш лимит веса не превысил 66%

Например, вы знаете что одна стрела Д грейда весит 5г, но не знаете сколько вам надо купить этих стрел что бы не превысить предел 66%, вот эта функция, вам выведет точное число стрел, сколько надо купить.

Код: Выделить всё

uses SysUtils;

var weight: Integer;
     maxWeight: Integer;
     currentWeight: Extended;
     itemCount: Extended;

function CountItemBuyToFull (const weightItem: Integer) : Integer;
begin
  maxWeight := 78660; // 100% inventory
	weight := 51915; // 66% inventory

	currentWeight := (maxWeight * (User.Load() + 1)) / 100;
	itemCount := (weight - Int(currentWeight)) / weightItem;
			
	Result := StrToIntDef(FloatToStr(Int(itemCount)), 0);
end;

while true do begin
print(CountItemBuyToFull(5)); // Выведет максимальное количество предметов которое весит 5г за одну еденицу.
end;
Ответить