Помогите со скриптом чтото неработает , Хилит тока 1 животное а дальше тупит |
Помогите со скриптом чтото неработает , Хилит тока 1 животное а дальше тупит |
Сообщений: 74 Рег. 19.05.2011 |
3 декабря 2012 16:27
Сообщение #1
|
sub Veterinary() Var Sunduk = '0x4014B540'; Ид сундука с бинтами и куда будут скидываться грязные бинты Var Bandag = '0x0E21'; тип чистых бинтов Var BlBandag = '0x0E20'; тип грязных бинтов Var Animal = '0x002B54CB'; Ид первого животного Var Animal2 = '0x002B54C8'; Ид второго животного Var life, life2 ; UO.Exec('exec Reconnector') while UO.SkillVal( 'Veterinary' ) < 1000 life=uo.gethp(Animal) life2=uo.gethp(Animal2) if UO.Count( Bandag ) < 10 Then UO.FindType( Bandag, '-1', Sunduk ) If UO.FindCount() > 0 Then UO.MoveItem( 'finditem', '500' ) wait(500) Else UO.Print( 'Bandage not found! Script terminated!' ) return Endif UO.FindType( BlBandag ) If UO.FindCount() > 0 Then UO.MoveItem( 'finditem', '0', sunduk ) wait(500) Endif Endif if life>=50 and life2>=50 then UO.Waittargetobject(Animal2) UO.msg('all kill') while life>30 and life2>30 wait(1000) life=uo.gethp(Animal) life2=uo.gethp(Animal2) wend UO.msg('All stop') food() else while life<80 uo.waittargetobject(Animal) uo.usetype('bandage') Repeat uo.deletejournal() wait(500) Until UO.InJournal('Вы наложили бинт') OR UO.InJournal('help') OR UO.InJournal('Не пытайтесь изобразить мумию') life=uo.gethp(Animal) else while life<80 uo.waittargetobject(Animal2) uo.usetype('bandage') Repeat uo.deletejournal() wait(500) Until UO.InJournal('Вы наложили бинт') OR UO.InJournal('help') OR UO.InJournal('Не пытайтесь изобразить мумию') life=uo.gethp(Animal2) wend endif wend end sub sub Reconnector() var ReconnectTime, RFlag ReconnectTime = '0' RFlag = 1 Repeat While (UO.ObjAtLayer('Bpack') == '') if RFlag Then ReconnectTime = MakeTime() RFlag = 0 endif Wait(20000) # WorldSave Protection UO.Say('') Wait(3000) UO.Say('') Wait(3000) UO.Say('') Wait(3000) UO.LDblClick(357,164) UO.LClick(616,459) Wait(3000) WEnd Wait(3000) if (RFlag == 0) and (ReconnectTime <> '0') Then UO.TextOpen() UO.TextPrint('Disconnected & Reconnected @ '+ReconnectTime) RFlag = 1 ReconnectTime = '0' endif Until false end sub sub MakeTime() VAR D, T, Ret, i Ret = STR(UO.Time()) T = "" For i = 0 To Len(Ret) T = Ret[Len(Ret)-i] + T If (I == 2) OR (I == 4) Then T = ":" + T EndIf Next Ret = STR(UO.Date()) D = "" For i = 0 To Len(Ret) D = Ret[Len(Ret)-i] + D If (I == 2) OR (I == 4) Then D = "." + D EndIf Next Ret = T + " @ " + D RETURN Ret end sub Sub food() if UO.Count(0x0c77) < 7 then UO.WaitTargetGround("0x0c77") UO.Grab("5") Wait(500) end if if UO.Count(0x0c77) > 0 then UO.usetype("0x0c77") wait(500) end if end sub |
|
|
|
Сообщений: 54 Рег. 29.09.2013 |
24 октября 2013 16:40
Сообщение #2
|
У меня он вообще не хилит их, а начинает флудить из сообщений, что персонаж сыт. Может у кого есть нормальный вариант скрипта. Столько уже животины погубил ))) # Рядом с собой кидаете сундук с бинтами, и перед собой двух животных # Изменяете все Ид и типы которые потребуеться # На закладке main ставим галочку напротив строки track world items # Вытаскиваем жизни обоих зверюжек и запускаем скрипт sub Veterinary() Var Sunduk = '0x4087B7B6'; Ид сундука с бинтами и куда будут скидываться грязные бинты Var Bandag = '0x0E21'; тип чистых бинтов Var BlBandag = '0x0E20'; тип грязных бинтов Var Animal = '0x007C6BF4'; Ид первого животного Var Animal2 = '0x009AD165'; Ид второго животного Var life, life2 while UO.SkillVal( 'Veterinary' ) < 1000 life=uo.gethp(Animal) life2=uo.gethp(Animal2) if UO.Count( Bandag ) < 10 Then UO.FindType( Bandag, '-1', Sunduk ) If UO.FindCount() > 0 Then UO.MoveItem( 'finditem', '500' ) wait(500) Else UO.Print( 'Bandage not found! Script terminated!' ) return Endif UO.FindType( BlBandag ) If UO.FindCount() > 0 Then UO.MoveItem( 'finditem', '0', sunduk ) wait(500) Endif Endif eat() if life>=50 and life2>=50 then UO.Waittargetobject(Animal2) UO.msg('all kill') wait(50) while life>40 and life2>40 wait(1000) life=uo.gethp(Animal) life2=uo.gethp(Animal2) wend UO.msg('All stop') else while life<50 uo.waittargetobject(Animal) uo.usetype('bandage') Repeat uo.deletejournal() wait(3500) Until UO.InJournal('Вы наложили') OR UO.InJournal('Вы не закончили') OR UO.InJournal('мумию') OR UO.InJournal('put') OR UO.InJournal('help') OR UO.InJournal('mummy') life=uo.gethp(Animal) wend while life2<50 uo.waittargetobject(Animal2) uo.usetype('bandage') Repeat uo.deletejournal() wait(3500) Until UO.InJournal('Вы наложили') OR UO.InJournal('Вы не закончили') OR UO.InJournal('мумию') OR UO.InJournal('put') OR UO.InJournal('help') OR UO.InJournal('mummy') life2=uo.gethp(Animal2) wend endif wend end sub ######################################### sub Stop() wait(500) UO.Exec("terminate all") end sub ######################################### sub eat() UO.DeleteJournal() repeat if UO.Count('0x097B')>0 then UO.UseType('0x097B') wait(200) else return end if Until UO.InJournal("stuffed!") OR UO.InJournal("think") OR UO.InJournal("ничего не можете")OR UO.InJournal("need that") ######################################### |
|
|
|
Сообщений: 54 Рег. 29.09.2013 |
25 октября 2013 00:46
Сообщение #3
|
Вот жадный народ! 198 просмотров и ни одного ответа. Просто не верится, что нет ни у кого норм раб скрипта... !!!!Вроде нашел, нужно потестить!!!! |
|
|
|
Сообщений: 54 Рег. 29.09.2013 |
25 октября 2013 02:21
Сообщение #4
|
Сколько же скотины я погубил! "....душили мы их душили..." |
|
|
|
Сообщений: 792 Рег. 27.06.2011 |
25 октября 2013 04:13
Сообщение #5
|
Цитата: BadDoc Вот жадный народ! 198 просмотров и ни одного ответа. Просто не верится, что нет ни у кого норм раб скрипта... !!!!Вроде нашел, нужно потестить!!!! Цитата: BadDoc Сколько же скотины я погубил! "....душили мы их душили..." Поделился? Или что-то мне такое помнится про рожу и зеркало. |
|
|
|
Сообщений: 54 Рег. 29.09.2013 |
25 октября 2013 12:30
Сообщение #6
|
Fiz Pok, ни кто конечно не поделился, просто методом сыска... ))) Ну вот теперь пока не получается переделать скрипт под другую живность. С лошадьми все не очень гладко, ХП у них мало, но колбаса их них вкусная получается. ЗЫ. Статы у них не дурно растут при прокачке ))) |
|
|
|
Сообщений: 1043 Рег. 18.06.2011 |
25 октября 2013 15:47
Сообщение #7
|
Он как бэ намекнул что ты обвинил всех в жадности, написал что нашел решение и как бэ зажал его. :) |
|
|
|
Сообщений: 54 Рег. 29.09.2013 |
25 октября 2013 18:49
Сообщение #8
|
Alucard, Все молчат, значит ни кому не нужно ))) Просто не знал где искать раньше. Вот только что сможет теперь его переделать под любую живность, даже без ее поиска скиптом, а просто забивая ее ID и тип.???? ################################################# ################### ; Ставим две лошади напротив друг друга, кладем в сундук рядом с чаром ; чистые бинты.Скрипт контролирует здоровье обеих лошадей ; и, если необходимо, подлечивает их с бинтов. Бинты он берет из сундука ; и туда же скидывает грязные.Скрипт сам определяет сериалы лошадей. ; Лошади должны стоять радом с чаром, иначе он их не найдет. Запускаем скрипт ; говорим All kill, натравляем одну лошадь на другую и все скрипт запущен. sub veterinar2() VAR Sunduk = '0x4087B7B6'; Сериал сундука с бинтами и медом VAR Bandag = '0x0E21' ; Тип бинтов VAR BlBandag = '0x0E20' ; Тип грязных бинтов VAR Horse1, Horse2, k VAR HorTyp1 = '0x00E2', HorTyp2 = '0x00E2' UO.SetGlobal( 'TimeProcess', str( UO.Timer() ) ) UO.UseObject( Sunduk ) wait(1000) ### Блок определения сериалов лошадей UO.Set( 'finddistance', '4' ) UO.FindType( HorTyp1, '-1', '1' ) If UO.FindCount() == 0 Then UO.FindType( HorTyp2, '-1', '1' ) If UO.FindCount() == 0 Then UO.Print( 'Horse 1 not found!' ) return Endif Endif Horse1 = UO.GetSerial( 'finditem' ) UO.Print( Horse1 ) UO.Ignore( 'finditem' ) UO.FindType( HorTyp1, '-1', '1' ) If UO.FindCount() == 0 Then UO.FindType( HorTyp2, '-1', '1' ) If UO.FindCount() == 0 Then UO.Print( 'Horse 2 not found!' ) UO.IgnoreReset() return Endif Endif Horse2 = UO.GetSerial( 'finditem' ) UO.Print( Horse2 ) UO.IgnoreReset() ### Блок прокачки While UO.SkillVal( 'Veterinary' ) < 1000 If UO.Count( Bandag ) < 10 Then UO.FindType( Bandag, '-1', Sunduk ) If UO.FindCount() > 0 Then UO.MoveItem( 'finditem', '200' ) wait(500) Else UO.Print( 'Bandage not found! Script terminated!' ) return Endif UO.FindType( BlBandag ) If UO.FindCount() > 0 Then UO.MoveItem( 'finditem', '0', sunduk ) wait(500) Endif Endif If ( UO.GetHP( Horse1 ) < UO.GetMaxHP( Horse1 ) ) OR ( UO.GetHP( Horse2 ) < UO.GetMaxHP( Horse2 ) ) Then # Здесь я решил организовать так: чар лечит сначала ту лошадь, здоровья у которой меньше. Естественно, # если одна из лошадей здорова - то у второй меньше здоровья, иначе бы мы в If не вошли. If UO.GetHP( Horse1 ) < UO.GetHP( Horse2 ) Then ; лечим первую лошадь UO.Print( 'Veterinary!' ) UO.WaitTargetObject( Horse1 ) UO.UseType( Bandag ) wait(3500) Endif If UO.GetHP( Horse1 ) > = UO.GetHP( Horse2 ) Then ; лечим вторую лошадь UO.Print( 'Veterinary!' ) UO.WaitTargetObject( Horse2 ) UO.UseType( Bandag ) wait(3500) Endif ; останавливаем лошадей если у одной из них мало хп If ( UO.GetHP( Horse1 ) < 25 ) OR ( UO.GetHP( Horse2 ) < 25 ) Then uo.say("all stop") wait(1000) endif If ( UO.GetHP( Horse1 ) == UO.GetMaxHP( Horse1 ) ) and ( UO.GetHP( Horse2 ) == UO.GetMaxHP( Horse2 ) ) Then uo.waittargetobject( Horse1 ) uo.say("all kill") wait(1000) endif Else wait(300) Endif Wend end sub sub eat() while true uo.usetype('0x097B') wait(50000) wend end sub |
|
|
|
Сообщений: 1043 Рег. 18.06.2011 |
25 октября 2013 20:30
Сообщение #9
|
А что, так уже не качается? О_о sub Veterinary() uo.addobject('zverb') while uo.targeting()==2 wait(100) wend while not uo.dead() uo.attack('zverb') wait(500) repeat wait(100) until uo.getHP('zverb') <= uo.getMaxHP('zverb')/2 uo.WarMode(0) wait(100) repeat UO.UseSkill("Hiding") UO.DeleteJournal() Repeat Wait(100) Until UO.InJournal("seem|been|hidden") Until UO.Hidden() repeat UO.DeleteJournal() uo.waittargetobject('zverb') uo.usetype('0x0E21') while not UO.InJournal('barely|put|mummy') wait(100) wend until uo.getHP('zverb') == uo.getMaxHP('zverb') wait(100) Wend endsub или так var HealType='0x0E21' var ArmType='0x1B76' sub Veterinary() var NeedFeed=0 var Counter UO.UseType(ArmType) UO.Print('Select CREATURE to practice on:') UO.AddObject('creature') WaitTargetDone() while not UO.Dead() UO.Attack('creature') while UO.GetHP('creature')==(UO.GetMaxHP('creature')/2) wait(100) wend StopBattle() HealCreature() UO.UseType(ArmType) wait(200) wend end sub Sub StopBattle() UO.DeleteJournal() UO.WarMode(0) end sub Sub HealCreature() while UO.GetHP('creature')<>UO.GetMaxHP('creature') UO.DeleteJournal() UO.WaitTargetObject('creature') UO.UseType(HealType) while not UO.InJournal('barely|put|mummy|come closer') wait(100) wend if UO.InJournal('mummy|come closer') then return end if wend end sub Sub WaitTargetDone() while UO.Targeting() wait(500) wend Подохла, принимаемся за другую. Главное самому не скукситься :) PS это какие то старые скрипты. фиг знает как они работают но общая схема проще чем с 2 конями. |
|
|
|
Сообщений: 54 Рег. 29.09.2013 |
25 октября 2013 22:36
Сообщение #10
|
Alucard, Спасибо опробую! да, с двумя конями немного муторно, но потом просто они мутируют в заправских ездовых вреслеров ))) |
|
|
|
Сообщений: 2217 Рег. 26.10.2009 |
25 октября 2013 22:41
Сообщение #11
|
на двух Dark Mustang'ах качался... в итоге один растамился и я его уже не смог затамить :( |
|
|
|
Сообщений: 54 Рег. 29.09.2013 |
25 октября 2013 23:34
Сообщение #12
|
Anen, ну этого не избежать. Беги обычных коняг в конюшне. Alucard, Что то ни то, что с первым, что со вторым. Он 1 раз только хилит, а потом забивает животину да и себя не хилит. Там вроде все понятно, но описалово краткое не помешало бы. |
|
|
|
25 октября 2013 23:53
Сообщение #13
|
|
-------------------- |
|
|
|
Сообщений: 2217 Рег. 26.10.2009 |
26 октября 2013 00:59
Сообщение #14
|
Jose Cuervo, новинка однако... я про это не в курсе был, да и сомневаюсь что в то время этот эликсир был в природе) |
|
|
|
Сейчас: 25 ноября 2024 06:31 |