SUBROUTINE AUTOVER C*BEGIN COMMON COMMON SNAP,SNAPSHT(247), + DATE,REMKL,REMCOM,REMBASE,REMRES,REMTIME,STARKL,BASEKL, + KILLK,KILLC,GALAXY(8,8),CX(10),CY(10),BASEQX(5),BASEQY(5), + NEWSTUF(8,8),PLNETS(10,5),ISX,ISY,NSCREM,NROMKL,NROMREM, + NSCKILL,NPLANKL,ISATB,BATX,BATY,THINGX,THINGY, + QUAD(10,10),KX(20),KY(20),KPOWER(20),KDIST(20),KSTUF(20), + FUTURE(10),MESSAGE(5,10), + INKLING,INBASE,INRESOR,INCOM,INTIME,INSTAR,INENRG,INSHLD, + INTORPS,INLSR,INDATE,ENERGY,SHLD,SHLDUP,CONDIT,TORPS,SHIP, + QUADX,QUADY,SECTX,SECTY,WARPFAC,WFACSQ,LSUPRES,DAMAGE(20), + LENGTH,SKILL,PASSWD,DIST,DIREC,TIME,BASEX,BASEY,DOCKFAC, + KLHERE,COMHERE,CASUAL,NHELP,NKINKS,STARCH(8,8), + DEVICE(2,14),IDIDIT,GAMEWON,ALIVE,JUSTIN,RESTING,ALLDONE, + DAMFAC,SHLDCHG,NDEVICE,PLNETX,PLNETY,INORBIT,LANDED,IPLANET, + IMINE,ICRYSTL,INPLAN,NENHERE,ISHERE,NEUTZ,IRHERE,ICRAFT, + IENTESC,ISCRAFT,ISCATE,CRYPROB,ICITE,IPHWHO, + CRACKS(12) INTEGER SHLDUP,CONDIT,QUADX,QUADY,SECTX,SECTY,TORPS, + REMKL,REMBASE,SKILL,REMCOM,GALAXY,STARCH,CX,CY, + SHIP,ALLDONE,BASEQX,BASEQY,BASEX,BASEY,GAMEWON, + ALIVE,STARKL,BASEKL,CASUAL,COMHERE,RESTING,SNAP,SHLDCHG, + THINGX,THINGY,BATX,BATY,PLNETX,PLNETY,PLNETS REAL KDIST,KPOWER,LSUPRES,INTIME,INRESOR,INDATE,INSHLD, + INENRG,INLSR BYTE QUAD REAL*8 DEVICE,PASSWD C*END COMMON IF(LANDED .EQ. 1) CALL RESCUE(16) IF(ALLDONE .NE. 0) RETURN IF(ICRAFT .NE. 0) CALL FINISH(17) IF(ALLDONE .NE. 0) RETURN C--------INFORM CAPTAIN OF ATTEMPT TO REACH SAFETY CALL SKIP(1) IF(JUSTIN .EQ. 0) GO TO 50 47 CALL REDALRT CALL CRAM(7H***THE ) CALL CRAMSHP CALL CRAMDMP(37H HAS STOPPED IN A QUADRANT CONTAINING) CALL PROUT(15H A SUPERNOVA.,15) CALL SKIP(1) 50 CALL CRAM(49H***EMERGENCY AUTOMATIC OVERRIDE ATTEMPTS TO HURL ) CALL CRAMSHP CALL CREND CALL PROUT(23HSAFELY OUT OF QUADRANT.,23) STARCH(QUADX,QUADY)=1 C--------TRY TO USE WARP ENGINES IF(DAMAGE(6) .EQ. 0) GO TO 100 CALL SKIP(1) CALL PROUT(21HWARP ENGINES DAMAGED.,21) CALL FINISH(8) RETURN 100 WARPFAC=6.0+2.0*RANF(0) WFACSQ=WARPFAC*WARPFAC CALL CRAM(19HWARP FACTOR SET TO ) CALL CRAMF(WARPFAC,0,1) CALL CREND POWER=0.75*ENERGY DISTMAX=POWER/(WARPFAC*WARPFAC*WARPFAC*(SHLDUP+1)) DISTREQ=1.4142+2.0*RANF(0) DIST=AMIN1(DISTMAX,DISTREQ) TIME=10.0*DIST/WFACSQ DIREC=12.0*RANF(0) JUSTIN=0 INORBIT=0 CALL WARPX IF(ALLDONE.NE.0) RETURN IF(JUSTIN.NE.0) GO TO 200 CALL SKIP(1) CALL PROUT(38HINSUFFICIENT ENERGY TO LEAVE QUADRANT.,38) CALL FINISH(8) RETURN C--------REPEAT OVERRIDE IF SHIP JUMPED FROM ONE SUPERNOVA TO ANOTHER 200 IF(GALAXY(QUADX,QUADY) .EQ. 1000) GO TO 47 IF(REMKL .EQ. 0) CALL FINISH(1) RETURN END