home *** CD-ROM | disk | FTP | other *** search
/ Gold Fish 3 / goldfish_volume_3.bin / files / fish / disks / d1088.lha / Programs / DungeonMap / Rexx / DungeonDimensions.rexx next >
OS/2 REXX Batch file  |  1994-11-30  |  1KB  |  57 lines

  1. /*
  2. ** This is a sample of the use of some of the DungeonMap Rexx commands.
  3. **
  4. ** Find and display the high and low range of a Dungeon map.
  5. */
  6.  
  7. OPTIONS RESULTS
  8. OPTIONS FAILAT 10
  9.  
  10. /* Find the first DungeonMap Rexx port name, and address commands to this name */
  11.  
  12. Ports = SHOW('P')
  13. Pos = INDEX(Ports,"DungeonMap")
  14. IF Pos = 0 THEN DO
  15.    SAY "DungeonMap has not been started."
  16.    EXIT 10
  17.    END
  18. DungeonMap = WORD(SUBSTR(Ports,Pos),1)
  19. ADDRESS VALUE DungeonMap
  20.  
  21. /* Get the maximum dimensions of the Dungeon */
  22.  
  23. INFO
  24. PARSE VAR RESULT SavedInterlace SavedAutoCentre SavedPrintSize SavedMapFormat SavedMaxX SavedMaxY SavedChangeTo SavedItemEvent
  25.  
  26. /* Check for correct map format */
  27.  
  28. IF SavedMapFormat != 'Dungeon' THEN DO
  29.    SAY "This can only be used on a Dungeon type map."
  30.    EXIT 10
  31.    END
  32.  
  33. /* Determine the dimensions */
  34.  
  35. MaxX = 0
  36. MaxY = 0
  37. MinX = SavedMaxX
  38. MinY = SavedMaxY
  39.  
  40. DO X = 1 TO SavedMaxX
  41.    DO Y = 1 TO SavedMaxY
  42.    
  43.       WHATIS X Y 'Floor'
  44.       IF RESULT = 'Floor' THEN DO
  45.          MinX = MIN( MinX, X )
  46.          MinY = MIN( MinY, Y )
  47.          MaxX = MAX( MaxX, X )
  48.          MaxY = MAX( MaxY, Y )
  49.          END
  50.       END
  51.    END
  52.  
  53. /* Display the results */
  54.  
  55. SAY 'This dungeon has X range from 'MinX' to 'MaxX', and Y range from 'MinY' to 'MaxY
  56.  
  57.