You are on page 1of 7

##items_control>> Chocolate 0 1 0 ##items_control>> White Chocholate 0 1 0 ##save point char in prontera automacro online { hook in_game location prontera

exclusive 1 run-once 1 call setUP } macro setUP { ## do do do do do do do do do do do do do config set conf lockMap none conf lockMap_x none conf lockMap_y none conf route_randomWalk 0 conf route_randomWalk_inTown 0 conf attackAuto 0 conf follow 0 conf storageAuto 1 conf sellAuto 0 conf itemsGatherAuto 0 conf itemsMaxWeight_sellOrStore 90 conf storageAuto_npc prontera 146 89 conf autoTalkCont 0

## variables set $begin = 1 $inventoryFULL = 0 # Chocolate [r0], White Chocholate [r1], Telur [r2], Flour [r3], Cacao Bean [ r4] $chocotype = White Chocholate $rt = r1 # talk sequence delay $wt = w0.5 # talk sequence #$npcCHOCOseqpront = talknpc 120 52 c $wt r0 $wt c $wt $rt n $npcCHOCOseqkiel = talknpc 158 28 c $wt $rt n $npcCHOCOseq = $npcCHOCOseqkiel $northernKAFRA = talknpc 146 89 c $wt r1 n #$southernKAFRA = talknpc 151 29 c $wt r1 n $KAFRAseq = $northernKAFRA $npcWARPCHOCOseqpront = talknpc 149 63 c $wt c $wt r1 n $npcWARPCHOCOseqkiel = talknpc 161 192 c $wt r1 $wt c $wt r0 n # MAXWEIGHT #$constMAXWEIGHT = 0.88 $constMAXWEIGHT = 0.47 # minimum amount of zeny $minZENY = 10000 call invCOUNT #if (@inventory($chocotype) > 0) goto goSTORAGE # call buyNOW

# stop #:goSTORAGE #call gotoSTORAGE } automacro buyCHOCO { #location kh_school 146 18 170 38 location kh_school var begin == 1 var inventoryFULL == 0 exclusive 1 run-once 1 call buyNOW } macro buyNOW { call invCOUNT if ($inventoryFULL == 1) goto loopOUT call valueZENY if ($zeny <= $minZENY) goto noMONEY :conMOV $movX = @arg("$npcCHOCOseq", 2) $movY = @arg("$npcCHOCOseq", 3) $randPOS = 15 call movRANDBOT if (@npc($movX $movY) < 0) goto conMOV call charMAXWEIGHTdec while ($charMAXWEIGHT < $constMAXWEIGHT) as loopBUY do $npcCHOCOseq [ call charMAXWEIGHTdec call valueZENY ] if ($zeny < $minZENY) goto loopOUT end loopBUY :loopOUT $inventoryFULL = 1 release buyCHOCO stop :noMONEY [ log ======================================== log ============ NO MORE MONEY ============= log ======================================== ]

lock all do relog 100000 } macro invCOUNT { call charMAXWEIGHTdec if ($charMAXWEIGHT >= $constMAXWEIGHT) goto invFULL $inventoryFULL = 0 stop :invFULL $inventoryFULL = 1 } automacro backtoJUNO08 { location kh_school, yuno_fild08 var begin == 1 var inventoryFULL == 1 exclusive 1 run-once 1 call JUNO08now } macro JUNO08now { :checkAGAIN if ($.map == "yuno_fild08") goto NEXTstep [ do move yuno_fild08 ] goto checkAGAIN :NEXTstep $movX = @arg("$npcWARPCHOCOseqkiel", 2) $movY = @arg("$npcWARPCHOCOseqkiel", 3) $randPOS = 5 call movRANDBOT if (@npc($movX $movY) < 0) goto NEXTstep do $npcWARPCHOCOseqkiel :upAGAIN pause 1 if ($.map == "yuno_fild08") goto upAGAIN release backtoJUNO08 } automacro movetoKAFRA { location prontera var begin == 1

var inventoryFULL == 1 exclusive 1 run-once 1 delay 3 call gotoKAFRA } macro gotoKAFRA { :NEXTstep $movX = @arg("$northernKAFRA", 2) $movY = @arg("$northernKAFRA", 3) $randPOS = 5 call movRANDBOT if (@npc($movX $movY) < 0) goto NEXTstep do $northernKAFRA :storageLOOP if (@eval(exists $::storage{opened}?1:0)) goto endLOOP log == wait a moment == pause 1 goto storageLOOP :endLOOP if (@inventory($chocotype) < 0) goto end do storage add @inventory($chocotype) pause 0.5 do storage close :end $inventoryFULL = 0 release movetoKAFRA } automacro gotoKIELHYRE { location prontera var begin == 1 var inventoryFULL == 0 exclusive 1 run-once 1 call KIELnow } macro KIELnow { :repMOVE $movX = @arg("$npcWARPCHOCOseqpront", 2) $movY = @arg("$npcWARPCHOCOseqpront", 3) $randPOS = 5 call movRANDBOT

if (@npc($movX $movY) < 0) goto repMOVE do $npcWARPCHOCOseqpront :upAGAIN pause 1 if ($.map == "prontera") goto upAGAIN release gotoKIELHYRE } automacro backtoSCHOOL { location yuno_fild08 var begin == 1 var inventoryFULL == 0 exclusive 1 run-once 1 delay 3 call scholNOW } macro scholNOW { :repMOVE if ($.map != "yuno_fild08") goto end [ do move 149 190 ] pause 1 goto repMOVE end: release backtoSCHOOL } automacro isDEAD { hook self_died exclusive 1 run-once 1 call botISDEAD } macro botISDEAD { log derita LO mampus! release all } ##== sub macro ==## ##== sub macro ==## ##== sub macro ==## ##== sub macro == ##

# no variable # $charMAXWEIGHT macro charMAXWEIGHTdec { $charMAXWEIGHT = @eval(1-@eval(@eval($.maxweight-$.weight)/$.maxweight)) } ## $zeny ## zeny value macro valueZENY { do eval $::Macro::Data::varStack{zeny} = int($::char->{'zeny'}); } ## no variable ## $posX = "pos", $posY = "pos" ## position split macro posSPLIT { $posX = @arg("$.pos", 1) $posY = @arg("$.pos", 2) } ## $movX = "pos", $movY = "pos", $randPOS = "radius" ## destination confirmation ## move Bot to any place randomly macro movRANDBOT { # check random value if ($randPOS != 0) goto contRAND stop # check position code :contRAND if ($movX == "") goto movBOTW if ($movY == "") goto movBOTW # calculate min-max position $movX1 = @eval($movX-$randPOS) $movX2 = @eval($movX+$randPOS) $movY1 = @eval($movY-$randPOS) $movY2 = @eval($movY+$randPOS) # check if BOT is already on location :movLOOP [ do move @rand($movX1, $movX2) @rand($movY1, $movY2) ] call posSPLIT if ($posX ~ $movX1..$movX2 && $posY ~ $movY1..$movY2) goto end goto movLOOP :movBOTW stop

:end }

You might also like