GAUHAR wrote: Скорее всего скрипт всегда считает что элементаль жив. Попробуй заменить Code: repeat ElementalX=UO.GetX(Elemental) ## Следим за координатами Элема, что бы не убежал ElementalY=UO.GetY(Elemental) ## Следим за координатами Элема, что бы не убежал wait(500) until UO.Isnpc(Elemental)==0 ## Ждём пока Элем умрёт на Code: repeat ElementalX=UO.GetX(Elemental) ## Следим за координатами Элема, что бы не убежал ElementalY=UO.GetY(Elemental) ## Следим за координатами Элема, что бы не убежал wait(500) until not UO.Isnpc(Elemental) ## Ждём пока Элем умрёт или на Code: while UO.Isnpc(Elemental) ## Ждём пока Элем умрёт ElementalX=UO.GetX(Elemental) ## Следим за координатами Элема, что бы не убежал ElementalY=UO.GetY(Elemental) ## Следим за координатами Элема, что бы не убежал wait(500) wend
спс тебе добрый скрептёр как проидёт тест так сразу скажу .
теперь у меня другой вопрос есть скрипт с ходилкой но почемута при хождения вылетает табличка конект лост хз почему вот сам скрипт Code: var qman var vendor="Beaumont"
################################################################
################################################################
sub main() uo.exec('exec start') end sub
################################################################
sub start() while not uo.dead() gomine() gozanovo() gomine() gosmelt() smeltore() gobank() tink() gosell() sellvendor() goungold() unloadgold() gomaxback() wend end sub
################################################################
Sub gomine() uo.exec('exec gvard') WalkN(1516,1505,0) kopka() WalkN(1518,1506,0) kopka() WalkN(1519,1507,0) kopka() WalkN(1519,1509,0) kopka() WalkN(1519,1511,0) kopka() WalkN(1519,1513,0) kopka() WalkN(1519,1515,0) kopka() WalkN(1520,1517,0) kopka() WalkN(1520,1519,0) kopka() WalkN(1519,1521,0) kopka() WalkN(1517,1521,0) WalkN(1517,1523,0) kopka() WalkN(1516,1520,0) kopka() WalkN(1515,1518,0) kopka() WalkN(1515,1516,0) kopka() WalkN(1514,1514,0) kopka() WalkN(1514,1512,0) kopka() WalkN(1513,1511,0) kopka() WalkN(1513,1509,0) kopka() WalkN(1513,1508,0) kopka() WalkN(1512,1506,0) kopka() endsub
################################################################
sub gozanovo() WalkN(1513,1521,0) WalkN(1522,1523,0) WalkN(1522,1508,0) end sub
Sub gosmelt() WalkN(1486,1512,1) WalkN(1473,1532,1) WalkN(1430,1540,1) UO.exec('terminate gvard') WalkN(1430,1554,1) WalkN(1425,1556,1) smeltore() endsub
################################################################
Sub gobank() WalkN(1430,1570,1) WalkN(1438,1583,1) WalkN(1425,1592,1) WalkN(1425,1622,1) WalkN(1420,1631,1) WalkN(1420,1668,1) WalkN(1436,1671,1) WalkN(1435,1680,1) endsub
################################################################
Sub gomaxback() WalkN(1435,1669,1) WalkN(1418,1669,1) WalkN(1420,1620,1) WalkN(1424,1613,1) WalkN(1424,1589,1) WalkN(1436,1589,1) WalkN(1436,1573,1) WalkN(1431,1568,1) WalkN(1431,1541,1) WalkN(1522,1531,1) endsub
################################################################
Sub gominback() WalkN(1446,1533,1) WalkN(1441,1524,1) WalkN(1447,1504,1) WalkN(1460,1504,1) endsub
################################################################
Sub gosell() var dver='0x400009D9' WalkN(1435,1658,1) WalkN(1432,1658,1) WalkN(1427,1658,1) while uo.getx('self')>=1432 CheckLag() uo.useobject(dver) wait(500) uo.press(36) wait(200) uo.press(36) wait(200) uo.press(36) wait(200) wend WalkN(1426,1655,1) endsub
################################################################
Sub goungold() var dver='0x400009D9' WalkN(1426,1658,1) WalkN(1430,1658,1) while uo.getx('self')<=1430 uo.useobject(dver) wait(500) Walker(1434,1658,1) uo.press(39) wait(200) uo.press(39) wait(200) uo.press(39) wait(200) wend WalkN(1435,1680,1) endsub
################################################################
Sub sellvendor() var vendor="Beaumont" uo.set('buydelay','4000') uo.set('maxsell','200') findvendor() uo.findtype('0x14FB','-1','backpack') while uo.findcount() uo.sell('lp',vendor) CheckLag() wait(6000) uo.findtype('0x14FB','-1','backpack') wend end sub
################################################################
sub findvendor() uo.ignorereset() repeat uo.findman(-1) qman=uo.findcount() if uo.getdistance('finditem')<15 && qman>0 && left(uo.getcolor('finditem'),3)<>'0x8' && uo.getserial('finditem')<>'0x00000000' then uo.getstatus('finditem') vendor=uo.getname('finditem') WalkN(uo.getx('finditem'),uo.gety('finditem'),2) uo.sell('lp','vendor') wait(1000) endif uo.ignore('finditem') wait(5) until qman==0 end sub
################################################################
sub gvard() while not uo.dead() uo.say('Guards') wait(3000) uo.say('Guards') wait(3000) wend end sub
################################################################
Sub kopka() var kirka='0x0E85' ; тут ставим тип кирки var i,j,x,y,z var ms1="Try mining" var ms2="You put" var ms3="There is no ore" var ms4="You loosen some" x=uo.getx('self') y=uo.gety('self') z=uo.getz('self') for i=-1 to 1 for j=-1 to 1 repeat uo.deletejournal() uo.waittargettile(0,x+i,y+j,z) uo.usetype(kirka) repeat wait(100) until uo.injournal(ms1) or uo.injournal(ms2) or uo.injournal(ms3) or uo.injournal(ms4) until uo.injournal(ms1) or uo.injournal(ms3) next next endsub
################################################################
Sub unloadgold() uo.findtype('0x0EED','-1','backpack') while uo.findcount() uo.say("bank") wait(1000) uo.findtype('0x0EED','-1','backpack') if uo.findcount() then CheckLag() uo.moveitem('finditem','all','lastcontainer') endif uo.findtype('0x0EED','-1','backpack') wend endsub
################################################################
Sub smeltore() uo.findtype('0x19B9','-1','backpack') while uo.findcount() uo.useobject('finditem') wait(500) uo.findtype('0x19B9','-1','backpack') wend endsub
################################################################ VAR EDA = '0x097b' # Это рыбные стейки VAR LastTimerDinner = UO.Timer() # Время приема пищи VAR FrequencyDinner = 3600 # как часто (раз в 6 минут) VAR LastTimerSpiritism = UO.Timer() # Время спиритизма VAR FrequencySpiritism = 3000 # как часто (раз в 5 минут) VAR SpiritismYorN = 1 # 1 - качать спирит спик, 0 - нет
sub tink() While UO.Count('0x1BEF') > 0 UO.deletejournal() CheckLag() UO.Exec("waitmenu 'Tinkering' 'Tools' 'Tools' 'lockpick'") UO.usetype("0x1EBC") repeat wait(500) until UO.injournal("You put") OR UO.InJournal("fail") DINNER() if SpiritismYorN == 1 then Spiritism() endif wend end sub
Sub WalkN(x,y,prec) var ld=0,ldc=0 var dx,dy var mx,my var ox,oy,mk,k #uo.print(">") #uo.track("1",str(x),str(y)) start: mx=UO.GetX() my=UO.GetY() dx=mx-x if dx<0 then dx=0-dx endif dy=my-y if dy<0 then dy=0-dy endif if dy>dx then dx=dy endif if dx<=prec then return endif if not ldc then uo.print(STR(dx)) endif if dx<3 then mk=70 else mk=15 endif ox=mx oy=my for k=1 to mk mx=UO.GetX() my=UO.GetY() if mx<>ox or my<>oy then goto sdidapl endif wait(10) next sdidapl: mx=UO.GetX() my=UO.GetY() dx=mx-x if dx<0 then dx=0-dx endif dy=my-y if dy<0 then dy=0-dy endif if dy>dx then dx=dy endif if dx<=prec then return endif if ld==dx then ldc=ldc+1 if ldc>100 then uo.print("Can not reach location!") return endif else ld=dx endif if mx==x then if my==y then return endif if my>y then #UO.Print("UR") UO.Press(33) goto start endif #UO.Print("DL") UO.Press(35) goto start endif if mx<x then if my>y then #UO.Print("R") UO.Press(39) goto start endif if my==y then #UO.Print("DR") UO.Press(34) goto start endif #UO.Print("D") UO.Press(40) goto start endif if my<y then #UO.Print("L") UO.Press(37) goto start endif if my==y then #UO.Print("LU") UO.Press(36) goto start endif #UO.Print("U") UO.Press(38) goto start endsub
################################################################
SUB DINNER() VAR k if UO.Timer() > LastTimerDinner+FrequencyDinner then if UO.Count(EDA) < 5 then PEREBROS(10,EDA,'-1','CONTAINER_sender','backpack') endif repeat k = 0 UO.UseType(EDA) wait(1000) repeat wait(100) k = k + 1 until (UO.InJournal("the food") or UO.InJournal("You are stuffed") or UO.InJournal("You are simply too full") or k==30) DelJournal("the food") until (UO.InJournal("You are stuffed") or UO.InJournal("You are simply too full") or k==30) if k <> 30 then PrintInColor("НАЕЛСЯ",'0x0053') else PrintInColor("Ты не можешь есть то, чего у тебя нет",'0x0053') PrintInColor("Пополни запас еды, или выбери другой тип",'0x0053') endif LastTimerDinner = UO.Timer() endif endsub
SUB Spiritism() VAR ispir, k if UO.Timer() > LastTimerSpiritism+FrequencySpiritism then PrintInColor("Разговор с духами",'0x0053') for ispir=1 to 3 k = 0 UO.UseSkill('Spirit Speak') while not (UO.InJournal("You fail your attempt") or UO.InJournal("You establish a connection") or k == 100) wait(100) k = k + 1 wend DelJournal("You fail your attempt") DelJournal("You establish a connection") next LastTimerSpiritism = UO.Timer() endif endsub
################################################################
Sub CheckLag() UO.DeleteJournal() UO.Click('backpack') repeat Wait(50) until UO.InJournal('backpack') endsub
SUB DelJournal(string1) VAR nom = UO.InJournal(string1) if nom > 0 Then UO.SetJournalLine(Nom - 1, 'string replaced') DelJournal(string1) endif endsub
SUB Presentation(TXT) PrintInColor("**************************",'0x0035') PrintInColor(TXT,'0x0035') PrintInColor("* Made by GAUHAR *",'0x0035') PrintInColor("**************************",'0x0035') wait(3000) endsub
SUB PrintInColor(text,color) # PrintInColor("здесь текст",'цвет') UO.ConColor(color) UO.Print(text) UO.ConColor('1088') endsub
sub Reconnector() var ReconnectTime, RFlag ReconnectTime = '0' RFlag = 1 Repeat While (UO.ObjAtLayer('Bpack') == '') if RFlag Then ReconnectTime = MakeTime() RFlag = 0 endif Wait(15000) # WorldSave Protection UO.Say('') Wait(5000) UO.Say('') Wait(5000) UO.Say('') Wait(3000) UO.LDblClick(357,164) UO.LClick(616,459) Wait(3000) WEnd Wait(3000) if (RFlag == 0) and (ReconnectTime <> '0') Then
wait(1000) 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
этот скрипт я сам намутил , поменял ,поставил но не магу поставить чтобы постаяна работал норм и даже рекоонектор не помогает, постояна конект лост мешает
|