Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
sub PotionMaker() Var Container='0x00000000' Var Tipo='Nothing' Var I, TimeOut, FBack, Did, Nome, Reagente, Check, Length, RLength, MsgFinish, Quantidade, QuantidadeP, Necessarios, NLength, NCount, MoveR, MoveP, PotionC, xSelect, ySelect, xMake, yMake, Making, TimeSay=200 Var Feitos=0 Var Finish=0 DIM Pocao[10] Pocao[1]='4,Mana,0x0F87,6' Pocao[2]='4,Heal,0x0F85,20' Pocao[3]='7,Refresh,0x0F7A,10' Pocao[4]='8,Strength,0x0F86,5' Pocao[5]='6,Poison,0x0F88,20' Pocao[6]='4,Cure,0x0F84,5' Pocao[7]='9,Explosion,0x0F8C,10' Pocao[8]='6,Shrink,0x0F78,2' Pocao[9]='12,Invisibility,0x0F7B,0x0F88,3' Pocao[10]='10,Nightsight,0x0F8D,1' DIM Button[11] Button[1]='71,276,234,135,2' Button[2]='68,175,234,177,2' Button[3]='74,115,240,136,2' Button[4]='71,176,232,140,2' Button[5]='70,196,236,179,2' Button[6]='68,217,230,155,2' Button[7]='71,235,235,156,2' Button[8]='66,278,233,114,2' Button[9]='66,296,232,138,3' Button[10]='69,136,231,112,3' Button[11]='326,441' UO.Print('Script para fazer Pocoes de uma em uma, Dimension Shard') UO.Print('Scripted by: Stanic. Contato: stanic@dmsshard.com.br') wait(5000) If not UO.Count('0x0E9B') Then UO.Print('Voce precisa de um Mortar and Pestle na sua Backpack para poder fazer as pocoes!') UO.Exec('Terminate All') Endif While (Container=='0x00000000') UO.Print('- Selecione o Container onde estam os Reagentes e os Empty Bottles:') UO.AddObject('Container') While UO.Targeting() Wait(100) Wend Container=UO.GetSerial('Container') If (Container=='0x00000000') Then UO.Print('- Por favor, selecione o Container novamente.') Wait(2000) Endif Wend UO.UseObject('Container') Wait(2000) UO.DeleteJournal() While (Tipo == 'Nothing') If (TimeSay == 200) Then UO.Print('- Digite qual tipo de Pocao voce deseja fazer: Mana, Heal, Refresh, Strength, Poison, Cure, Explosion, Nightsight, Shrink ou Invisibility.') TimeSay=0 Else TimeSay = TimeSay +1 Endif For I=1 to 10 Quantidade=Val(Right(Button[I],1)) Length=Val(Left(Pocao[I],Quantidade)) Nome=Mid(Pocao[I],Quantidade,Length) If (UO.InJournal(Nome)) Then Tipo=Nome RLength=Quantidade + Length + 1 Reagente=Mid(Pocao[I],RLength,6) Necessarios=0 NCount=0 While (Val(Necessarios) == 0) NCount = NCount +1 Necessarios=Right(Pocao[i],NCount) Wend Making=I UO.Print('- Pocao selecionada: '+Nome) Endif Next Wait(100) Wend UO.TextOpen() UO.TextClear() UO.TextPrint('Pocao selecionada: '+Tipo) While (Finish == 0) Quantidade=ContarItem(Reagente,'0x0000','Container') + ContarItem(Reagente,'0x0000','Backpack') QuantidadeP=ContarItem('0x0F0E','0x0000','Container') + ContarItem('0x0F0E','0x0000','Backpack') If (Quantidade < Val(Necessarios)) or (QuantidadeP < 1) Then If (Quantidade < Val(Necessarios)) Then MsgFinish='Os reagentes acabaram' Else MsgFinish='Os Empty Bottles acabaram' Endif Finish=1 Else UO.DeleteJournal() Quantidade=ContarItem(Reagente,'0x0000','Backpack') QuantidadeP=ContarItem('0x0F0E','0x0000','Backpack') If (UO.Count(Reagente) < Val(Necessarios)) Then MoveR=200-Quantidade UO.FindType(Reagente,'0x0000','Container') UO.Grab(MoveR,'finditem') Wait(1000) Endif If (QuantidadeP < 1) Then MoveP=100 UO.FindType('0x0F0E','0x0000','Container') UO.Grab(MoveP,'finditem') Wait(1000) Endif EsperaAtraso() UO.FindType('0x0F0E','-1','Backpack') UO.IgnoreReset() If (Feitos == 0) Then UO.TextPrint('Materiais no Container: '+Str(Quantidade)+' Reagentes e '+Str(QuantidadeP)+' Empty Bottles') UO.UseType('0x0E9B') EsperaAtraso() xSelect=Val(Left(Button[Making],2)) ySelect=Val(Mid(Button[Making],3,3)) UO.LClick(xSelect,ySelect) EsperaAtraso() xMake=Val(Mid(Button[Making],7,3)) yMake=Val(Mid(Button[Making],11,3)) Else xMake=Val(Left(Button[11],3)) yMake=Val(Right(Button[11],3)) Endif UO.LClick(xMake,yMake) EsperaAtraso() TimeOut=0 repeat wait(10) TimeOut= TimeOut +1 until UO.InJournal('Voce falhou|Voce pos|Skill A|Arruinou') or (TimeOut > 1000) If UO.InJournal('Voce pos') Then Feitos = Feitos +1 Did=1 Else Did=0 Endif FBack=3 While (FBack > 0) and (Did == 1) PotionC=UO.GetColor('finditem') If not (PotionC == '0x0000') Then UO.MoveItem('finditem',PotionC,'Container') FBack=1 EsperaAtraso() Endif UO.Ignore('finditem') UO.FindType('0x0F0E','-1','Backpack') FBack = FBack -1 Wend Endif Wend UO.TextPrint('Foram feitas '+str(Feitos)+' Pocoes de '+Tipo+'.') UO.Print(MsgFinish+', o Script foi finalizado!') endsub ########### by DracoX Sub ContarItem(tipo,cor,local) var cont=0 UO.FindType(tipo,cor,local) While UO.FindCount()>0 If UO.GetQuantity('finditem')<=1 Then cont=cont+1 Else cont=cont+UO.GetQuantity('finditem') Endif UO.Ignore('finditem') UO.FindType(tipo,cor,local) Wend UO.IgnoreReset() return cont EndSub Sub EsperaAtraso() UO.DeleteJournal() UO.Click('backpack') Repeat Wait(1) Until UO.InJournal('backpack') wait(100) return EndSub
Compartilhar