Page 1 of 1

проблема с условием!

Posted: 2004-08-22 12:24:40
by Kifirkin
вот никак не могу впихнуть условие вылавливания монстра,помогите плз

Code: Select all

sub main() 
hide()
var mx, my, mz, i, j
mx = UO.GetX("self")
my = UO.GetY("self")
mz = UO.GetZ("self")
for i = mx+2 to mx+6
for j = my-6 to my+6
UO.Print("Now Fishing In: "+str(mx-i)+" "+str(my-j))
uo.deletejournal()
if UO.InJournal(":") and uo.injournal("Sea Serpent") then
uo.exec("terminate main")
uo.exec("exec killsea")
endif
uo.deletejournal()
if UO.InJournal(":") and uo.injournal("Water Elemental") then
uo.exec("terminate main")
uo.exec("exec killelem")
endif
UO.Waittargettile("1341", str(i), str(j), str(mz))
UO.Usetype("0x0DBF")
while not UO.InJournal("You pull") and not UO.InJournal("location") and not UO.InJournal("no fish") and not UO.InJournal("but fail") and not UO.InJournal("far away") and not UO.InJournal("in water")
wait(100)
wend
next
next
uo.sayu("Forward")
wait(6000)
uo.sayu("stop")
unloadc("0x4005B361")
uo.exec("exec main")
end sub

sub unloadc(container)
uo.canceltarget()
uo.ignorereset()
uo.findtype("-1","-1","backpack")
while uo.findcount()
uo.print(str(uo.findcount())+" left")
if (uo.getgraphic("finditem")<>"0x0DF0" and uo.getgraphic("finditem")<>"0x0E21" and uo.getgraphic("finditem")<>"0x1769" and uo.getgraphic("finditem")<>"0x176B" and uo.getgraphic("finditem")<>"0x0EFA") or uo.getquantity("finditem")>1 then
uo.moveitem("finditem","-1",container)
wait(200)
end if
uo.ignore("finditem")
uo.findtype("-1","-1","backpack")
wend
end sub

sub hide()
   while NOT UO.Hidden()
      UO.DeleteJournal()
      uo.warmode(0)
      UO.UseSkill('Stealth')
      repeat
         wait(100)
      until UO.InJournal('You have hidden') OR UO.InJournal('seem to hide')
   wend
   wait(100)
end sub

sub killsea()

   VAR LastTimer, Sea
   
   UO.UnSetcatchbag()
   LastTimer=UO.Timer()

   UO.UseType('0x0DF0')  ;weapon
   wait(1000)
   UO.UseType('0x0F60')  ;shield
   wait(500)

   UO.DeleteJournal()
   UO.Exec('warmode 1')

   UO.FindType('0x0096',-1,'ground')
   Sea=UO.GetSerial('finditem')
   UO.Attack(Sea)
   repeat
      wait(1000)
      If UO.Life<90 Then
      repeat
         UO.Bandageself()
         wait(2500)
         UO.Attack(Sea)
      until UO.Life>=115
      Endif


   until UO.IsNPC(Sea)==0
   wait(3000)


   UO.Attack(Sea)
   UO.FindType('0x0096',-1,'ground')
   If UO.GetQuantity('finditem')>0 Then
      wait(500)
      UO.Attack(Sea)
      killsea()
   Endif

   UO.Exec('warmode 0')
   wait(1000)

   UO.Print("Sdoh skotina!")
   UO.SetEasyUO(99,'0')

   LastTimer=UO.Timer()
   if UO.Life<159 then
      repeat
         UO.BandageSelf()
         wait(4000)
                   until UO.Life>159 OR LastTimer+300<UO.Timer()

   UO.Print("Killing Done!")
uo.exec("exec main")
end sub

sub killelem()

   VAR LastTimer, elem
   
   UO.UnSetcatchbag()
   LastTimer=UO.Timer()

   UO.UseType('0x1B76')  ;weapon
   wait(1000)
   UO.UseType('0x0F60')  ;shield
   wait(500)

   UO.DeleteJournal()
   UO.Exec('warmode 1')

   UO.FindType('0x0010',-1,'ground')
   Sea=UO.GetSerial('finditem')
   UO.Attack(elem)
   repeat
      wait(1000)
      If UO.Life<90 Then
      repeat
         UO.Bandageself()
         wait(2500)
         UO.Attack(elem)
      until UO.Life>=115
      Endif


   until UO.IsNPC(elem)==0
   wait(3000)


   UO.Attack(elem)
   UO.FindType('0x0010',-1,'ground')
   If UO.GetQuantity('finditem')>0 Then
      wait(500)
      UO.Attack(elem)
      killelem()
   Endif

   UO.Exec('warmode 0')
   wait(1000)

   UO.Print("Sdoh skotina!")
   UO.SetEasyUO(99,'0')

   LastTimer=UO.Timer()
   if UO.Life<159 then
      repeat
         UO.BandageSelf()
         wait(4000)
                   until UO.Life>159 OR LastTimer+300<UO.Timer()

   UO.Print("Killing Done!")
uo.exec("exec main")
end sub

можно ли сделать так,чтобы журнал проверялся после каждого заброса?

Posted: 2004-08-22 14:38:21
by Lord Ruslan Nightmare
Сколько видов монстров ты можешь выловить?

Posted: 2004-08-22 21:29:10
by Kifirkin
только 2 ,елементаля и серпента.чар когда вылавливает монстра не переходит к скрипту на убийство :(((

Posted: 2004-08-23 10:17:25
by Lord Ruslan Nightmare

Code: Select all

#...
mustkill = 0
uo.findtype("тип монстра1","-1","ground")
if uo.findcount() then
  mustkill = 1
endif
uo.findtype("тип монстра2","-1","ground")
if uo.findcount() then
  mustkill = 1
endif
if mustkill then
  #kill
endif
#...

проверь, включена ли Track World Items

Posted: 2004-08-23 12:03:36
by Kifirkin
спасибо большое все рабтает!