Нужна помощь по скрипту на Animal Taming

Anything and all.

Moderators: Murderator+, Murderator

Post Reply
Sle3a
Posts: 5
Joined: 2009-12-16 22:49:28
Contact:

Нужна помощь по скрипту на Animal Taming

Post by Sle3a »

вот сам скрипт

Code: Select all

sub tam() 
var food='0x097B' # type of food for animal 
DIM animals[4] 
animals[1] = '0x00DC'   ;Liama 
animals[2] = '0x00CF'   ;Sheep 
animals[3] = '0x00E2'   ;Horce
animals[4] = '0x00CC'   ;Horse2
var staf='0x4000B512' # ID your taming staf 
var ms1="You fail to tame the creature." 
var ms2="Sheep: Я твоя nick !" 
var ms3="Your target is too far away from you." 
var ms4="You put"
var ms5= "Horse:"
var ms6="It seems to accept you as master."
var ms7="This creature already tame."
var k,i 
uo.print("Ñòàðòóåì!")
while not uo.dead() 
	for i= 1 to 4 
		uo.findtype(animals[i],'-1','ground') 
		uo.print("Èùåì æèâíîñòü...")
		if uo.findcount()>0 then 
			uo.print("Æèâíîñòü íàéäåíà...")
			k=uo.getserial('finditem') 
			uo.ignore('finditem') 
			uo.deletejournal() 
			while not uo.injournal(ms4) 
				uo.findtype(food,'-1','backpack') 
				uo.moveitem('finditem','1',k) 
				wait(500) 
				repeat 
			wend 
			wait(1000) 
			uo.deletejournal() 
			while not uo.injournal(ms2) or uo.injournal(ms3) or uo.injournal(ms7) or uo.injournal(ms6)
				uo.print("Òàìèì...")
				uo.waittargetobject(k) 
				wait(50) 
				uo.useobject(staf) 
				uo.deletejournal() 
				repeat 
					wait(500) 
				until uo.injournal(ms1) or uo.injournal(ms2)
			wend 
			uo.say("all release")
			wait(5000)
		else 
			uo.ignorereset() 
		endif 
	next 
wend 
endsub 
Он тамит все нормально кормит, но при успешном затамливании живности не пишет вообще фразу all release
ПОМОГИТЕ ПОЖАЛУЙСТА ИСПРАВИТЬ!
icq 390 двести четыре 297
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

Code: Select all

while not uo.injournal(ms2) or uo.injournal(ms3) or uo.injournal(ms7) or uo.injournal(ms6)
Тут надо правльно написать

щас слишком поздно я не знаю...
я бы написал

Code: Select all

repeat

until uo.injournal(ms2|ms3|ms6|ms7)
Sle3a
Posts: 5
Joined: 2009-12-16 22:49:28
Contact:

Post by Sle3a »

Nmy wrote:

Code: Select all

while not uo.injournal(ms2) or uo.injournal(ms3) or uo.injournal(ms7) or uo.injournal(ms6)
Тут надо правльно написать

щас слишком поздно я не знаю...
я бы написал

Code: Select all

repeat

until uo.injournal(ms2|ms3|ms6|ms7)

А поподробнее можно? что то не понял...
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Post by Mirage »

так низя :)
ЗЯ так:

UO.InJournal( ms2+ "|" + ms3+ "|" + ms6+ "|" + ms7)

И вот так:

Code: Select all

var ms1="fail"
var ms2="Я твоя nick" ; обично пишут "master"!!!
var ms3="too far away"
var ms4="You put"
var ms5= "Horse:" ; нафига вообще?
var ms6="as master" ;взаимоисключает 2 месагу
var ms7="already" 
Sle3a
Posts: 5
Joined: 2009-12-16 22:49:28
Contact:

Post by Sle3a »

Mirage wrote:так низя :)
ЗЯ так:

UO.InJournal( ms2+ "|" + ms3+ "|" + ms6+ "|" + ms7)

И вот так:

Code: Select all

var ms1="fail"
var ms2="Я твоя nick" ; обично пишут "master"!!!
var ms3="too far away"
var ms4="You put"
var ms5= "Horse:" ; нафига вообще?
var ms6="as master" ;взаимоисключает 2 месагу
var ms7="already" 

Что то не помогает все равно... тамлю на ламах, до этого на овцах все тоже самое... затамил и не пишет all release
ЕСЛИ НЕ ТРУДНО НАПИШИТЕ ПОЛНОСТЬЮ КАК ДОЛЖЕН ВЫГЛЯДЕТЬ ИСПРАВЛЕННЫЙ СКРИПТ)

UP!!
Sle3a
Posts: 5
Joined: 2009-12-16 22:49:28
Contact:

Post by Sle3a »

Up!
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

Тебе уже написали что надо сделать. Чего ждем то?
Sle3a
Posts: 5
Joined: 2009-12-16 22:49:28
Contact:

Post by Sle3a »

Code: Select all

 sub tam() 
var food='0x097B' # type of food for animal 
DIM animals[4] 
animals[1] = '0x00DC'   ;Liama 
animals[2] = '0x00CF'   ;Sheep 
animals[3] = '0x00E2'   ;Horce
animals[4] = '0x00CC'   ;Horse2
var staf='0x400BA7D1' # ID your taming staf 
var ms1="You fail to tame the creature." 
var ms2="Sheep: ß òâîÿ nick !" 
var ms3="Your target is too far away from you." 
var ms4="You put"
var ms5= "Horse:"
var ms6="It seems to accept you as master."
var ms7="This creature already tame."
var k,i 
uo.print("Ñòàðòóåì!")
while not uo.dead() 
	for i= 1 to 4 
		uo.findtype(animals[i],'-1','ground') 
		uo.print("Èùåì æèâíîñòü...")
		if uo.findcount()>0 then 
			uo.print("Æèâíîñòü íàéäåíà...")
			k=uo.getserial('finditem') 
			uo.ignore('finditem') 
			uo.deletejournal() 
			while not uo.injournal(ms4) 
				uo.findtype(food,'-1','backpack') 
				uo.moveitem('finditem','1',k) 
				wait(500) 
				repeat 
			wend 
			wait(1000) 
			uo.deletejournal() 
			while uo.injournal(ms2) or uo.injournal(ms3) or uo.injournal(ms6) or uo.injournal(ms7)
				uo.print("Òàìèì...")
				uo.waittargetobject(k) 
				wait(50) 
				uo.useobject(staf) 
				uo.deletejournal() 
				repeat 
					wait(500) 
				until uo.injournal(ms1) or uo.injournal(ms2)
			wend 
			uo.say("all release")
			wait(5000)
		else 
			uo.ignorereset() 
		endif 
	next 
wend 
endsub 
Исправил, теперь находит живность, начинает кормить, не тамит а просто пишет all release :( что еще может быть не так...
Last edited by Sle3a on 2009-12-20 23:11:14, edited 1 time in total.
Mirage
Posts: 2802
Joined: 2009-05-28 09:58:28
Location: Иваново
Contact:

Post by Mirage »

тесть

Code: Select all

 sub tam()
var food='0x097B' # type of food for animal
DIM animals[4]
animals[1] = '0x00DC'   ;Liama
animals[2] = '0x00CF'   ;Sheep
animals[3] = '0x00E2'   ;Horce
animals[4] = '0x00CC'   ;Horse2
var staf='0x400BA7D1' # ID your taming staf
var ms1="You fail to tame the creature."
var ms2="Sheep: ß òâîÿ The MusicMan !"
var ms3="Your target is too far away from you."
var ms4="You put"
var ms5= "Horse:"
var ms6="It seems to accept you as master."
var ms7="This creature already tame."
var k,i
while not uo.dead()
   for i= 1 to 4
      uo.findtype(animals[i],'-1','ground')
      uo.print("Èùåì æèâíîñòü...")
      if uo.findcount()>0 then
         k=uo.getserial('finditem')
         uo.ignore('finditem')
         uo.deletejournal()
         while not uo.injournal(ms4)
            uo.findtype(food,'-1','backpack')
            uo.moveitem('finditem','1',k)
            wait(500)
         wend
         wait(1000)
         uo.deletejournal()
         while uo.injournal(ms2) or uo.injournal(ms3) or uo.injournal(ms6) or uo.injournal(ms7)
            uo.waittargetobject(k)
            uo.useobject(staf)
            uo.deletejournal()
            repeat
               wait(500)
            until uo.injournal(ms1) or uo.injournal(ms2)
         wend
         uo.say("all release")
         wait(5000)
      else
         uo.ignorereset()
      endif
   next
wend
endsub 
это не скрипт а хз что
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

Во 1ых проблема в том что var ms1-7 написано не правильно и криво.
Во 2ых while uo.injournal(ms2) or uo.injournal(ms3) or uo.injournal(ms6) or uo.injournal(ms7) и wend надо заменить на:
вместо while... будет repeat
вместо wend будет until uo.injournal(ms2) or uo.injournal(ms3)

В данном случае надо с уо взять правильные системные сообщения и прописать их. Если что то будет не правильно в коде - поможем.
Nmy
Expert!
Posts: 2152
Joined: 2005-09-14 15:31:58
Location: Latvia

Post by Nmy »

Code: Select all

sub tam() 
var food='0x097B' # type of food for animal 
DIM animals[4] 
animals[1] = '0x00DC'   ;Liama 
animals[2] = '0x00CF'   ;Sheep 
animals[3] = '0x00E2'   ;Horce 
animals[4] = '0x00CC'   ;Horse2 
var staf='0x4000B512' # ID your taming staf 
var ms1="You fail to tame the creature." 
var ms2="Sheep: Я твоя nick !" ; <- НЕ ПРАВИЛЬНО
var ms3="Your target is too far away from you." 
var ms4="You put"  ; <- НЕ ПРАВИЛЬНО
var ms5="Horse:"  ; <- НЕ ПРАВИЛЬНО
var ms6="It seems to accept you as master." 
var ms7="This creature already tame." 
var k,i 
while not uo.dead() 
   for i= 1 to 4 
      uo.findtype(animals[i],'-1','ground') 
      if uo.findcount()>0 then 
         k=uo.getserial('finditem') 
         uo.ignore('finditem') 
         uo.deletejournal() 
         while not uo.injournal(ms4) 
            uo.findtype(food,'-1','backpack') 
            uo.moveitem('finditem','1',k) 
            wait(500) 
            repeat 
         wend 
         wait(1000) 
         uo.deletejournal() 
         repeat
            uo.waittargetobject(k) 
            wait(50) 
            uo.useobject(staf) 
            uo.deletejournal() 
            repeat 
               wait(500) 
            until uo.injournal(ms1) or uo.injournal(ms2) 
         until uo.injournal(ms2) or uo.injournal(ms3) or uo.injournal(ms7) or uo.injournal(ms6)
         uo.say("all release") 
         wait(5000) 
      else 
         uo.ignorereset() 
      endif 
   next 
wend 
endsub
Post Reply