динамическая пауза

Ask for help

Moderators: Murderator+, Murderator

Post Reply
Gromiz
Posts: 444
Joined: 2005-02-08 18:39:50
Location: Moscow

динамическая пауза

Post by Gromiz »

Добрый день!

Подскажите, что за зверь такой- Динамическая пауза!
куда ее, для чего она?

подойдет ли она для лута и будет ли она лучше стандартного Wait(390) ?

и самое главное как его в скрипт страивать ?
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Re: динамическая пауза

Post by Mirage »

Code: Select all

      uo.findtype(hides ,'-1',corpse) ; нашли тип кожи в трупе
      if uo.findcount() then
         itemID = uo.GetSerial('finditem')
         itemCont = UO.ContainerOf(itemID)
               timemove=UO.Timer() ; задаем таймер для выхода из цикла
               uo.MoveItem(itemID,0,'backpack')
               repeat
                  wait(100)
               until UO.ContainerOf(itemID)<>UO.GetSerial('backpack') || timemove+30>UO.Timer() ; цикл крутится пока предмет не переместится в бэкпак или не пройдет 3 секунды
      endif


динамическая пауза срабатывает не по истечению времени а при выполнении каких либо условий. Счетчик, таймер, перемещение объекта, сообщение в журнале (классический чеклаг = динамическая пауза + защита от лага).

Для чего это нужно? Для того что некоторые действия изменяют время выполнения от внешних признаков. Лечение новичка бинтом требует 4 секунды а ГМ лекаря 1 секунду. Придется либо менять каждый раз паузу либо 1 раз поставить динамику на сообщение в журнале или изменение жизней и пауза будет наименьшая для каждого конкретного чара. Или например рубка - иногда требуется 6 секунд на попытку рубить 1 дерево а иногда дерево падает в пак сразу - динамика будет на сообщение журнала "You put" - как только проскочило сообщение - цикл с паузой выбивается и на надо ждать остальные 4-5 секунды.
Конкртно про лут - на шарде где я играю есть класс игроков которые могут при определенном обвесе лутать вещи в два раза быстрее остальных. У простого игрока пауза обычно 600-650 на 1 предмет а у этого класса около 300+пинг. Придется либо лишний раз дергать в цикле предмет на маленькой паузе - а действие которое как бы выполняется но без результата не приятно как сфере так и клиенту (прювет фастлут и краши), либо лутать с большой паузой, либо делать 2 отдельных скрипта для разных классов персонажей и разный обвес.
Главное не увлекаться и (лучше) не ставить паузы менее wait(100).

PS перенес в хелп ибо это не вопрос по скрипту как таковому а просто вопрос :)

Исправил косяк скрипта замеченный Juicy Fruit. :mrgreen: © Я
Post Reply