SUBROUTINE SCORPI # # THIS SUBROUTINE CONTROLS THE ACTIONS OF A SCORPION. THE SCORPION # MOVES ACROSS THE SCREEN AND POISONS THOSE MUSHROOMS HE CONTACTS. # IMPLICIT INTEGER (A-Z) INCLUDE SY:CNTPED.CMN INCLUDE SY:UVT100.DAT CALL UVT100(CUP,SCOX,SCOY) IF (MSHBRD(SCOX,SCOY) > 0) [ #MUSHROOM IS HERE PSNBRD(SCOX,SCOY) = 1 #POISON IT. CALL GETADR(PRL,PSNCHR) ] ELSE CALL GETADR(PRL,SPACE) CALL WTQIO(IOWVB,5,2,,,PRL) IF (SCODIR == LEFT) #MOVE SCORPION ONE SQUARE SCOY = SCOY - 1 #LEFT OR RIGHT, DEPENDING ELSE #ON HIS DIRECTION OF TRAVEL SCOY = SCOY + 1 IF (SCOY < LMAR .OR. SCOY > RMAR) [ #IF OFF SIDE OF BOARD, IT SCOACT = 0 #IS THE END OF SCORPION. SCOTIM = TIMER + 200 #NEXT SCORPION IN 200 CYCLES RETURN ] CALL UVT100(CUP,SCOX,SCOY) #DISPLAY SCORPION ON SCREEN CALL GETADR(PRL,SCOCHR) CALL WTQIO(IOWVB,5,2,,,PRL) RETURN END