Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7

Как сделать таймаут для Move

тут можно задать вопрос по скриптингу
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Post by Vizit0r »

ходилка не рассчитана на преодоление разного реда препятствий, которые придет в голову сотворить западлостроителям :)

в своей ходилке, которая топает по точкам пути пусть делает проверки на сено, подбирает его, и все такое. например, перед каждым шагом.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
GuitarMonster
Neophyte
Neophyte
Posts: 26
Joined: 12.01.2011 1:52

Post by GuitarMonster »

Антисий wrote:

Code: Select all

    rpatch := GetPathArray(1444, 1688, false, 0, MovePathArray);
    For i := 0 to rpatch-1 do
    begin
      movetimeout:= 0;
      repeat
        MoveXY(MovePathArray[i].x,MovePathArray[i].y,false,0,false);
        wait(100);
        movetimeout:= movetimeout + 1;
      until (GetX(self) = MovePathArray[i].x) and (GetY(self) = MovePathArray[i].y) or (movetimeout > 99)
    end;
Думаю в этой строчке нужно поставить true:
MoveXY(MovePathArray.x,MovePathArray.y,true,0,false);

Иначе сервак (клиент?) возвращает (по крайней мере на Dragon World) строку в системный журнал Стелса:
TMover.Resync: called by client

Это похоже на ресенд дрв-шный, у них там зорко за спидхаком следят и если частые ресенды при беге или слишком быстро предметы скриптом перекладываешь - то дисконектят (а могут и забанить).

Хотя я наверное ошибаюсь - что такое TMover.Resync: called by client? Версия Стелса 3.3.0 - 8
CFA
Developer
Developer
Posts: 492
Joined: 20.04.2006 6:03
Contact:

Post by CFA »

это значит что ресенд послал не стелс, а подключенный к нему клиент.
Post Reply