Page 1 of 1

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

Posted: 2009-12-16 22:54:35
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

Posted: 2009-12-17 00:20:42
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)

Posted: 2009-12-17 10:32:36
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)

А поподробнее можно? что то не понял...

Posted: 2009-12-17 11:48:29
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" 

Posted: 2009-12-17 13:45:34
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!!

Posted: 2009-12-20 17:14:29
by Sle3a
Up!

Posted: 2009-12-20 18:30:09
by Nmy
Тебе уже написали что надо сделать. Чего ждем то?

Posted: 2009-12-20 20:41:34
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 :( что еще может быть не так...

Posted: 2009-12-20 22:44:10
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 
это не скрипт а хз что

Posted: 2009-12-21 00:04:42
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)

В данном случае надо с уо взять правильные системные сообщения и прописать их. Если что то будет не правильно в коде - поможем.

Posted: 2009-12-21 00:08:14
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