Math error at 11.180 что это за ошибка??
Вылетает постоянно при запуске скрипта!
Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7
Math error at 11.180
Вот сам скрипт
Code: Select all
Program Magery;
var
Self : Cardinal;
//***************************************************************
// Медитируем
//***************************************************************
Procedure Medit;
Begin
useskill('Meditation');
wait(8000);
End;
//***************************************************************
// Кастуем Гейты
//***************************************************************
Procedure Kast;
Begin
cast('Gate Travel');
WaitTargetObject(FindType($1F14, backpack));
wait(3100);
End;
//***************************************************************
// ФУНКЦИЯ МАНЫ
//***************************************************************
function SelfManaControl : Double;
begin
Result := 100 * GetMana(FindType(Self, Ground)) / GetMaxMana(FindType(Self, Ground));
end;
BEGIN
while not dead do
begin
UseObject(Backpack);
wait(1000);
if SelfManaControl < 23.0 then Medit;
if SelfManaControl > 23.0 then Kast;
wait(50);
end;
END.
обрати внимание на эту строчку, тут скорее всего и происходит деление на ноль.
зачем ты объявляешь?
ведь она уже есть в стелсе, возможно этим ты перекрываешь стелсовскую переменную. соотвественно у тебя self=0 и GetMaxMana(0)=0
да и конструкция
избыточна, ведь можно просто
Code: Select all
Result := 100 * GetMana(FindType(Self, Ground)) / GetMaxMana(FindType(Self, Ground));
Code: Select all
var
Self : Cardinal;
да и конструкция
Code: Select all
GetMana(FindType(Self, Ground))
Code: Select all
GetMana(self)
А если одним глазом заглянуть в ФАК, то конструкция может стать еще короче
function Mana: Integer; // Мана
И было-бы нелохо проверку на сейв вставить.
function Mana: Integer; // Мана
Code: Select all
if Mana < 23 then Medit else Kast;
Спс)WladL wrote:А если одним глазом заглянуть в ФАК, то конструкция может стать еще короче
function Mana: Integer; // Мана
И было-бы нелохо проверку на сейв вставить.Code: Select all
if Mana < 23 then Medit else Kast;