Page 1 of 1

Помогите со скриптом на тейлор

Posted: 2011-06-19 13:16:19
by Lucky D
Собствено проблема . поидее этот скрипт после крафта повязки должен выкидывать её в трэш , а он её елозит по бэк паку . искал где поменять тайп или айди не нашел помогите плз

Code: Select all

sub GrabContainer(idContainer, tType, Quanty)
    if UO.Count(tType,'0x0000')<=30 then
        if UO.Count('0x0E21','0x0000') > 0 then
            UO.FindType('0x0E21','0x0000','backpack')
            UO.MoveItem('finditem','-1',idContainer)
            wait(1000)
            CheckLag()
        end if       
        UO.FindType(tType,'0x0000',idContainer)
        If UO.GetQuantity('finditem')>2 then               
            UO.Grab(Quanty,'finditem')
            wait(1000)
            CheckLag()
        else
            return 1
        Endif               
    End If
    return 0
end sub

sub CheckLag()
    UO.DeleteJournal()
    UO.Click('backpack')
    repeat
        wait(50)
    until UO.InJournal('backpack')
end sub

sub ToEat(idContainer)
    UO.FindType('0x097B', '0x0000', idContainer)
    if UO.FindCount() > 0 then
        UO.MoveItem('finditem','20','backpack')
    else
        return
    end if
    repeat     
        CheckLag()
        uo.UseType('0x097B')
        while not uo.InJournal("can't") and not uo.InJournal('full') and not uo.InJournal('stuffed') and not uo.InJournal('hungry') and not uo.InJournal('satiated') and not UO.Dead()
            wait(100)
        wend
    until uo.InJournal('too full') or UO.Dead() or uo.InJournal("can't")
    UO.FindType('0x097B', '0x0000','backpack')
    if UO.FindCount() > 0 then
        UO.MoveItem('finditem','20',idContainer)     
    end if
end sub

sub Tailor()
VAR idContainer='0x40438A41'
    UO.UseObject(idContainer)
    UO.CancelMenu()
    UO.UnSetReceivingContainer()   
    UO.AutoMenu('Cloth', 'Misc.')
    UO.AutoMenu('Misc.', 'body')   
    while GrabContainer(idContainer,'0x175D','200')==0
        CheckLag()
   uo.waittargettype('0x175D')
        UO.UseType('0x0F9D')
        while NOT UO.InJournal("You put") AND NOT UO.InJournal("fail")
            wait(200)
        wend
   while UO.Count('0x1541','0x0000') > 0           
            uo.waittargettype('0x1541','0x0000')
         uo.findtype('0x1541','0x0000','backpack')
   while NOT UO.InJournal("You put")
   wait(1000)
   wend
   CheckLag()
   if uo.findcount()>0 then
   uo.MoveItem('finditem','-1',0x404B1341)
   wait(500) 
   end if
      uo.findtype('0x1541','0x0000','backpack')
   wait(200)
   wend
    CheckLag()
            wait(2000)
        wend
    wend
end sub

Re: Помогите со скриптом на тейлор

Posted: 2011-06-19 13:28:26
by Incorrect User

Code: Select all

uo.MoveItem('finditem','-1',0x404B1341) 

0x404B1341 в кавычках должен быть, это ид трешки

Re: Помогите со скриптом на тейлор

Posted: 2011-06-19 14:22:43
by Incorrect User
Мда скрипт корявый, сколько нужно тряпок брать из суднука в пак? и сколько на крафт 1 повязки нужно?

Re: Помогите со скриптом на тейлор

Posted: 2011-06-19 14:24:51
by Lucky D
Incorrect User wrote:Мда скрипт корявый, сколько нужно тряпок брать из суднука в пак? и сколько на крафт 1 повязки нужно?


Берет по 200 , на крафт надо 4 тряпки

Re: Помогите со скриптом на тейлор

Posted: 2011-06-19 14:40:07
by ZeroDX
Ну раз тут что-то вроде кастинга на лучший тейлор дня, то вот ещё вариант :D

Code: Select all

Sub Tailoring()
  var msg = 'ou put|fail', Pause = 100, Time, Delay = 5, id_Container = '0x12345678', id_Trash = '0x12345678', t_SewingKit = '0x1234' t_BodySash = '0x1234', t_Cloth = '0x1234', ClothNeeded = Тут кол-во тряпок на крафт однной повязки
  While UO.SkillVal('Tailoring', 1) < 1000 and not UO.Dead()
    UO.FindType(t_BodySash, -1, 'backpack')
    If UO.FindCount() then
      CheckLag()
      UO.MoveItem('finditem', -1, id_Trash)
      Wait(Pause)
     else
      If UO.Count(t_Cloth) >= ClothNeeded then
        DelJournal(msg)
        Time = UO.Timer()
        UO.WaitMenu('Cloth', 'Misc', 'Misc', 'body')
        UO.UseType(t_SewingKit)
        Repeat
          Wait(100)
        Until UO.InJournal(msg) or Time + Delay * 10 <= UO.Timer()
       else
        UO.UseObject(id_Container)
        UO.FintType(t_Cloth, -1, id_Container)
        If UO.FindCount() then
          CheckLag()
          UO.MoveItem('finditem', 100, 'backpack')
          Wait(Pause)
         else
          UO.Print('Нет тряпок в ящике!!!!!!')
          Return
        Endif
      Endif
    Endif
    EatSomeSteaks()
  Wend
Endsub

Sub EatSomeSteaks()
  var t_Steaks = '0x1234', msg = 'simply|full', Time, Delay = 10, id_Container = '0x12345678', Pause = 100
  DelJounal(msg)
  Time = UO.Timer()
  Repeat
    If Count(t_Steaks) then
      UO.UseType(t_Steaks)
      Wait(100)
     else
      UO.UseObject(id_Container)
      UO.FindType(t_Steaks, -1, id_Container)
      If UO.FindCount() then
        CheckLag()
        UO.MoveItem('finditem', 10, 'backpack')
        Wait(Pause)
       else
        UO.Print('Нет хавки в ящике!!! ЗАСАДА!!!')
        Return
      Endif
    Endif
  Until UO.InJournal(msg) or Time + Delay * 10 <= UO.Timer()
Endsub

Sub DelJournal(msg)
  While uo.injournal(msg)
    UO.SetJournalLine(UO.InJournal(msg) - 1, '')
  Wend
Endsub

Sub CheckLag()
  DelJournal('ackpack')
  UO.Click('backpack')
  Repeat
    Wait(100)
  Until UO.InJournal('ackpack')
Endsub


Тоже с парсеррорами возможно =)

100 пудово парсер родился у тестера изза строки ClothNeeded = Тут кол-во тряпок на крафт однной повязки ©Mirage :mrgreen:

Re: Помогите со скриптом на тейлор

Posted: 2011-06-19 15:02:56
by Incorrect User

Code: Select all

####################################################################################
var Box = '0x40438A41' # ID сундука
var Tools = '0x0F9D' # Type итема тайлора
var Sash = '0x1541' # Type изделия
var SashC = '0x0000' # Color изделия
var Quote = '200' # Сколько ткани брать
var Trash = '0x404B1341' # ID трешки
var Item = '0x175D' # ID ткани
var ItemC = '0x0000' # Color ткани

sub Tailor()
var Time
var Mess = 'put|fail'
 while not uo.dead()
   if uo.count(Item)>3 then
    Time = uo.timer()
      uo.waitmenu('Cloth','Misc.','Misc.','body')
      uo.waittargettype(Item)
      uo.usetype(Tools)
    repeat
    wait (100)
    until uo.injournal(Mess) or Time + 50 < uo.timer()
    Trash()
     else
    TakeItem()
  endif
  uo.deletejournal()
 wend
end sub

sub Trash()
 uo.findtype(Sash,SashC,'backpack')
  uo.moveitem('finditem',0,Trash)
 wait (500)
endsub

sub TakeItem()
 uo.findtype(Item,ItemC,Box)
 if uo.findcount() then
  uo.moveitem('finditem',Quote,'backpack')
  wait (500)
   else
  uo.print('Кончилась ткань!')
  uo.playwav('C:\Alarm.wav')
  uo.exec('terminate all')
 endif
endsub
####################################################################################

Re: Помогите со скриптом на тейлор

Posted: 2011-06-19 15:07:06
by Lucky D
Incorrect User wrote:

Code: Select all

[code]####################################################################################
var Box = '0x40438A41' # ID сундука
var Tools = '0x0F9D' # Type итема тайлора
var Sash = '0x1541' # Type изделия
var SashC = '0x0000' # Color изделия
var Quote = '200' # Сколько ткани брать
var Trash = '0x404B1341' # ID трешки
var Item = '0x175D' # ID ткани
var ItemC = '0x0000' # Color ткани

sub Tailor()
var Time
var Mess = 'put|fail'
 while not uo.dead()
   if uo.count(Item)>3 then
    Time = uo.timer()
      uo.waitmenu('Cloth','Misc.','Misc.','body')
      uo.waittargettype(Item)
      uo.usetype(Tools)
    repeat
    wait (100)
    until uo.injournal(Mess) or Time + 50 < uo.timer()
    Trash()
     else
    TakeItem()
  endif
  uo.deletejournal()
 wend
end sub

sub Trash()
 uo.findtype(Sash,SashC,'backpack')
  uo.moveitem('finditem',0,Trash)
 wait (500)
endsub

sub TakeItem()
 uo.findtype(Item,ItemC,Box)
 if uo.findcount() then
  uo.moveitem('finditem',Quote,'backpack')
  wait (500)
   else
  uo.print('Кончилась ткань!')
  uo.playwav('C:\Alarm.wav')
  uo.exec('terminate all')
 endif
endsub
####################################################################################[/code]


Всё Работает Спасибо Огромное :D

Re: Помогите со скриптом на тейлор

Posted: 2011-06-19 16:31:26
by Mirage
истина рождается в муках :?
Несколько космических дополнений к скрипту:


Code: Select all

Скрипт убрал - автор ругается.

Re: Помогите со скриптом на тейлор

Posted: 2011-06-19 16:40:23
by ZeroDX
угу на пыточном столе

Re: Помогите со скриптом на тейлор

Posted: 2011-06-19 17:38:49
by Incorrect User
Вот мне Зеро промыл мозги в асе и вот что нужно было поменять, и то только могло запороть из-за случайности, но так зверски перелопачивать скрипт ненужно.

Code: Select all

[code]####################################################################################
var Box = '0x40438A41' # ID сундука
var Tools = '0x0F9D' # Type итема тайлора
var Sash = '0x1541' # Type изделия
var SashC = '0x0000' # Color изделия
var Quote = '200' # Сколько ткани брать
var Trash = '0x404B1341' # ID трешки
var Item = '0x175D' # Type ткани
var ItemC = '0x0000' # Color ткани

sub Tailor()
var Time
var Mess = 'put|fail'
 while not uo.dead()
   uo.deletejournal()
   if uo.count(Item)>3 then
    Time = uo.timer()
      uo.waitmenu('Cloth','Misc.','Misc.','body')
      uo.waittargettype(Item)
      uo.usetype(Tools)
    repeat
    wait (100)
    until uo.injournal(Mess) or Time + 50 < uo.timer()
    Trash()
     else
    TakeItem()
  endif
 wend
end sub

sub Trash()
 uo.findtype(Sash,SashC,'backpack')
 if uo.findcount()
 uo.moveitem('finditem',0,Trash)
 wait (500)
 endif
endsub

sub TakeItem()
 uo.findtype(Item,ItemC,Box)
 if uo.findcount() then
  uo.moveitem('finditem',Quote,'backpack')
  wait (500)
   else
  uo.print('Кончилась ткань!')
  uo.playwav('C:\Alarm.wav')
  uo.exec('terminate all')
 endif
endsub
####################################################################################[/code]

Re: Помогите со скриптом на тейлор

Posted: 2011-06-19 22:21:16
by Mirage
Ну извини что влез в твои копирайты :mrgreen:
Я больше не буду трогать скрипты написанные тобой. Ну разве что они не будут соответствовать правилам.
Следующее от тебя грубое слово по отношению к любому посетителю будет караться.
Флуд офф, автор темы осчастливлен.

Re: Помогите со скриптом на тейлор

Posted: 2011-06-20 00:12:39
by ZeroDX
Блин я не дочитал! ласт пост, который тут был!!! А парсер там из-за пропущенной запятой
Предпоследний свой пост он сам стер по этому получил просто предупреждение за флуд. © Mirage