ВНИМАТЕЛЬНО ЧИТАЕМ КОММЕНТАРИИ В КОДЕ
Опсиание принципа работы скрпита (логики):
1) Одеваем курсу
2) Ждем пока значение маны не станет равным значению интеллекта в курсе.
3) Как значения сравнялись сбрасываем робу, юзаем медитацию и одеваем робу.
Спирит спик соответственно юзается через заданный интервал... код был честно сперт на этом форуме Спасибо автору кода.
Code: Select all
program meditation;
{$Include 'all.inc'}
var
k: integer;
n: integer;
ctime: TDateTime;
procedure SpSpeak;
begin
ctime:=Now;
n:=0;
repeat
UseSkill('Spirit Speak');
Wait(3000);
n:=n+1;
until n=3;
ctime:=Timer;
end;
procedure Check_World_Save;
begin
if InJournal('saving')<>-1 then
begin
ClearJournal;
k:=0;
repeat
wait(10000)
k:=k+1;
AddToSystemJournal('World is saving more than '+IntToStr(k*10)+' seconds.');
until (InJournal('data')<>-1) or (k>30)
end
end;
procedure Medita;
begin
useskill('meditation');
addtosystemjournal('Медитируем');
Wait(1500) //задержку можно изменить, там уже сами смотрите...
equipt(ShirtLayer, $1F03); //вместо $1F03 указать type своей курсанутой робы
Check_World_Save;
addtosystemjournal('медитация закончена');
end;
begin
equipt(ShirtLayer, $1F03); //вместо $1F03 указать type своей курсанутой робы
While mana <> 67 do //вместо 67 указать значение вашего интеллекта при одетой курсанутой робе
begin
Check_World_Save;
Wait(2000);
End;
SpSpeak;
while not Dead do
Begin
Check_World_Save;
equipt(ShirtLayer, $1F03); //вместо $1F03 указать type своей курсанутой робы
While mana = Maxmana do
begin
Check_World_Save;
undress;
Medita;
if Round((Timer-ctime)/1000)>300 then SpSpeak;
End;
Wait(500);
End;
end.