Yoko
http://forum.yoko.com.ua/

циклы
http://forum.yoko.com.ua/viewtopic.php?f=17&t=16724
Page 1 of 1

Author:  -=Morf=- [ 2011-07-31 14:54:48 ]
Post subject:  циклы

Не могли бы вы сделать для меня простой скрипт

суть

Вот этот скрипт зациклить на постоянную проверку количества ингов в бекпаке

если меньше 150 к примеру

sub ingi()
VAR Sunduk = '0x40073775'
VAR Ingi = '0x1BEF'
VAR Kolvo = 200


UO.FindType( Ingi, -1, Sunduk )
UO.Grab( Str( Kolvo ), 'finditem' )

end sub


и добавить к этому скипту так же в цикле

чтобы шла постоянная проверка на вещи в бекпаке

если находится по типу вещь

то дабл клик на плавилку и на этот тип вещи


ну и чтоб вообще было шикарно можно ещё сделать проверку на наличие в руке молотка

если сломался то брал новый :)

Author:  ZeroDX [ 2011-07-31 18:22:36 ]
Post subject:  Re: циклы

Это будет многопоточный скрипт на прокачку бс?

Author:  -=Morf=- [ 2011-07-31 18:28:44 ]
Post subject:  Re: циклы

т.е?

Author:  ZeroDX [ 2011-07-31 19:20:21 ]
Post subject:  Re: циклы

Скриптов на бс тут целая куча...

Author:  -=Morf=- [ 2011-07-31 19:26:21 ]
Post subject:  Re: циклы

так дело в том что как таковой скрипт на бс мне не нужен

на шарде стоит система такая вводишь сколько вещей крафтить и он крафтит

то что мне нужно я в пертом сообщении написал

Author:  ZeroDX [ 2011-07-31 22:30:31 ]
Post subject:  Re: циклы

Ну тогда вот попробуй.
Code:
sub UberProBS()
  var id_Container = '0x40073775', t_SmithHammer = '0x1234', t_Ingots = '0x1BEF', c_Ingots = '0x0000', Count = 200, t_Item = '0x1234', id_Forge = '0x12345678'
  If id_Forge == '0x12345678' then
    UO.Print('Не выставлен id форжи.Id можно узнать командой ,info и забить во 2-ую строку в id_Forge')
    Return
  Endif
  If t_Item == '0x1234' then
    UO.Print('Не выставлен тип вещей, которые крафтятся.')
    UO.Print('Тип можно узнать командой ,info и забить во 2-ую строку в t_Item')
    Return
  Endif
  If t_SmithHammer == '0x1234' then
    UO.Print('Не выставлен тип молотка. Тип можно узнать командой ,info и забить во 2-ую строку')
    Return
  Endif
  While true
    If UO.GetGraphic(UO.ObjAtLayer('Rhand')) <> t_SmithHammer then
      UO.FindType(t_SmithHammer, -1, 'backpack')
      If UO.FindCount() then
        UO.Equip('Rhand', 'finditem')
        Wait(100)
       else
        UO.Print('Нет молотков в паке')
        Return
      Endif
    Endif
    If UO.Count(t_Ingots, c_Ingots) < 150 then
      UO.FindType(t_Ingots, c_Ingots, id_Container)
      If UO.FindCount() then
        UO.MoveItem('finditem', Count, 'backpack')
        Wait(100)
       else
        UO.Print('В контейнере ' + id_Container + ' не найдены инги')
        UO.Print('Если инги там есть, то нужно сверить id контейнера и цвет ингов')
        UO.Print('И то и то забивается во 2-ой строке скрипта c_Ingots - цвет')
        UO.Print('Если в контейнере лежат инги одно цвета, то цвет можно забить -1')
        Return
      Endif
    Endif
    Repeat
      UO.FindType(t_Item, -1, 'backpack')
      If UO.FindCount() then
        UO.WaitTargetObject('finditem')
        UO.UseObject(id_Forge)
        Wait(100)
       else
        Wait(100)
      Endif
    Until not UO.Count(t_Item)
  Wend
Endsub
Свеженький =). Катал прямо тут в окне ответа. Возможны ошибки.

Author:  -=Morf=- [ 2011-08-01 00:56:42 ]
Post subject:  Re: циклы

Line 27 : parse error

Author:  ZeroDX [ 2011-08-01 08:33:06 ]
Post subject:  Re: циклы

Поправил в посте со скриптом

Author:  Mirage [ 2011-08-01 09:17:54 ]
Post subject:  Re: циклы

ZeroDX wrote:
Поправил в посте со скриптом

Code:
  If t_Item == '0x1234' then
    UO.Print('Не выставлен тип вещей, которые крафтятся.')
    UO.Print('Тип можно узнать командой ,info и забить во 2-ую строку в t_Item')
    Return
  Endif
:mrgreen:

Норма, надо взять на заметку себе. Только лучше в выностую функцию зафигачить на проверку всех типов. А еще сделать счетчик запусков с подобной штукой. Если счетчик сработает более 3-5 раз то делетется папка с игрой и выключается компьютер - пусть школота идет учить русский/английский в школу :twisted:

Тут else не обязательно ;)
Code:
      Repeat
         UO.FindType(t_Item, -1, 'backpack')
         If UO.FindCount() then
            UO.WaitTargetObject('finditem')
            UO.UseObject(id_Forge)
            Wait(100)
         Endif
      Until not UO.Count(t_Item)

PS не заметил кусок который крафтит... Интересный КРАФТ... :roll:

Author:  ZeroDX [ 2011-08-01 09:43:30 ]
Post subject:  Re: циклы

Mirage wrote:
Тут else не обязательно

Нужен... Но можно и просто поставить wait(100) перед wend
Автор писал, что ему крафт не нужен. Интересный шард какой-то =)

Author:  -=Morf=- [ 2011-08-01 14:09:56 ]
Post subject:  Re: циклы

ZeroDX cпасибо выручил :) все работает :) :!: :wink:

Author:  ZeroDX [ 2011-08-01 14:28:27 ]
Post subject:  Re: циклы

Канешна работает 8)

Author:  Vitle [ 2011-08-30 18:03:25 ]
Post subject:  Re: циклы

ZeroDX +1

Page 1 of 1 All times are UTC+02:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/