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

Составной крафт.
http://forum.yoko.com.ua/viewtopic.php?f=20&t=8988
Page 1 of 1

Author:  Sebastian [ 2006-10-08 04:27:49 ]
Post subject:  Составной крафт.

Вобщем идея и сложная и простая. Может у кого-нибудь да есть. Суть в том что мне нужно делать ковры через слишком задроченную меню. Она пятиуровневая(ну ето мелочи) и ковер состоит из 10 частей. Я вот и думал - как сделать, чтобы он изготавливал ковёр пока не изготовится часть и не переходил к следующей а при феиле повторял. Естественно что крафт етих 10 не иначе чем через массив. Но вот названия у частей одинаковые. Буду признателен за помощь, или пример составного крафта.

Author:  Scripts Writer [ 2006-10-08 08:22:55 ]
Post subject: 

Посмотри в теме "То , что ищут многие", мб помжет . Там крафт бланков следущим образом идет по этапно:
крафт бумаги-крафт пергамента-крафт бланка.

Author:  Scripts Writer [ 2006-10-08 08:23:58 ]
Post subject: 

Code:
sub Craft_Blanc() 
  var paper='0x1F24'
  var blanc='0x0E34'
  var instrument='0x40029C88'
  var k , i
 
  DIM material[2]
 
  material[0]='0x175D'
  material[1]='0x1BD7'

  while not uo.Dead()
    for i = 0 to 1
      uo.FindType(material[i],'-1','backpack')
      if not uo.FindCOunt() then
        uo.FindType(material[i],'-1','ground')
        if uo.FindCount() then
          uo.moveitem('finditem','50')
          wait(750)
        end if
      end if
    next
    ## Êðàôò áóìàãè ##
    repeat
      uo.DeleteJournal()
      k = 0
      uo.WaitMenu('Carpentry','Paper')
      uo.UseObject(instrument)
      while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND ( k < 50 )
        k = k + 1
        wait(500)
      wend
    until uo.InJournal('You put')
    ## Êðàôò ïåðãàìåíòà ##
    repeat
      k = 0
      uo.DeleteJournal()
      uo.WaitMenu('Carpentry','Parchment')
      uo.UseObject(instrument)   
      while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND ( k < 50 )
        k = k + 1
        wait(500)
      wend
      wait(500)
    until uo.InJournal('You put')
    ## Êðàôò áëàíêà ##
    repeat
      k = 0
      uo.DeleteJournal()
      uo.WaitMenu('Carpentry','blank')
      uo.UseObject(instrument)
      while NOT UO.InJournal('You put') AND NOT UO.InJournal('fail') AND ( k < 50 )
        k = k + 1
        wait(500)
      wend 
    until uo.InJournal('You put')
    uo.FindType(blanc,'-1','backpack')
    if uo.FindCount() then
      uo.moveitem('finditem','all','ground')
      wait(750)
    end if
  wend
end sub

Author:  Sebastian [ 2006-10-08 17:32:50 ]
Post subject: 

Спасибо, суть немного не та... но щас попробую чтото изменить....

Author:  Edred [ 2006-10-08 19:14:01 ]
Post subject: 

В общем, если и тип, и цвет, и название у частей одинаковое, то делай так (мне на форест варз так пришлось извращаться, там диды все одного типа и цвета, а из названия инжект берет только первую строку, а там одно и то же).

1. Перед крафтом пак должен быть чист от частей.
2. Крафтим первую часть. Если физл - повторяем. Когда часть скрафчена - запоминаем ее сериал и в игнор ее.
3. Повторяем аналогично для каждой части
4. Теперь крафтим изделие целиком. Если физл и при этом какая-то часть пропала - придется поиском (игнор отменить естественно) и перебором сериалов выяснять, какую часть перекрафтить.
5. После крафта изделия - скинуть его.
6. По кругу

Author:  admir [ 2006-10-09 00:22:31 ]
Post subject: 

а разве по номеру в меню нельзя крафтить ?

Author:  Edred [ 2006-10-09 00:25:19 ]
Post subject: 

admir wrote:
а разве по номеру в меню нельзя крафтить ?


Можно, но как я понял - проблема в определении какая часть ковра в паке какая...

Author:  Sebastian [ 2006-10-10 16:26:41 ]
Post subject: 

Я думал что можно вообще автоменю прописать как то сециально: Тоесть
одна автоменю вместо массива и делало бы с 1 по последнюю вещи в меню.

Author:  Edred [ 2006-10-10 18:04:36 ]
Post subject: 

Ну дык? цикл по количеству итемов (for i=1 to n) и в автоменю (не забудь cancelmenu после успешного крафта) такую конструкцию:
Code:
UO.Automenu( 'ля-ля-ля, тополя', '(' + str(i) + ')' )


Совсем думать народ разучился... :cry:

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