Moderator: MacroQuest Developers

Code: Select all
/alert add # [pc,npc,corpse,any] [loc x,y,z] [range min max] [radius radius] spawn$distance(y,x)
Returns the distance to a location
Code: Select all
| name: igcheck
| Use /macro igcheck [NORTH, SOUTH, BACK]
#define NORTHX "-6464.00"
#define NORTHY "2005.00"
#define SOUTHX "-6463"
#define SOUTHY "1758"
#define BACKX "-6864.00"
#define BACKY "1834.00"
#define LocDistance v1
#define BeepCount v2
Sub Main
:DISTANCE CHECK
/varset LocDistance $distance($p0y,$p0x)
:Alert
/alert clear 1
/alert add 1 npc Range $LocDistance $LocDistance giant
:AlertBeep
/if $alert(1)==TRUE {
/varadd BeepCount 1
/if BeepCount < 6 {
/beep
}
}
/goto :AlertBeep
/return
Code: Select all
/target loc x,y,z GuardCode: Select all
/alert add 1 loc x,y,z Guard
Code: Select all
|***********************************************************|
| Note All these values are guessed looking at a map of everfrost
| the values on the headings assume East is 0 and the gotoloc
| is also a [b]bad[/b] estimate.
|
| IMPORTANT!!
| I have not tested this so you [b]must[/b] to fix the headings,
| the gotoloc and any other bugs that might occur
|
| Disclaimer : If this macro downloads gay porn and emails
| it to your wife's friends, drinks your beers or flushes
| the toilet while you are in the shower I am not responsible
|***********************************************************|
#define tID1 a(1,1)
#define tID2 a(1,2)
#define tID3 a(1,3)
#define GiantTotal a(1,4)
#define East a(1,5)
#define North a(1,6)
#define South a(1,7)
#define Counter v01
#include routines.mac
Sub Main
/gotoloc 1750,-6600
:Top
/zapvars
/press Esc
/target npc giant
/if "$target(name)"=="NULL" {
/mqlog No Giants pausing for 15s
/delay 15s
/goto :Top
}
/varset tID1 $target(id)
/call CheckSpawn
/call GetNTarg
/varset tID2 $target(id)
/if n $tID1==$tID2 {
/call DResults
/return
}
/call CheckSpawn
/call GetNTarg
/varset tID3 $target(id)
/if n $tID1==$tID3 {
/call DResults
/return
}
/if n $tID2==$tID3 {
/call DResults
/return
}
/call CheckSpawn
/call DResults
/return
|*******************************************|
Sub GetNTarg
:Loop
/target id $target(next)
/if "$target(name,clean)"!~"An Ice Giant" /goto :Loop
/return
|*******************************************|
Sub CheckSpawn
/face nopredict
/if n $char(heading)==350 {
/varadd GiantTotal 1
/varset East 1
/return
}
/if n $char(heading)==120 {
/varadd GiantTotal 1
/varset North 1
/return
}
/if n $char(heading)==260 {
/varadd GiantTotal 1
/varset South 1
/return
}
/return
|*******************************************|
Sub DResults
/beep
/delay 5
/beep
/delay 5
/beep
/if n $East==1 /echo East spawn is up!
/if n $North==1 /echo North spawn is up!
/if n $South==1 /echo South spawn is up!
/echo A total of $GiantTotal spawns are up!
/return
1. I'm pretty sure I know what you are trying to do, and if I don't then it is a communication problem on your part and not my problem.YKW-28983 wrote:Single can you just leav me alone? you don't know what i'm trying to do, and it's verry clear that you don't with that script you just wrote.
If there are no ice giants up then you will get a spider or something else./target npc giant
And you don't look east when you are camping the back giant...
I was not flaming, I was simply telling you, that your script had an error in it. You said you wanted tests and debugging, so go screw yourself.I forgot about the giant spiders in the zone but since you like to flame it appears you too damn dumb to change it to /target npc "an ice giant" or something else that will only target ice giants.