Page 1 of 1

дайте плиз скрипт.

Posted: 2004-10-17 20:10:30
by maximka4
у кого есть скрипт на инскрипт ,чтоб делал рекаллы ,пожалуста выложите.

Re: дайте плиз скрипт.

Posted: 2004-10-18 10:03:18
by MitAl
maximka4 wrote:у кого есть скрипт на инскрипт ,чтоб делал рекаллы ,пожалуста выложите.

Code: Select all


sub main() 
VAR T 
While UO.BP>0  #проверка количества реагентов 
UO.DeleteJournal() 
T=UO.Timer() 
UO.Exec("waitmenu 'Spell Circles' 'Fourth Circle' 'Circle 4' 'Recall'") #рисуем реколы 
Wait(1000) 
UO.Exec("usetype '0x0E34'") # используем бланк скролла 
   repeat 
      Wait(100) 
   until UO.InJournal("You put") or UO.InJournal("ruined") or UO.Timer()>T+80    
wend 
end sub

Posted: 2004-10-18 11:05:51
by Edred
Вот. На самом деле такой скрипт получается путем тупой замены регов и изменения команд меню в моем скрипте на инскрипт, помещеннный в разделе scripts! Ну это так, к слову. Я изменял недавно для себя, так как сам качаю инскрипт, а magic arrow уже накрафтил почти 30к ;)

Code: Select all

#####################################################################
; 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