|---------------------------------------------------------------|
| |
| Macro: firekill.mac by |
| By: Zippzipp |
| Vers: v1.0 12-20-04 |
| |
| This macro auto pulls select mobs at the castle of pofire |
| It loots bodies once dead, very nice afk exp macro if you |
| have the right classes boxed. My set up is cleric(using |
| the afcleric macro, 2 rogues(using RH macro), SK (using |
| RH macro), and an ench(using an ench slow tash macro). |
| with this its self sufficient and gets free exp!!! |
| |
| Usage: /mac firekill |
| |
|---------------------------------------------------------------|
|------This is a rough diagram of C2 in pofire.---------|
| |
| x = mobs ||| = ramps () = where group is |
| |
|-------------------------------------------------------|
|--------------------------------------------------\
|x x x \
| \
| |--------| |--------| \
| | x | | x | \
| |x x| |x x| \
| |___|||__| |___|||__| |
| |
| |
| ______ These are the mobs that die when the first | |
| | 8 are dead. |
| V |
|----------- |-----------| |
|x x x| |x x x x | <---------- these 8 |
|x x | | are first |
|x x | |x x x x | |
|x x |----|||----| |
| | |
|x |
| x| () <------This is where pulling to |
|x x x x |
|------------ |
| |
| |
| |
| x x x x x x |
|----------------------| |------------------------|
#turbo
#event zoned "#*#Knowledge#*#"
Sub Main
/declare gothit int outer
/varset gothit 0
:start
/doevents
/call platform
/
/doevents
/call eightmore
/
/doevents
/call otherfive
/
/doevents
/call innercastle
/delay 1500
/goto :start
/return
|-------------------------------------------|
| |
| -----------platform---------- |
| |
| This sub targets the 8 mobs on platform |
| Pulling them and killing them all |
|-------------------------------------------|
Sub platform
/target npc radius 10 loc 500 -1433
/call eighttarg
/target npc radius 10 loc 532 -1433
/call eighttarg
/target npc radius 10 loc 500 -1394
/call eighttarg
/target npc radius 10 loc 532 -1394
/call eighttarg
/target npc radius 10 loc 500 -1347
/call eighttarg
/target npc radius 10 loc 532 -1347
/call eighttarg
/target npc radius 10 loc 500 -1296
/call eighttarg
/target npc radius 10 loc 532 -1296
/call eighttarg
/return
Sub eightmore
/delay 120
/call MoveToLoc -1501 478
/delay 15
/target npc radius 10 loc 591 -1535
/call eighttarg
/call MoveToLoc -1501 478
/delay 15
/target npc radius 10 loc 605 -1595
/call eighttarg
/call MoveToLoc -1501 478
/delay 15
/target npc radius 10 loc 626 -1565
/call eighttarg
/call MoveToLoc -1501 478
/delay 15
/target npc radius 10 loc 623 -1537
/call eighttarg
/call MoveToLoc -1501 478
/delay 15
/target npc radius 10 loc 684 -1611
/call eighttarg
/call MoveToLoc -1501 478
/delay 15
/target npc radius 10 loc 684 -1545
/call eighttarg
/call MoveToLoc -1501 478
/delay 15
/target npc radius 10 loc 684 -1501
/call eighttarg
/call MoveToLoc -1501 478
/delay 15
/target npc radius 10 loc 629 -1456
/call eighttarg
/call MoveToLoc -1501 478
/delay 15
/target npc radius 10 loc 627 -1409
/call eighttarg
/call MoveToLoc -1501 478
/delay 15
/target npc radius 10 loc 645 -1406
/call eighttarg
/call MoveToLoc -1501 478
/delay 15
/target npc radius 10 loc 675 -1449
/call eighttarg
/call MoveToLoc -1501 478
/delay 15
/target npc radius 10 loc 675 -1416
/call eighttarg
/return
Sub otherfive
|/delay 120
|/call MoveToLoc -1348 437
|/delay 15
|/target npc radius 10 loc 452 -1167
|/call eighttarg
/call MoveToLoc -1458 418
/delay 5
/call MoveToLoc -1348 437
/delay 15
/target npc radius 10 loc 432 -1184
/call fivetarg
/call MoveToLoc -1458 418
/delay 5
/call MoveToLoc -1348 437
/delay 15
/target npc radius 10 loc 452 -1167
/call fivetarg
/call MoveToLoc -1458 418
/delay 5
/call MoveToLoc -1348 437
/delay 15
/target npc radius 10 loc 481 -1189
/call fivetarg
/call MoveToLoc -1458 418
/delay 5
/call MoveToLoc -1348 437
/delay 15
/target npc radius 10 loc 473 -1150
/call fivetarg
/call MoveToLoc -1458 418
/delay 5
/call MoveToLoc -1348 437
/delay 15
/target npc radius 10 loc 429 -1140
/call fivetarg
/return
Sub innercastle
/delay 120
/call MoveToLoc -1625 345
/delay 15
/target npc radius 10 loc 230 -1624
/call eighttarg
/call MoveToLoc -1625 345
/delay 15
/target npc radius 10 loc 220 -1642
/call eighttarg
/call MoveToLoc -1625 345
/delay 15
/target npc radius 2 loc 215 -1695
/call eighttarg
/call MoveToLoc -1625 345
/delay 15
/target npc radius 5 loc 217 -1806
/call eighttarg
/call MoveToLoc -1625 345
/delay 15
/target npc radius 5 loc 270 -1784
/call eighttarg
| /call MoveToLoc -1625 345
| /delay 15
| /target npc radius 10 loc 319 -1809
| /call eighttarg
/call MoveToLoc -1625 345
/delay 15
/target npc radius 10 loc 458 -1730
/call eighttarg
/call MoveToLoc -1625 345
/delay 15
/target npc radius 10 loc 431 -1750
/call eighttarg
/call MoveToLoc -1625 345
/delay 15
/target npc radius 10 loc 398 -1758
/call eighttarg
/call MoveToLoc -1625 345
/delay 15
/target npc radius 10 loc 420 -1794
/call eighttarg
/call MoveToLoc -1625 345
/delay 15
/target npc radius 10 loc 446 -1785
/call eighttarg
/call MoveToLoc -1625 345
/delay 15
/target npc radius 10 loc 474 -1771
/call eighttarg
/call MoveToLoc -1625 345
/delay 15
/target npc radius 10 loc 463 -1615
/call eighttarg
/return
|-------------------------------------------|
| |
| -------------kill----------- |
| |
| This function faces shoots range then |
| sticks to target until its dead. It |
| calls function loot once dead. |
|-------------------------------------------|
Sub kill
/face fast
/delay 10
/echo Attacking!!!!
/attack on
/delay 10
:alive
/if (${Target.Distance.Int} <= 40) {
/if (${gothit}==0) {
/stick 18
/varset gothit 1
}
}
/if (!${Target.ID}) {
/echo Target Dead!
/delay 5
/target radius 30 corpse
/delay 5
/call loot
/keypress esc
/delay 5
/varset gothit 0
/return
}
/doability 1
/doability 2
/goto :alive
/return
|--------------------------------------------|
| |
| -------gottoplatformsetup------ |
| |
| This sub returns you to platform pull spot |
|--------------------------------------------|
Sub gotoplatformsetup
/call MoveToLoc -1467.41 366.01
/return
Sub loot
/return
|--------------------------------------------|
| |
| ------------loot------------- |
| |
| This sub loots the corpses for you |
| This function was taken from hunter |
| .mac by: robdawg v1.3 2004-05-13 |
|--------------------------------------------|
Sub loots
/declare LootSlot int inner 0
/declare LootCheck int inner 0
/declare LootTotal int inner 0
/face fast
/keypress forward
/keypress back
/delay 5
/loot
/delay 5
/if (!${Corpse.Items}) {
/echo NO LOOT! Cheap Bastard!
/return
}
/varset LootTotal ${Corpse.Items}
/for LootSlot 1 to ${LootTotal}
/itemnotify loot${LootSlot} leftmouseup
/delay 5
/if (${RV_LootAllItems}) {
/echo Keeping a ${Cursor.Name}... WOOT!
/autoinventory
/delay 5
} else {
/for LootCheck 1 to ${RV_LootArray.Size}
/if (${Cursor.Name.Find[${RV_LootArray[${LootCheck}]}]}) {
/echo Keeping a ${Cursor.Name}... WOOT!
/autoinventory
/delay 5
}
/next LootCheck
}
/if (${Cursor.ID}) {
/echo Destroying a ${Cursor.Name}...
/destroy
/delay 5
}
/next LootSlot
/return
Sub MoveToLoc(MoveToY, MoveToX)
/if (${Math.Distance[${Me.Y},${Me.X}:${MoveToY},${MoveToX}]} < 10) /return
/echo Moving to Location: ${MoveToY}, ${MoveToX}.
/echo Distance: ${Math.Distance[${Me.Y},${Me.X}:${MoveToY},${MoveToX}]}
/declare running int local
/declare distanceNow float local
/declare distanceBefore float local
/declare distanceModifier int local
/varset running 0
/declare distanceTimer timer 15
/varset distanceBefore ${Math.Distance[${Me.Y},${Me.X}:${MoveToY},${MoveToX}]}
/varset distanceModifier 1
:moveToLocation
/face fast nolook loc ${MoveToY},${MoveToX}
/if (${Math.Distance[${Me.Y},${Me.X}:${MoveToY},${MoveToX}]}<10) {
/keypress forward
/return
}
/if (${distanceTimer}==0) {
/if (${Me.Sneaking}) {
/varset distanceModifier 2
} else {
/varset distanceModifier 1
}
/varset distanceNow ${Math.Distance[${Me.Y},${Me.X}:${MoveToY},${MoveToX}]}
/if (${Math.Calc[${distanceBefore}-${distanceNow}]}<${Math.Calc[10/${distanceModifier}]}) {
/call strafePastObstacle
}
/varset distanceBefore ${Math.Distance[${Me.Y},${Me.X}:${MoveToY},${MoveToX}]}
/varset distanceTimer 15
}
/if (${running}==0) {
/keypress forward
/if (${Math.Distance[${Me.Y},${Me.X}:${MoveToY},${MoveToX}]}>10) {
/varset running 1
/keypress forward hold
}
} else {
/if (${Math.Distance[${Me.Y},${Me.X}:${MoveToY},${MoveToX}]}<11) {
/varset running 0
/keypress forward
}
}
/goto :moveToLocation
/return
sub strafePastObstacle
/keypress forward
/keypress back hold
/delay 2
/keypress back
/if (${Math.Rand[99]}>50) {
/keypress strafe_right hold
} else {
/keypress strafe_left hold
}
/delay 3
/keypress strafe_right
/keypress strafe_left
/keypress forward hold
/return
sub fivetarg
/if (${Target.ID}) {
/echo TARGETED >> ${Target} <<
/face fast
/delay 10
/range
/delay 35
/call MoveToLoc -1458 418
/call gotoplatformsetup
/call kill
}
/delay 120
/return
sub eighttarg
/if (${Target.ID}) {
/echo TARGETED >> ${Target} <<
/face fast
/delay 10
/range
/delay 35
/call gotoplatformsetup
/call kill
}
/delay 120
/return
Sub event_zoned
/echo died
/return