All pastes #794374 Raw Edit

Stuff

public text v1 · immutable
#794374 ·published 2007-11-23 02:01 UTC
rendered paste body
DSPK V04.00 Furcadia
-----------
DREAM ENTRY
-----------
(0:9) When a furre arrives in the dream,
            (5:15) move the triggering furre to (12,10), or to someplace nearby if it's occupied.
-----------------
STARTUP PROCEDURE
-----------------
(0:100) When 1 seconds have passed, offset by 0,
   (1:206) and variable %Startup is not equal to 1,
            (5:384) set variable %NW to the x,y position (8,12).
            (5:384) set variable %NewNW to the x,y position (10,13).
            (5:384) set variable %SE to the x,y position (12,16).
            (5:384) set variable %NewSE to the x,y position (14,17).
            (5:384) set variable %Signal to the x,y position (12,17).
            (5:300) set variable %Move to the value 0.
            (5:300) set variable %Enable to the value 0.
            (5:210) set entrytext to {Welcome to Raeburn's multi-stop train system. Special thanks to the Helper Beekins and Unix for testing. #SO}
-----------------------
STOP COMMAND AND SIGNAL
-----------------------
(0:31) When a furre says {Stop},
            (5:300) set variable %Move to the value 0.
            (5:300) set variable %Enable to the value 0.


-------------
COMMAND ERROR (WHEN MOVE IS NOT ZERO)
-------------
(0:31) When a furre says {Forward},
   (1:206) and variable %Move is not equal to 0,
            (5:200) emit message {Are you trying to damage the train!? Use 'Stop' before changing directions} to the triggering furre.

(0:31) When a furre says {Reverse},
   (1:206) and variable %Move is not equal to 0,
            (5:200) emit message {Are you trying to damage the train!? Use 'Stop' before changing directions} to the triggering furre.

----------
SE COMMAND
----------
(0:31) When a furre says {Forward},
   (1:200) and variable %Move is equal to 0,
            (5:384) set variable %NewSE to the x,y position (%SE).
            (5:353) move the position in variable %NewSE southeast (down and right) 1 step(s).
            (5:384) set variable %NewNW to the x,y position (%NW).
            (5:353) move the position in variable %NewNW southeast (down and right) 1 step(s).
            (5:384) set variable %Signal to the x,y position (%SE).
            (5:354) move the position in variable %Signal southwest (down and left) 1 step(s).
            (5:300) set variable %Move to the value 1 .
(5:200){FORWARD STEAM!}
----------
NW COMMAND
----------
(0:31) When a furre says {Reverse},
   (1:200) and variable %Move is equal to 0,
            (5:384) set variable %NewSE to the x,y position (%SE).
            (5:355) move the position in variable %NewSE northwest (up and left) 1 step(s).
            (5:384) set variable %NewNW to the x,y position (%NW).
            (5:355) move the position in variable %NewNW northwest (up and left) 1 step(s).
            (5:384) set variable %Signal to the x,y position (%NW).
            (5:354) move the position in variable %Signal southwest (down and left) 1 step(s)
            (5:300) set variable %Move to the value 2 .
(5:200){REVERSE STEAM!}
---------------------------
ALL ABOARD! (TRAIN STARTUP)
---------------------------
(0:31) When a furre says {Last Call!},
   (1:200) and variable %Enable is equal to 0,
            (5:50) set countdown timer 1 to go off in 4 seconds.

(0:50) When countdown timer 1 goes off,
            (5:300) set variable %Enable to the value 1.
            (5:202) emit message {Stand clear of the tracks!} to every furre who can see (%SE).

--------------------
THROW STATION SIGNAL
--------------------
(0:2) When somebody moves into floor type 178,
   (1:15) and the triggering furre is facing southwest (down and left),
      (3:6) where the triggering furre moved into,
            (5:6) swap object types 163 and 164.
      (3:11) 2 step(s) in front of the triggering furre,
            (5:3) swap floor types 180 and 183.

-------
SE MOVE
-------
(0:100) When 1 seconds have passed, offset by 0,
   (1:200) and variable %Move is equal to 1,
   (1:1012) and position (%Signal) is not floor type 180,
         (4:1) only where the floor is type 177,
         (3:2) at position (%NewSE) on the map,
            (5:23) swap the object with the object at (%SE).
         (3:2) at position (%SE) on the map,
            (5:23) swap the object with the object at (%NewNW).
         (3:2) at position (%NW) on the map,
            (5:23) swap the object with the object at (%NewNW).
      (3:17) in a line starting at (%SE) and going 4 more spaces northwest.
            (5:81) move any furre present 1 step(s) southeast (down and right) if there's nobody already there.
            (5:354) move the position in variable %NW southwest (down and left) 1 step(s).
            (5:354) move the position in variable %SE southwest (down and left) 1 step(s).
            (5:354) move the position in variable %NewNW southwest (down and left) 1 step(s).
            (5:354) move the position in variable %NewSE southwest (down and left) 1 step(s).
            (5:354) move the position in variable %Signal southwest (down and left) 1 step(s).







-------
NW MOVE
-------
(0:100) When 1 seconds have passed, offset by 0,
   (1:200) and variable %Move is equal to 2,
   (1:200) and variable %Enable is equal to 1,
   (1:1012) and position (%Signal) is not floor type 180,
         (4:1) only where the floor is type 177,









*Endtriggers* 8888 *Endtriggers*