Yoko

All sides of Injection
It is currently 2026-01-17 18:46:22

All times are UTC+02:00




Post new topic  Reply to topic  [ 5 posts ] 
Author Message
PostPosted: 2009-02-04 20:33:24 
Offline
User avatar

Joined: 2008-09-26 17:06:16
Posts: 117
У Меня к вам большая прозиба переделаите етот скрип.
Проблемка в том что когда он сфизлит то он не хочет доберать реги а в место того чтобы он доберал включаеца другая функция.
Code:
################################################################
### Функция OpenChest #########################################
################################################################
sub OpenChest()
uo.findtype('0x0E42',-1,'ground')
if uo.findcount()>0 then
  uo.useobject(MageChest)
  chest=MageChest
else
  uo.sayu(' bank ')
  chest=bankbox
endif
wait(1000)
CheckLag()
uo.findtype(bag,-1,chest)
bagreg=uo.getserial('finditem')
uo.useobject(bagreg)
wait(1000)
CheckLag()
FindRune(chest)
end sub

################################################################
### Функция FindRune ##########################################
################################################################
sub FindRune(b)
var idrune
uo.findtype(rune,-1,b)
idrune=uo.getserial('finditem')
Cast(idrune)
end sub

################################################################
### Функция Cast(rune) ############################################
################################################################
Sub Cast(rune)
var a
coord=GetXY('self')
if ComXY(Home,coord)==true then
  a=true
 else
  a=false
endif
MoveReg(bagreg)
var mana
if uo.bm>0 && uo.bp>0 && uo.mr>0 then
cast:
  if uo.mana < 20 then
    med()
    wait(2000)
    goto cast
  endif
    mana = uo.mana
    uo.cast('Recall',rune)
    DelTextInJournal("fizzle")
    while mana == uo.mana
      wait(200)
    wend
    if ComXY(MCave,coord)==false then
     if ComXY(Home,coord)==a then
     wait(1000)
     CheckLag()
     if uo.injournal("fizzle") then
      MoveReg(bagreg)
      goto cast
     endif
      wait(200)
     endif
    endif
else
  uo.print('Stop')
  uo.closeuo()
endif
wait(1000)
end sub

################################################################
### Функция Move reg ##########################################
################################################################
sub MoveReg(id)
uo.print('Move Reagents')
var a
dim reg[3]
reg=mreg(reg)

for a=0 to 2
  if uo.count(reg[a])<1 then
    uo.findtype(reg[a],-1,id)
    uo.moveitem('finditem',1,'backpack')
    wait(700)
    CheckLag()
  endif
next
end sub

################################################################
### Функция-массив Регов ######################################
################################################################
Sub mreg(reg)
reg[0] = "0x0F7A"       ;Black Pearls
reg[1] = "0x0F7B"       ;Blood Moss
reg[2] = "0x0F86"       ;Mandrake Roots
return reg
end sub



Я знаю тут есть хорошие люди и мне помогут с етим скриптом :(


Top
   
 Post subject:
PostPosted: 2009-02-04 23:35:27 
Offline
User avatar

Joined: 2006-11-06 21:45:23
Posts: 137
DIM массив[размер] - задание массива.
Обращение к элементам: имя_массива[номер_элемента]. Нельзя писать:
имя_массива1 = имя_массива2
для присвоения содержимого одного массива другому.

Обращение к отдельным буквам в строке - так же, как к эл-там массива:
переменная[номер_буквы]. Номер - от 0, в случае выхода за конец строки - ошибка.

Замечания по поводу массивов
Массивы можно передавать в качестве параметров функциям. При этом передается САМ массив, а не его копия!!!. Т.е. все действия внутри функции над элементами массива будут производиться над первоначальным массивом. Возвращать массивы из функций НЕЛЬЗЯ!!!

ЗЫ. СМЕНИ АВАТАРКУ.


Top
   
 Post subject:
PostPosted: 2009-02-05 00:46:07 
Offline
User avatar

Joined: 2008-09-26 17:06:16
Posts: 117
GAUHAR wrote:
DIM массив[размер] - задание массива.
Обращение к элементам: имя_массива[номер_элемента]. Нельзя писать:
имя_массива1 = имя_массива2
для присвоения содержимого одного массива другому.

Обращение к отдельным буквам в строке - так же, как к эл-там массива:
переменная[номер_буквы]. Номер - от 0, в случае выхода за конец строки - ошибка.

Замечания по поводу массивов
Массивы можно передавать в качестве параметров функциям. При этом передается САМ массив, а не его копия!!!. Т.е. все действия внутри функции над элементами массива будут производиться над первоначальным массивом. Возвращать массивы из функций НЕЛЬЗЯ!!!

ЗЫ. СМЕНИ АВАТАРКУ.


сможеш переделать :(


Top
   
 Post subject:
PostPosted: 2009-02-05 07:48:49 
Offline
User avatar

Joined: 2006-11-06 21:45:23
Posts: 137
Примерно так:
Code:
sub MoveReg(id)
   uo.print('Move Reagents')
   var a
   dim reg[3]
      reg[0] = "0x0F7A"   ;Black Pearls
      reg[1] = "0x0F7B"   ;Blood Moss
      reg[2] = "0x0F86"   ;Mandrake Roots
   for a=0 to 2
      if uo.count(reg[a])<1 then
         uo.findtype(reg[a],-1,id)
         uo.moveitem('finditem',2,'backpack')
         wait(700)
         CheckLag()
      endif
   next
endsub

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

И еще в твоем скрипте есть:
Code:
      uo.cast('Recall',rune)
      DelTextInJournal("fizzle")
      while mana == uo.mana
         wait(200)
      wend

замени на:
Code:
      uo.cast('Recall',rune)
      DelTextInJournal("fizzle")
      while mana <= uo.mana
         wait(200)
      wend

так как, пока ждешь чтобы прошел каст, мана может и подрости.


Top
   
 Post subject:
PostPosted: 2009-02-05 14:34:57 
Offline
User avatar

Joined: 2008-09-26 17:06:16
Posts: 117
GAUHAR wrote:
Примерно так:
Code:
sub MoveReg(id)
   uo.print('Move Reagents')
   var a
   dim reg[3]
      reg[0] = "0x0F7A"   ;Black Pearls
      reg[1] = "0x0F7B"   ;Blood Moss
      reg[2] = "0x0F86"   ;Mandrake Roots
   for a=0 to 2
      if uo.count(reg[a])<1 then
         uo.findtype(reg[a],-1,id)
         uo.moveitem('finditem',2,'backpack')
         wait(700)
         CheckLag()
      endif
   next
endsub

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

И еще в твоем скрипте есть:
Code:
      uo.cast('Recall',rune)
      DelTextInJournal("fizzle")
      while mana == uo.mana
         wait(200)
      wend

замени на:
Code:
      uo.cast('Recall',rune)
      DelTextInJournal("fizzle")
      while mana <= uo.mana
         wait(200)
      wend

так как, пока ждешь чтобы прошел каст, мана может и подрости.

СПС пока он проходит тест потом скажу как работаит


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

All times are UTC+02:00


Who is online

Users browsing this forum: No registered users and 9 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