home *** CD-ROM | disk | FTP | other *** search
- ' Raycast 3D Level Builder v2.0
- ' Created by Exodus
- ' By LogicMouse.
- ' ^ Name of Company
-
- DECLARE SUB Cursor (Col%)
- COMMON SHARED X%, Y%
- SCREEN 7, 0, 0, 0
- ON ERROR GOTO 5
- GOTO g
- 5 CLS
- PRINT "Bad File Name."
- SLEEP 1
- END
- g:
- LINE (0, 0)-(319, 199), 1, B
- LOCATE 2, 9
- COLOR 15
- PRINT "Raycast 3D Level Builder"
- LINE (0, 22)-(319, 22), 1
-
- FOR X% = 10 TO 120 STEP 10
- FOR Y% = 50 TO 160 STEP 10
- LINE (X%, Y%)-(X% + 10, Y% + 10), 1, B
- NEXT
- NEXT
-
- LINE (189, 50)-(309, 170), 1, B
- PAINT (190, 51), 15, 1
-
- X% = 1
- Y% = 1
- c% = 9
-
- Main:
- COLOR 15
- LOCATE 5, 2
- PRINT STR$(X%) + "," + STR$(Y%) + " "
- Cursor 12
- LOCATE 23, 3
- COLOR c%
- PRINT "Color - Press C to change."
- LINE (200, 75)-(200, 155), 0
- LINE -(280, 160), 0
- LINE -(280, 80), 0
- LINE -(200, 75), 0
- LINE (200, 75)-(220, 60), 0
- LINE (280, 80)-(300, 65), 0
- LINE (280, 160)-(300, 145), 0
- LINE (220, 60)-(300, 65), 0
- LINE -(300, 145), 0
- PAINT (205, 80), c%, 0
- PAINT (210, 70), c%, 0
- PAINT (295, 90), c%, 0
- DO
- A$ = INKEY$
- A$ = UCASE$(A$)
- IF A$ = CHR$(27) THEN
- CLS
- SYSTEM
- END IF
- IF A$ = CHR$(0) + CHR$(77) AND X% < 12 THEN
- Cursor 1
- X% = X% + 1
- GOTO Main
- END IF
- IF A$ = CHR$(0) + CHR$(75) AND X% > 1 THEN
- Cursor 1
- X% = X% - 1
- GOTO Main
- END IF
- IF A$ = CHR$(0) + CHR$(80) AND Y% < 12 THEN
- Cursor 1
- Y% = Y% + 1
- GOTO Main
- END IF
- IF A$ = CHR$(0) + CHR$(72) AND Y% > 1 THEN
- Cursor 1
- Y% = Y% - 1
- GOTO Main
- END IF
- IF A$ = CHR$(32) THEN
- LINE (X% * 10 + 1, 40 + (Y% * 10) + 1)-(10 + (X% * 10) - 1, 50 + (Y% * 10) - 1), c%, BF
- END IF
- IF A$ = CHR$(13) THEN
- LINE (X% * 10 + 1, 40 + (Y% * 10) + 1)-(10 + (X% * 10) - 1, 50 + (Y% * 10) - 1), 0, BF
- END IF
- IF A$ = "C" THEN
- PickColor:
- LOCATE 23, 3
- PRINT " "
- LOCATE 23, 3
- INPUT "New Color: (0 to erase a wall)", c%
- IF c% < 0 OR c% > 15 THEN GOTO PickColor
- LOCATE 23, 3
- PRINT " "
- GOTO Main
- END IF
- IF A$ = "S" THEN
- LOCATE 5, 10
- LINE INPUT "Save As (No ext.): ", save$
- LOCATE 5, 10
- PRINT STRING$(28, 32);
- OPEN save$ + ".lev" FOR OUTPUT AS #1
- FOR SaveX% = 10 TO 120 STEP 10
- FOR SaveY% = 50 TO 160 STEP 10
- PRINT #1, POINT(SaveX% + 1, SaveY% + 1);
- NEXT
- PRINT #1,
- NEXT
- GOTO Main
- END IF
- LOOP
-
- SUB Cursor (Col%)
- LINE (X% * 10, 40 + (Y% * 10))-(10 + (X% * 10), 50 + (Y% * 10)), Col%, B
- END SUB
-
-