# WRITE OUT MESSAGES FROM THE DRIVER SUBROUTINE DRVMSG( ME, DONE ) INTEGER ME LOGICAL*1 DONE INCLUDE COMMON.RAT INTEGER OLDSHP COMMON /OLDSTF/ OLDSCR(MAXSHP), OLDCRS, OLDWRP, OLDEN, OLDSH, OLDX, OLDY, IOLDT, IOLDH, IOLDP, OLDDIR, OLDSHP BYTE BLUNK(2) BYTE BLUNK2(2) BYTE OBUFF(-9:+9,-9:+9), NBUFF(-9:+9,-9:+9) BYTE JUNK LOGICAL*1 REFRES COMMON /BNDRY/ IXX, IYY, ID, MINID8, JUNK, OBUFF, NBUFF, REFRES EQUIVALENCE (BLUNK(2), NBUFF(-9, -9)) EQUIVALENCE (BLUNK2(2), OBUFF(-9, -9)) LOGICAL*1 DEAD, YES PARAMETER MSECS = 1, SECS = 2 #WAIT DURATION ARGS DEAD = .FALSE. DO I=1,10 [ IF (ISENT(ME,I) != 0) [ J = ISENT(ME,I) ISENT(ME,I)=0 GO TO (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20, 21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36), J 1 CONTINUE CALL MESSGE('DOCKED.') NEXT 2 CONTINUE CALL MESSGE('- HIT A STAR!') NEXT 3 CONTINUE DEAD = .TRUE. NEXT 4 CONTINUE CALL MESSGE('- TORPEDO HIT US!') CALL FLASH( 1, 50, MSECS ) NEXT 5 CONTINUE CALL MESSGE('+ TORPEDO HIT ALIEN!') NEXT 6 CONTINUE CALL MESSGE('+ PHASER HIT ALIEN!') NEXT 7 CONTINUE CALL MESSGE('PHASER HIT TORPEDO') NEXT 8 CONTINUE CALL MESSGE('PHASERS MISSED') NEXT 9 CONTINUE CALL MESSGE('- RAMMED ALIEN!') NEXT 10 CONTINUE CALL MESSGE('- COLLISION!') NEXT 11 CONTINUE CALL MESSGE('PHASER HIT STAR') NEXT 12 CONTINUE CALL MESSGE('- BASE UNDER ATTACK') NEXT 13 CONTINUE CALL MESSGE('TORPEDO HIT STAR') NEXT 14 CONTINUE CALL MESSGE('- PHASER ATTACK!') CALL FLASH( 1, 50, MSECS ) NEXT 15 CONTINUE CALL TPOS(18,1) CALL OUTSTR(.FALSE., 'SPOCK HERE CAPTAIN. ', .TRUE.) CALL OUTSTR(.TRUE., 'WE ARE BEING DRAWN INTO SOME SORT OF BLACK HOLE,', .TRUE.) CALL OUTSTR(.TRUE., 'IT IS UNLIKE ANYTHING I HAVE EVER ENCOUNTERED.', .TRUE.) CALL OUTSTR(.TRUE., 'FASCINATING.', .TRUE.) CALL WAIT( 4, SECS ) NEXT 16 CONTINUE CALL TPOS(18,1) CALL OUTSTR(.FALSE., 'SCOTT HERE CAPTAIN. ', .TRUE.) CALL OUTSTR(.TRUE., 'OUR DYLITHIUM CRYSTALS ARE GONE. LIFE SUPPORT IS', .TRUE.) CALL OUTSTR(.TRUE., 'FAILING ...!', .TRUE.) CALL WAIT( 3, SECS ) NEXT 17 CONTINUE CALL MESSGE('HYPERSPACE!') NEXT 18 CONTINUE CALL MESSGE('HYPERSPACE BLOCKED!') NEXT 19 CONTINUE CALL MESSGE('RANDOM HYPERSPACE!') NEXT 20 CONTINUE CALL MESSGE('TORPEDO HIT TORPEDO') NEXT 21 CONTINUE CALL MESSGE('HIT GHOST SHIP') NEXT 22 CONTINUE CALL MESSGE('*** ALIEN DESTROYED!') CALL MESSGE('********************') NEXT 23 CONTINUE CALL MESSGE('POD BLOCKED!') NEXT 24 CONTINUE CALL MESSGE('POD DESTROYED!') NEXT 25 CONTINUE CALL MESSGE('PHASER HIT POD') NEXT 26 CONTINUE CALL MESSGE('TORPEDO HIT POD') NEXT 27 CONTINUE CALL MESSGE('- METAL OBJECT NEAR') NEXT 28 CONTINUE CALL MESSGE('POD LAUNCHED') NEXT 29 CONTINUE CALL MESSGE('POD DETONATED!') NEXT 30 CONTINUE CALL MESSGE('- POD EXPLOSION!') CALL FLASH( 3, 50, MSECS ) NEXT 31 CONTINUE CALL MESSGE('IIEEEEEE!') NEXT 32 CONTINUE CALL MESSGE('+ POD HIT ALIEN!') NEXT 33 CONTINUE CALL MESSGE('- HIT NET!') NEXT 34 CONTINUE CALL MESSGE('TORPEDO HIT NET') NEXT 35 CONTINUE CALL MESSGE('PHASER HIT NET') NEXT 36 CONTINUE CALL MESSGE('NET BLOCKED!') NEXT ] ] IF ( DEAD ) [ CALL FLUSH( 0 ) #MAKE SURE WE SEE WHAT KILLED US CALL WAIT( 1, SECS ) CALL CLEAR CALL FLUSH( 0 ) WRITE(5,1131) 1131 FORMAT(////////////,25X,'*** BOOM ***') CALL FLASH( 4, 250, MSECS ) WRITE(5,1141) 1141 FORMAT('0YOUR SHIP HAS BEEN DESTROYED'/, ' FORTUNATELY YOU ESCAPED WITH YOUR LIFE.'/, ' UNFORTUNATELY, YOU HAVE BEEN GIVEN A NEW COMMAND.'//, '$ARE YOU READY TO ACCEPT THIS ASSIGNMENT? ') CALL YESNO(0,YES) IF (YES) [ WRITE (5,1142) 1142 FORMAT(' GOOD!') CALL STRMOV(BLUNK2,1,361,OBUFF,1) CALL RBUFF CALL CLROLD #SCRAMBLE SAVED STUFF TO GET A FULL REFRESH REFRES = .TRUE. ] ELSE [ DONE = .TRUE. ] ] RETURN END