Помогите сделать скрипт для ПвП
Posted: 2009-02-11 19:20:43

if injournal You fell poison
uo.msg ,exec armor1
(wait)50
uo.msg ,exec armor2
if injournal you see name protect flame
uo.msg ,exec shield+mace
если lastattack на ростоянии дальше чем 2 клетки
uo.msg exec Bow
если lastattack ближе чем на 2 клетки
uo.msg ,exec shield+mace
если хп перса меньше 150
uo.msg ,exec invis
Savage wrote:Ну ты уже практически сам всё сделал. Осталось записать операторы как того требует синтаксис.
Code: Select all
sub zzz()
Repeat
If UO.InJournal("You fell poison") Then
UO.Dress('armor1')
wait(100)
UO.Dress('armor2')
Endif
If UO.InJournal("you see name protect flame") Then
UO.Arm('shield_mace')
Endif
If UO.GetDistance('lastattack')>2 Then
UO.Arm('Bow')
Else
UO.Arm('shield_mace')
Endif
If UO.Life<150 Then
invis()
Endif
wait(100)
Until UO.Dead()
end sub
Code: Select all
UO.UseType('тип инвиза','цвет инвиза')
wait(3000) ; тут задержку на хил или рекол, подобрать.
Code: Select all
sub zzz()
Repeat
If UO.InJournal("You fell poison") Then
UO.Say(',exec acid')
wait(100)
UO.Say(',exec devil')
Endif
If UO.InJournal("you see name protect flame") Then
UO.Say(',exec holly')
Endif
If UO.GetDistance('lastattack')>2 Then
UO.Say(',exec archery')
Endif
If UO.GetDistance('lastattack')<2 Then
UO.Say(',exec mace')
Endif
If UO.Life<150 Then
uo.usetype(0x0F0E) # invizka
Endif
wait(100)
Until UO.Dead()
end sub
dвот так работает только повторяет команду одеть лук когда он отходит и повторяет команду одеть мейсу когда подходит..
можно ли сделать так чтобы оно не флудило ?
Code: Select all
sub zzz()
VAR Trigger=2
Repeat
If UO.InJournal("You fell poison") Then
UO.Say(',exec acid')
wait(100)
UO.Say(',exec devil')
Endif
If UO.InJournal("you see name protect flame") Then
UO.Say(',exec holly')
Endif
If UO.GetDistance('lastattack')>2 AND Trigger<>1 Then
UO.Say(',exec archery')
Trigger=1
Endif
If UO.GetDistance('lastattack')<2 AND Trigger<>2 Then
UO.Say(',exec mace')
Trigger=2
Endif
If UO.Life<150 Then
uo.usetype(0x0F0E) # invizka
Endif
wait(100)
Until UO.Dead()
end sub
Code: Select all
sub zzz()
VAR Trigger=2
Repeat
If UO.InJournal("You fell poison") Then
UO.Say(',exec acid')
wait(100)
UO.Say(',exec devil')
Endif
If UO.InJournal("you see name protect flame") Then
UO.Say(',exec holly')
Endif
If UO.GetDistance('lastattack')>2 AND UO.GetDistance('lastattack')<=7 AND Trigger<>1 Then
UO.Say(',exec archery')
Trigger=1
Endif
If UO.GetDistance('lastattack')<=2 AND UO.GetDistance('lastattack')>7 AND Trigger<>2 Then
UO.Say(',exec mace')
Trigger=2
Endif
If UO.Life<150 Then
uo.usetype(0x0F0E) # invizka
Endif
wait(100)
While UO.GetDistance('lastattack')>7
wait(200)
Wend
Until UO.Dead()
end sub