Вот. На самом деле такой скрипт получается путем тупой замены регов и изменения команд меню в моем скрипте на инскрипт, помещеннный в разделе scripts! Ну это так, к слову. Я изменял недавно для себя, так как сам качаю инскрипт, а magic arrow уже накрафтил почти 30к
Code: ##################################################################### ; Inscription2. v.1.05b (c) Edred ; ; Берем из сундука blank scroll, blood pearl, black moss, mandrake root ; крафтим из них скролл Recall (с повторами в случае физлов), ; потом скидываем готовый скролл в тот же сундук. ; Если что-либо кончилось - выход.
sub inscript2() VAR Sunduk = '0x40140DD1' ; Сериал сундука с бланкскроллами и регами VAR Blank = '0x0E34' ; Тип бланк скролла VAR Arrow = '0x1F4C' ; Тип скроллов Recall VAR Reg1 = '0x0F86' ; mandrake root VAR Reg2 = '0x0F7A' ; black pearl VAR Reg3 = '0x0F7B' ; blood moss VAR Fizzle = 'You fail to inscribe the scroll' VAR Success = 'You put the' VAR k ; UO.SetGlobal( 'TimeProcess', str( UO.Timer() ) ) UO.CancelMenu() UO.AutoMenu( 'Spell Circles', 'Fourth Circle' ) UO.AutoMenu( 'Spell Circle 4', 'Recall' ) UO.UseObject( Sunduk ) wait(1000) While UO.SkillVal( 'Inscription' ) < 1000 ; берем бланк скроллы ; EatChar( Sunduk, 2, 1, 120 ) If UO.Count( Blank ) == 0 Then UO.FindType( Blank, -1, Sunduk ) If UO.FindCount() == 0 Then UO.Print( 'Blank Scroll not found. Script terminated' ) return Endif If UO.GetQuantity( 'finditem' ) < 100 Then UO.Grab( '0', 'finditem' ) repeat wait(100) until UO.Count( Blank ) > 0 CheckLag() Else UO.Grab( '100', 'finditem' ) repeat wait(100) until UO.Count( Blank ) == 100 CheckLag() Endif Endif ; берем mandrake root If UO.Count( Reg1 ) == 0 Then UO.FindType( Reg1, -1, Sunduk ) If UO.FindCount() == 0 Then UO.Print( 'Mandrake Root not found. Script terminated' ) return Endif If UO.GetQuantity( 'finditem' ) < 100 Then UO.Grab( '0', 'finditem' ) repeat wait(100) until UO.Count( Reg1 ) > 0 CheckLag() Else UO.Grab( '100', 'finditem' ) repeat wait(100) until UO.Count( Reg1 ) == 100 CheckLag() Endif Endif ; берем black pearl If UO.Count( Reg2 ) == 0 Then UO.FindType( Reg2, -1, Sunduk ) If UO.FindCount() == 0 Then UO.Print( 'Black Pearls not found. Script terminated' ) return Endif If UO.GetQuantity( 'finditem' ) < 100 Then UO.Grab( '0', 'finditem' ) repeat wait(100) until UO.Count( Reg2 ) > 0 CheckLag() Else UO.Grab( '100', 'finditem' ) repeat wait(100) until UO.Count( Reg2 ) == 100 CheckLag() Endif Endif ; берем blood moss If UO.Count( Reg3 ) == 0 Then UO.FindType( Reg3, -1, Sunduk ) If UO.FindCount() == 0 Then UO.Print( 'Blood Moss not found. Script terminated' ) return Endif If UO.GetQuantity( 'finditem' ) < 100 Then UO.Grab( '0', 'finditem' ) repeat wait(100) until UO.Count( Reg3 ) > 0 CheckLag() Else UO.Grab( '100', 'finditem' ) repeat wait(100) until UO.Count( Reg3 ) == 100 CheckLag() Endif Endif repeat DeleteJournal( Fizzle ) DeleteJournal( Success ) UO.UseType( Blank ) k = 0 repeat k = k + 1 wait(100) until UO.InJournal( Fizzle ) OR UO.InJournal( Success ) OR UO.Count( Blank ) == 0 OR UO.Count( Reg1 ) == 0 OR UO.Count( Reg2 ) == 0 OR k > 600 If UO.Mana < 10 Then repeat UO.UseSkill( 'Meditation' ) wait(2000) until UO.Mana == UO.Int Endif Until UO.Count( Blank ) == 0 OR UO.Count( Reg1 ) == 0 OR UO.Count( Reg2 ) == 0 While UO.Count( Arrow ) > 0 UO.FindType( Arrow ) If UO.FindCount() > 0 Then UO.MoveItem( 'finditem', 0, Sunduk ) wait(1000) CheckLag() Endif Wend Wend UO.CancelMenu() endsub
##################################################################### Sub CheckLag() DeleteJournal( 'backpack' ) UO.Click( 'backpack' ) repeat wait(100) until UO.InJournal( 'backpack' ) return end sub
##################################################################### Sub DeleteJournal( string1 ) VAR nom = UO.InJournal( string1 ) If nom > 0 Then UO.SetJournalLine( Nom - 1, 'string replaced' ) DeleteJournal( string1 ) Endif endsub
|