Code: ################################### # Ñêðèïò äëÿ Êðàôòîâ # # ( äàííîì ñëó÷àå äëÿ Tailoring) # ###################################
;|---------------------------| ;| Îïèñàíèå ïåðåìåííûõ Items | ;|---------------------------|
VAR EQ,RQ1,RQ2,QB VAR Eat='0x160A' ; Type ??? (????) VAR Res1='0x175D' ; Type ?????? 1 (?????) VAR Res2='0x0FA0' ; Type ?????? 2 (?????) VAR Kit='0x0F9D' ; Type ??????????? ?????? (Sewing Kit) VAR Items='0x1F03' ; Type ????????? ????????? EQ=1 ; ?????????? ??? RQ1=240 ; ?????????? ??????? 1 RQ2=15 ; ?????????? ??????? 2
;|---------------------------------| ;| Îïèñàíèå ïåðåìåííûõ êîíòåéíåðîâ | ;|---------------------------------|
VAR ContainerRes='0x415D778F' ; Object ????????? ? ????????? VAR ContainerBag='0x40FF57EF' ; Object ????????? ? ??????? VAR BagCount='0x0E76' ; Type ????? ? ?????????? ContainerBag
sub main() UO.Set('quiet','1') UO.Exec('exec Craft') UO.IgnoreReset() end sub
sub OpenBag() VAR i,BagID UO.UseObject(ContainerBag) UO.UseObject(ContainerRes) UO.IgnoreReset() Repeat UO.DeleteJournal() Wait(1000) UO.FindType(BagCount,'-1',ContainerBag) If UO.FindCount('finditem') > 1 Then i = (UO.FindCount('finditem') +1) UO.Click('finditem') If UO.InJournal("bag") Then BagID=UO.JournalSerial(UO.InJournal("bag")-1) UO.SetJournalLine(UO.InJournal("bag")-1,"") UO.FindType(Items,'-1',BagID) UO.UseObject(BagID) Wait(2000) UO.Hide(BagID) UO.Ignore(BagID,'on') EndIF EndIf i = (i - 1) Until i == 0 UO.Hide(ContainerBag) UO.Hide(ContainerRes) UO.Resend() Wait(3000) UO.IgnoreReset() end sub sub Craft() VAR Last=0,LastTimer OpenBag() While NOT UO.Dead()
;|-----------------------------------| ;| Search of resources and Take them | ;|-----------------------------------|
UO.FindType(Eat,'-1','me') If UO.GetQuantity('finditem') < 1 then UO.FindType(Eat,'-1',ContainerRes) If UO.GetQuantity('finditem') > 1 then ToTake(3) Else UO.Exec ('Terminate Craft') EndIf Else ToEat() EndIf UO.FindType(Res1,'-1','me') If UO.GetQuantity('finditem') < 16 then UO.FindType(Res1,'-1',ContainerRes) If UO.GetQuantity('finditem') > 1 then ToTake(1) Else UO.Exec ('Terminate Craft') EndIf EndIf UO.FindType(Res2,'-1','me') If UO.GetQuantity('finditem') < 1 then UO.FindType(Res2,'-1',ContainerRes) If UO.GetQuantity('finditem') > 1 then ToTake(2) Else UO.Exec ('Terminate Craft') EndIf EndIf
;|-------------| ;| Craft Items | ;|-------------|
UO.DeleteJournal() UO.WaitTargetType(Res1) UO.UseType(Kit) UO.WaitMenu ('Cloth','Shirts','Shirts','robe') ; Íàçâàíèå ÊðàôòÌåíþ1(Cloth),ÏîäÌåíþ2(Shirts) -> ÊðàôòÌåíþ2(Shirts),ÏîäÌåíþ2(Robe) LastTimer=UO.Timer() Repeat wait(100) Until UO.InJournal("You put") OR UO.InJournal("Tailoring") OR LastTimer+150<UO.Timer() UnLoadItem() Wend end sub
sub ToTake(i) VAR G,F If i == 1 Then G = RQ1 F = Res1 EndIf If i == 2 Then G = RQ2 F = Res2 EndIf If i == 3 Then G = EQ F = Eat EndIf UO.FindType(F,'-1',ContainerRes) if UO.GetQuantity('finditem') > 1 then UO.Grab(''+str(G)+'','finditem') UO.DeleteJournal() Repeat UO.FindType(F,'-1','me') Wait(1500) Until UO.InJournal("That is too") OR UO.GetQuantity('finditem') > 1 endif end sub sub ToEat() UO.UseType(Eat) end sub
sub UnLoadItem() VAR BagID VAR i=0 VAR m=0 Repeat UO.DeleteJournal() UO.FindType(BagCount,'-1',ContainerBag) UO.Click('finditem') m = 0 Repeat Wait(1000) Until UO.InJournal("bag") If UO.InJournal("bag") Then BagID=UO.JournalSerial(UO.InJournal("bag")-1) UO.SetJournalLine(UO.InJournal("bag")-1,"") UO.FindType('-1','-1',BagID) If UO.FindCount('finditem') < 200 then m = UO.FindCount('finditem') UO.SetReceivingContainer(BagID) UO.FindType(Items,'-1','me') UO.Grab('0','finditem') UO.ConColor('0x0021') UO.Set('quiet','0') UO.Print(UO.Print('In BagPack#'+Str(i+1)+' items '+Str(m)+'')) UO.Set('quiet','1') UO.ConColor('0x0035') Wait(1000) UO.UnSetReceivingContainer() Else i = i + 1 UO.Ignore(BagID, 'on') EndIf EndIf If i == QB Then UO.IgnoreReset() i = 0 EndIf UO.FindType(Items,'-1','me') Until UO.FindCount('finditem') < 1 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.Exec('terminate main') UO.Exec('terminate Craft') UO.Exec('terminate ToTake') UO.Exec('terminate ToEat') UO.Exec('terminate UnLoadItem') UO.Exec('terminate OpenBag') UO.Exec('exec main') 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 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.Exec('terminate main') UO.Exec('terminate Craft') UO.Exec('terminate ToTake') UO.Exec('terminate ToEat') UO.Exec('terminate UnLoadItem') UO.Exec('terminate OpenBag') UO.Exec('exec main') 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
|