www.ClassicTW.com
https://mail.black-squirrel.com/

MSL Port Blower
https://mail.black-squirrel.com/viewtopic.php?f=15&t=30545
Page 1 of 1

Author:  Promethius [ Thu Nov 04, 2010 10:57 pm ]
Post subject:  MSL Port Blower

Another older script to blow the ports in the MSLs and the same purpose as the tunnel liner script. Fed 2-10 will have to be blown manually although a couple might be picked up in the run.


Code:
# msl port blower

setVar $numFigs "1"
setVar $attackFigs "100"
setVar $figString "f" & $numFigs & "*cd"

send "'ProMSL Port Destruction warming up*"
send "'Antcipate MSL Destruction complete approximately 60 seconds*"

getword currentline $prompt 1

if (CURRENTSECTOR <> STARDOCK) or ($prompt <> "Command")
   echo ansi_12 "**-- You must start at the sector prompt at Stardock!!"
   halt
end

getTime $mslStart "hh:mm:ss am/pm"


# get ship fighter wave
send "c;"
waitfor "TransWarp Drive:"
getText CURRENTLINE $figWave "Per Attack:" "TransWarp Drive:"
stripText $figWave " "
send "q"


setVar $rylos RYLOS
setVar $alphaCentauri ALPHACENTAURI


if ($rylos = 0)
   echo ANSI_12 "*The sector for Rylos was not found!!!*"
   echo ANSI_12 "Enter the sector for Rylos or 0 to halt!*"
   getConsoleInput $rylos
   if ($rylos = 0)
      halt
   end
end

if ($alphaCentauri = 0)
   echo ANSI_12 "*The sector for Alpha Centauri was not found!!!*"
   echo ANSI_12 "Enter the sector for Alpha Centauri or 0 to halt!*"
   getConsoleInput $alphaCentauri
   if ($alphaCentauri = 0)
      halt
   end
end

:begin
  # dock to rylos to alpha centauri to dock
   setVar $mowstring  $rylos & " " & $alphaCentauri & " " & STARDOCK & " "
   setVar $mowstring $mowString & $alphaCentauri & " " & $rylos & " " & STARDOCK & " "
   setVar $mowstring $mowString & "1  " & STARDOCK & " "


:beginScript
  killtrigger endIt
  setTextOutTrigger endit :endIt "!"
  setVar $routePath ""
  setVar $path ""
  getword $mowString $mow 1
  isnumber $test $mow
  if ($test = 0)
     echo ansi_12 $mow " is not a valid number"
     halt
  end
  setVar $counter 1

:getCF
   killalltriggers
   # insert photon and interdictor triggers
   if ($mow = CURRENTSECTOR)
      add $counter 1
      getword $mowString $mow $counter
   end
   setVar $path ""
   send "*  cf*" $mow "*"
   setTextLineTrigger start :getCfHops "The shortest path"
   setTextTrigger noPath :noPath "No route within"
   pause
   :getCfHops
   killtrigger noPath
   getword CURRENTLINE $hops 4
   striptext $hops "("
   add $hops 1
   setarray $moveArray $hops
   :startgp
   setTextTrigger doneLines :doneLines "Computer command"
   setTextLineTrigger path :path ""
   pause
   :nopath
     send "nq"
     echo "***" ANSI_12 "-------- No Path --------***"
     add $counter 1
     getword $mowString $mow $counter
      if ($mow <> 0)
         goto :getCF
      else
        goto :beginScript
     end
   :path
      killtrigger doneLines
      setVar $path $path & CURRENTLINE
      goto :startgp
    :doneLines
      killtrigger more
      killtrigger doneLines
      striptext $path ">"
      striptext $path "("
      striptext $path ")"
      setVar $icnt 2
      while ($icnt <= $hops)
         getword $path $tmp $icnt
         setVar $moveArray[$icnt] $tmp
         add $icnt 1
      end
      send "q"
      setVar $i 1
      while ($i < $hops)
         add $i 1
         if ($moveArray[$i] > 10) and ($moveArray[$i] <> STARDOCK)
            send "m " $moveArray[$i]  "*z  a9999*z  * " $figString "*"
            if ($moveArray[$i] <> $rylos) and ($moveArray[$i] <> $alphacentauri)
               if (port.exists[$moveArray[$i]])
                  setTextTrigger alreadyBlown :alreadyBlown "Captain! Are you sure you"
                  setTextTrigger blowIt :blowIt "Enter your choice [T] ?"
                  send "p"
                  pause
                  :blowIt
                    killtrigger alreadyBlown
                    send "ay9999*  "
                  :alreadyBlown
                    killtrigger blowIt
                    send "*"
               end
            end
         else
            send "m  " $moveArray[$i] & "*"
         end
      end
      add $counter 1
      getword $mowString $mow $counter
      if ($mow > 0)
         goto :getCF
      end
      killalltriggers
      getTime $mslEnd "hh:mm:ss am/pm"
      send "ca"
      waitfor "Enter your general announcement"
      send "ProMSL Port Destruction Started: " $mslStart " Completed: " $mslEnd "*yq"
      send "'ProMSL Port Destruction Started: " $mslStart " Completed: " $mslEnd "*"
      halt

Page 1 of 1 All times are UTC - 5 hours
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/