Herding для соседнего раздела

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Herding для соседнего раздела

Post by Edred »

Code: Select all

#####################################################################
; Herding v.1.02b (c) Edred
;
; Для прокачки потребуются две лошади (ламы или другие животные)
; и два щита (или какие-то другие объекты). Кладем щиты на пол в доме
; в паре шагов от чара (не стопкой, в соседние тайлы) и ставим обеих 
; лошадей рядом с чаром. Чару в руку посох (одного посоха хватит на всю 
; прокачку). Вносим серийники лошадей и щитов в соответствующие переменные.
; Поехали. Блоки, отвечающие за подкормку чара и прокачку
; Spirit Speak закомментарены.
;
sub Herding()
	VAR Horse = '0x0040D2A1'
	VAR Horse2 = '0x005AF4B1'	
	VAR Targ = '0x404215E8'
	VAR Targ2 = '0x404214EF'
;	VAR Sunduk = '0x404E5494'
;  	UO.SetGlobal( 'TimeProcess', str( UO.Timer() ) )
	VAR success = "The animal goes where it is instructed"
	VAR fizzle = "You don't seem"
;	VAR SpiritTime = UO.Timer()
;	UO.UseObject( Sunduk )
;	wait(1000)
;	CheckLag()
	While UO.SkillVal( 'Herding' ) < 1000
;		EatChar( Sunduk, 2, 1, 120 )
;		If ( UO.Timer() - SpiritTime ) / 600 > 5 Then
;			; Прошло 5 минут с момента последней прокачки Spirit Speak
;			SpSpeak()
;			SpiritTime = UO.Timer()
;		Endif
		DeleteJournal( success )
		DeleteJournal( fizzle )
		UO.WaitTargetObject( Horse, Targ )
		UO.UseObject( UO.ObjAtLayer( 'Lhand' ) )
		repeat
			wait(100)
		until UO.InJournal( fizzle ) OR UO.InJournal( success )
		If UO.InJournal( success ) Then
			; вторая животина
			DeleteJournal( success )
			UO.WaitTargetObject( Horse2, Targ2 )
			UO.UseObject( UO.ObjAtLayer( 'Lhand' ) )
			repeat
				wait(100)
			until UO.InJournal( fizzle ) OR UO.InJournal( success )
		Endif
	Wend
endsub

#####################################################################
Sub DeleteJournal( string1 )
	VAR nom = UO.InJournal( string1 )
	If nom > 0 Then
		UO.SetJournalLine( Nom - 1, 'string replaced' )
		DeleteJournal( string1 )
	Endif
endsub
CANNABIS
Posts: 23
Joined: 2004-08-03 05:25:13
Contact:

Re: Herding для соседнего раздела

Post by CANNABIS »

Edred wrote:

Code: Select all

#####################################################################
; Herding v.1.02b (c) Edred
;
; Для прокачки потребуются две лошади (ламы или другие животные)
; и два щита (или какие-то другие объекты). Кладем щиты на пол в доме
; в паре шагов от чара (не стопкой, в соседние тайлы) и ставим обеих 
; лошадей рядом с чаром. Чару в руку посох (одного посоха хватит на всю 
; прокачку). Вносим серийники лошадей и щитов в соответствующие переменные.
; Поехали. Блоки, отвечающие за подкормку чара и прокачку
; Spirit Speak закомментарены.
;
sub Herding()
	VAR Horse = '0x0040D2A1'
	VAR Horse2 = '0x005AF4B1'	
	VAR Targ = '0x404215E8'
	VAR Targ2 = '0x404214EF'
;	VAR Sunduk = '0x404E5494'
;  	UO.SetGlobal( 'TimeProcess', str( UO.Timer() ) )
	VAR success = "The animal goes where it is instructed"
	VAR fizzle = "You don't seem"
;	VAR SpiritTime = UO.Timer()
;	UO.UseObject( Sunduk )
;	wait(1000)
;	CheckLag()
	While UO.SkillVal( 'Herding' ) < 1000
;		EatChar( Sunduk, 2, 1, 120 )
;		If ( UO.Timer() - SpiritTime ) / 600 > 5 Then
;			; Прошло 5 минут с момента последней прокачки Spirit Speak
;			SpSpeak()
;			SpiritTime = UO.Timer()
;		Endif
		DeleteJournal( success )
		DeleteJournal( fizzle )
		UO.WaitTargetObject( Horse, Targ )
		UO.UseObject( UO.ObjAtLayer( 'Lhand' ) )
		repeat
			wait(100)
		until UO.InJournal( fizzle ) OR UO.InJournal( success )
		If UO.InJournal( success ) Then
			; вторая животина
			DeleteJournal( success )
			UO.WaitTargetObject( Horse2, Targ2 )
			UO.UseObject( UO.ObjAtLayer( 'Lhand' ) )
			repeat
				wait(100)
			until UO.InJournal( fizzle ) OR UO.InJournal( success )
		Endif
	Wend
endsub

#####################################################################
Sub DeleteJournal( string1 )
	VAR nom = UO.InJournal( string1 )
	If nom > 0 Then
		UO.SetJournalLine( Nom - 1, 'string replaced' )
		DeleteJournal( string1 )
	Endif
endsub
Sunduk это посох? че то не получается
AGRS
Expert!
Posts: 1007
Joined: 2004-04-04 21:40:09
Contact:

Re: Herding для соседнего раздела

Post by AGRS »

CANNABIS wrote: Sunduk это посох? че то не получается
Сундук это сундук. Удивительно! Не так ли? :lol:
Там должна лежать жратва для поддержания жизненного тонуса твоего персонажа на должном уровне. :)
Edred
Expert!
Posts: 2544
Joined: 2004-04-03 17:36:29
Location: Saint-Petersburg

Re: Herding для соседнего раздела

Post by Edred »

CANNABIS wrote: Sunduk это посох? че то не получается
Sunduk нужен для хранения еды. Он используется только если включена подкормка чара. В данном скрипте все строчки, отвечающие за подкормку и за прокачку Спирит Спика отключены (закомментарены). В том числе определение сундука. О чем внятно написано в комментариях в начале скрипта.

Посох в руки взял? Попробуй вручную отправить животное на щит. Посмотри мессаги. Проверь их в скрипте - вполне возможно что на твоем шарде другие сообщения. Перепроверь что занес серийники лошадей в переменные Horse, Horse2, перепроверь что занес серийники сундуков в переменные Targ, Targ2. Если ничто не помогает - три инжект с компа и ставь себе ассист и уолуп.
Post Reply