# TRAITOR'S Get Near Fig # press "-" to find nearest fig to sector you input # Doesn't keep track of lost figs. You must hit "-" then "r" and enter to refresh the fig list systemscript :refresh gosub :getfigs :waitforuser settextouttrigger getminus :getminus "-" pause :getminus killtrigger getminus getinput $destsec "Enter Sector #: " if ($destsec = "r") goto :refresh elseif ($destsec < 1) OR ($destsec > SECTORS) echo "**INVALID SECTOR NUMBER**" goto :waitforuser else goto :userinfo end :userinfo # $checksec is the array of sectors to check setarray $checksec SECTORS # $donesec keeps track of sectors already checked setarray $donesec SECTORS # $count is the counter that tracks the sectors added to $checksec array setvar $count 1 # $pointer is the main counter that tracks what sectors have been checked in $checksec array setvar $pointer 1 # $closestsec is the sector that is closest to $destsec that has a fig setvar $closestsec $destsec # the following makes the destination sector the first index of $checksec setvar $checksec[$pointer] $destsec :mainloop while ($pointer <= SECTORS) if ($figsec[$checksec[$count]] = 1) setvar $closestsec $checksec[$count] echo ANSI_10 "**The closest fig to " $destsec " is " $closestsec "**" goto :waitforuser else setvar $tempsec $checksec[$count] setvar $donesec[$tempsec] 1 setvar $tempwarps SECTOR.WARPINCOUNT[$tempsec] while ($tempwarps > 0) # don't add previously checked sectors to $checksec Array!!! if ($donesec[SECTOR.WARPSIN[$tempsec][$tempwarps]] = 1) subtract $tempwarps 1 else add $pointer 1 setvar $checksec[$pointer] SECTOR.WARPSIN[$tempsec][$tempwarps] setvar $donesec[SECTOR.WARPSIN[$tempsec][$tempwarps]] 1 subtract $tempwarps 1 end end add $count 1 goto :mainloop end end halt :getfigs setarray $figsec SECTORS send "g" WaitFor "===" SetTextLineTrigger toll :makefigarray "Toll" SetTextLineTrigger def :makefigarray "Defensive" SetTextLineTrigger off :makefigarray "Offensive" SetTextTrigger gotfigs :gotfigs "Command" Pause :makefigarray KillTrigger toll KillTrigger def KillTrigger off GetWord CURRENTLINE $figgedsec 1 setvar $figsec[$figgedsec] 1 SetTextLineTrigger toll :makefigarray "Toll" SetTextLineTrigger def :makefigarray "Defensive" SetTextLineTrigger off :makefigarray "Offensive" pause :gotfigs killtrigger gotfigs killtrigger toll killtrigger def killtrigger off echo "****GOT FIGS!!!!!!!!****" send "d" return