Yoko

All sides of Injection
It is currently 2026-01-23 00:42:43

All times are UTC+02:00




Post new topic  Reply to topic  [ 7 posts ] 
Author Message
PostPosted: 2007-03-02 21:34:46 
Offline
User avatar

Joined: 2006-03-10 15:28:05
Posts: 47
Дело простое: Но я не знаю всех команд, по этому в реализации у меня проблемы.

Скрипт прост: Писал я его самостоятельно, брав другие скрипты за основу, но задержка "Wait" не стабильна. Т.к. каст по времени изменяется на десятые секунды, но эти десятые в сумме важны.

Code:
sub Fsuy()
while 1
uo.print(' !!! -= FSIM HIM! =- !!! ')
   uo.cast('Flame Strike','laststatus')
   repeat
   wait(4700)
   wend
end sub


Работает так, на одну кнопку включил он ФСит, на другую выключаю.

Помогите реализовать, так: Допустим кастует ФС, массив из восьми типов регов, как только реги отобрались или физл, выполняет всю процедуру сначало).

_________________
Кто с мечом к нам прийдет - того легче пристрелить :)


Top
   
 Post subject:
PostPosted: 2007-03-03 00:11:45 
Offline
Expert!
User avatar

Joined: 2005-05-20 20:30:10
Posts: 548
чтобы на одну кнопку включать\выключать юзай глобальные переменные - так же было вроде в топике "полезности"
p.s.
Code:
UO.BM, UO.BP, UO.GA, UO.GS,
    UO.MR, UO.NS, UO.SA, UO.SS
[/code]


Top
   
 Post subject:
PostPosted: 2007-03-03 01:16:19 
Offline

Joined: 2006-03-10 00:19:11
Posts: 265
Location: http://drw.ru/
в общем то писал в окне ответа, запускать не пробовал поэтому не исключено что ошибок дохрена, прокомментированые значения подстроить под шард.
Работает так: забиндил на кнопку ф-ция TriggerFS, нажал кнопку и он до охренения ФСит ластатус, нажал ещё раз перестаёт
Code:
sub TriggerFS()
   if UO.GetGlobal('FS') then
      UO.SetGlobal('FS',0)
   else
      UO.SetGlobal('FS',1)
      UO.Exec('FS')
   endif
endsub

sub FS()
   var TGT=UO.GetSerial('laststatus')
   if TGT==UO.GetSerial('self') and TGT=='0x00000000' and TGT=='0xFFFFFFFF' then
      UO.Print('LastStatus Target Error!')
      UO.SetGlobal('FS',0)
      return
   endif
   repeat
      if UO.SS and UO.SA then # РЕГИ ТРЕБУЕМЫЕ НА ФС
         if UO.Mana>=24 then # МАНА ТРЕБУЕМАЯ ДЛЯ ФСА
            UO.Cast('Flame Strike',TGT)
            WaitManaChange(UO.Mana)
         else
            if UO.Count('0x0F0E','0x09DF') then # ТИП И ЦВЕТ ТОТАЛ МАНКИ
               UO.UseType('0x0F0E','0x09DF')
            else
               UO.Print('No mana!')
               UO.SetGlobal('FS',0)
               return
            endif
         endif
      else
         UO.Print('No Reagents!')
         UO.SetGlobal('FS',0)
         return
      endif
   until not UO.GetGlobal('FS')
endsub

Sub WaitManaChange(now)
var timer=0
 while UO.Mana>=now or timer<=100
  timer=timer+1
  wait(50)
 wend
endsub


Top
   
 Post subject:
PostPosted: 2007-03-03 11:41:56 
Offline
User avatar

Joined: 2006-03-10 15:28:05
Posts: 47
Блин, спасибо. Но это не-то, вы только задачу усложняете.
Объясню:
На моём шарде, я хожу в шмоте который мне позволяет пускать фсы один за одним и для прокачки на мобах, важно пускать фс 1 за 1, с минимумом задержек. Каст фса изменяется на десятые секунды, минимальная заддержка "Wait", часто приводит к физлам (1 каст не успевает кастанутся и начинается второй).

Приведу систему:
Code:
sub Fsuy() 
while 1
uo.print(' !!! -= FSIM HIM! =- !!! ')
   uo.cast('Flame Strike','laststatus')
   Ищет реги требуемые на фс UO.SS and UO.SA
   Запоминает кол-во UO.SS = приравнивая его к "X"
   Как-только UO.SS < X or UO.InJournal() = "The spell fizzles" ; Начитает всё сначало.
   wend
end sub

Это систему написал я так, как себе представляю, возможно другие команды или по другому она должна выглядеть, просьба направить меня на правельный путь. За ранее спасибо.

И еще вопрос, может ли этот скрипт работать без TWI?

_________________
Кто с мечом к нам прийдет - того легче пристрелить :)


Top
   
 Post subject:
PostPosted: 2007-03-03 13:40:34 
Offline

Joined: 2006-03-10 00:19:11
Posts: 265
Location: http://drw.ru/
ну то что я написал всё это делать и будет


Top
   
 Post subject:
PostPosted: 2007-03-03 17:04:49 
Offline
User avatar

Joined: 2006-03-10 15:28:05
Posts: 47
В твой скрипт работает, но у меня мана регенится очень быстро!
Он пускает 2-3 фса и скрипт ничего неделает, но функция запущенной остается.

_________________
Кто с мечом к нам прийдет - того легче пристрелить :)


Top
   
 Post subject:
PostPosted: 2007-03-03 17:58:22 
Offline

Joined: 2006-03-10 00:19:11
Posts: 265
Location: http://drw.ru/
хм... ну я ж говорил что не писал в окне ответа... ну попробуй так, лишнее поудалял:
Code:
sub TriggerFS()
   if UO.GetGlobal('FS') then
      UO.SetGlobal('FS',0)
   else
      UO.SetGlobal('FS',1)
      UO.Exec('FS')
   endif
endsub

sub FS()
   var TGT=UO.GetSerial('laststatus')
   if TGT==UO.GetSerial('self') and TGT=='0x00000000' and TGT=='0xFFFFFFFF' then
      UO.Print('LastStatus Target Error!')
      UO.SetGlobal('FS',0)
      return
   endif
   repeat
      if UO.SS and UO.SA then # РЕГИ ТРЕБУЕМЫЕ НА ФС
         UO.Cast('Flame Strike',TGT)
         WaitManaChange(UO.Mana)
      else
         UO.Print('No Reagents!')
         UO.SetGlobal('FS',0)
         return
      endif
   until not UO.GetGlobal('FS')
endsub

Sub WaitManaChange(now)
var timer=0
 while UO.Mana>=now or timer<=100
  timer=timer+1
  wait(50)
 wend
endsub


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 7 posts ] 

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 5 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited