| 
				
					|  | Das deutsche QBasic- und FreeBASIC-Forum Fr euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
 |  
 
	
		| Vorheriges Thema anzeigen :: Nchstes Thema anzeigen |  
		| Autor | Nachricht |  
		| programmer404 
 
 
 Anmeldungsdatum: 07.09.2021
 Beitrge: 13
 Wohnort: Herford
 
 | 
			
				|  Verfasst am: 09.09.2021, 12:19    Titel: Ballonspiel |   |  
				| 
 |  
				| DEF SEG = (&HB800) CLS
 PRINT "Loading"
 SLEEP 2
 CLS
 COLOR 3
 PRINT " Loading"
 SLEEP 1.1
 LOCATE 1, 1: COLOR 15: PRINT "  Please wait"
 SLEEP 1
 
 FOR s = 15 TO 24: e = 11 * SIN(e / 111): POKE s * 2 - 1, 15
 POKE s * 2, 46
 NEXT s
 SLEEP 2
 REM Fortschrittsanzeige
 COLOR 8
 FOR s = 10 TO 10000: o = o / 2 + 44 * SIN(s / s) + s: NEXT s
 CLS
 FOR x = 15 TO 60
 LOCATE 23, x
 PRINT CHR$(176); INT(100 * (x - 15) / (80 - 15)); "%"
 SOUND 22222, 18.2 * 1.2 / 8
 NEXT
 
 FOR r = 1 TO 20
 LOCATE 23 - r, x - 1
 PRINT CHR$(176); INT(100 * (r + x - 16) / (80 - 15)); "%"
 SOUND 22222, 18.2 * 1.2 / 8
 NEXT r
 
 CLS : REM Bildschirm Spielname
 FOR x = 1 TO 14
 LOCATE x + 3, x: COLOR INT(x / 2) + 2: PRINT ""
 NEXT x
 
 FOR x = 14 TO 1 STEP -1
 LOCATE x + 3, 15 - x: COLOR INT(x / 2) + 2: PRINT ""
 NEXT x
 
 FOR x = 1 TO 14: REM Buchstabe I
 LOCATE x + 3, 25: COLOR INT(x / 2) + 2: PRINT ""
 NEXT x
 
 FOR x = 1 TO 1: REM unterer Strich vom L
 LOCATE x + 16, 28: COLOR INT(x / 2) + 2: PRINT ""
 NEXT x
 
 FOR x = 1 TO 14: REM Buchstabe I
 LOCATE 18 - x, 37: COLOR INT(x / 2) + 2: PRINT ""
 NEXT x
 SLEEP 5
 COLOR 7
 SCREEN 13
 LOCATE 2, 2: PRINT "BEDIENUNG mit der Tastatur"
 SLEEP 4
 LOCATE 2, 2: PRINT "                        "
 LOCATE 24, 1: PRINT "Beenden mit ESC"
 y = 80
 FOR d = 0 TO 200
 FOR x = 0 TO 319 STEP .2: IF INKEY$ = CHR$(27) THEN 100
 
 IF y < 38 THEN SOUND 220, 1: y = y + 5
 IF INP(&H60) < 57 THEN t = INP(&H60)
 y = y + t / 50 - .3
 IF y > 120 THEN SOUND 37, .1: IF INKEY$ = CHR$(27) THEN GOTO 100
 CIRCLE (x, y), 14, 0: REM altes Frame lschen
 CIRCLE (x, y), 15, 0: REM altes Frame lschen
 CIRCLE (x, y), 16, 0: REM altes Frame lschen
 IF INKEY$ = CHR$(27) THEN 100
 CIRCLE (x - 10, y - 1), 17, 0: REM altes Frame lschen
 CIRCLE (x - 20, y - 2), 18, 0: REM altes Frame lschen
 CIRCLE (x + 10, y + 1), 19, 0: REM altes Frame lschen
 CIRCLE (x + 2, y + 2), 20, 0: REM altes Frame lschen
 CIRCLE (x, y), 13, 3: REM Kreis zeichnen
 IF INKEY$ = CHR$(27) THEN 100
 NEXT x, d
 
 100 CLS : COLOR 5: LOCATE 6, 17: PRINT "ENDE": SLEEP 5: COLOR 0:
 WHILE INKEY$ <> "": WEND: REM Tastaturpuffer leeren sonst
 REM                           Tastatureingaben nach Programmende
 REM                           auf der Eingabeaufforderung sichtbar
 |  |  
		| Nach oben |  |  
		|  |  
		| programmer404 
 
 
 Anmeldungsdatum: 07.09.2021
 Beitrge: 13
 Wohnort: Herford
 
 |  |  
		| Nach oben |  |  
		|  |  
		| SpionAtom 
 
 
 Anmeldungsdatum: 10.01.2005
 Beitrge: 395
 
 
 | 
			
				|  Verfasst am: 10.09.2021, 07:54    Titel: |   |  
				| 
 |  
				| Fake Ladezeiten  haben wir nicht alle so angefangen  _________________
 Inzwischen gehre ich auch zu den BlitzBasicern. Also verzeiht mir, wenn mir mal ein LOCATE 100, 100 oder dergleichen rausrutscht.
 |  |  
		| Nach oben |  |  
		|  |  
		| programmer404 
 
 
 Anmeldungsdatum: 07.09.2021
 Beitrge: 13
 Wohnort: Herford
 
 |  |  
		| Nach oben |  |  
		|  |  
		| programmer404 
 
 
 Anmeldungsdatum: 07.09.2021
 Beitrge: 13
 Wohnort: Herford
 
 | 
			
				|  Verfasst am: 12.09.2021, 16:42    Titel: |   |  
				| 
 |  
				| RANDOMIZE TIMER DEF SEG = (&HB800)
 
 CONST PI = 3.14
 a = SIN(90)
 PRINT a
 CLS
 SCREEN 1             'Mittlere Auflsung, blauer Hintergrund.
 WINDOW (-3, -2)-(3, 2)           'Wandle Bildschirm in kartesische
 'Koordinaten um.
 SLEEP 1
 FOR n = 237 TO 224 STEP .033
 
 PSET (1, 0)                   'Setzt Startpunkt.
 
 FOR Winkel = 0 TO 12 * PI STEP .76
 IF INKEY$ = CHR$(27) THEN 100
 OUT &H43, &HB6
 OUT &H42, &HFF
 OUT &H42, 64
 OUT &H43, &H90
 r = INP(&H61) OR 3
 OUT &H61, 32 * SIN((r + 1) * (1 + x)) + y
 OUT &H42, 1
 r = 1 + SIN(n * Winkel)       'Polargleichung fr "Blte".
 x = r * COS(Winkel)           'Wandle Polarkoordinaten in kartesische
 y = r * SIN(Winkel)           'Koordinaten um.
 COLOR 2, x
 LINE -(x, y)                  'Zeichne eine Gerade vom alten zum neuen
 'Punkt.
 IF n > 230 < 234 THEN LOCATE 5 + n / 27, 14: COLOR 8: PRINT "Blte":
 NEXT Winkel, n
 
 SCREEN 8: PRINT "                 changing screen-mode"
 
 CLS
 PRINT "Loading": OPEN "creativa.exe" FOR OUTPUT AS #1
 COLOR 8: PRINT "Please wait"
 REM Forchrittsanzeige
 COLOR 9
 SCREEN 0: PRINT "fucke": PRINT "gucke": PRINT "schrott"
 CLS
 RANDOMIZE TIMER
 
 
 
 COLOR 11
 SCREEN 13
 0 CLS
 COLOR 5
 PRINT "               (S)tart"
 PRINT ""
 COLOR 3
 PRINT "               (H)ilfe"
 PRINT ""
 COLOR 1
 PRINT "               (C)redits"
 COLOR 9
 PRINT "               (E)nde"
 
 1  IF INP(&H60) = 18 THEN END
 IF INP(&H60) = 35 THEN GOTO 3
 IF INP(&H60) = 31 THEN GOTO 10
 IF INP(&H60) = 46 THEN GOTO 2
 GOTO 1
 2 IF INP(&H60) = 46 THEN CLS : PRINT "programmed by: Sebastian Grashoff,      Mozartstrae 55, 32049 Herford": IF INP(&H60) = 18 THEN GOTO 0: IF INP(&H60) = 31 THEN GOTO 10: GOTO 2
 3 IF INP(&H60) = 35 THEN CLS : LOCATE 1, 1: COLOR 15: PRINT "Steuerung mit den Tasten T und G": LOCATE 2, 1: PRINT "Kommen Sie den Planken nicht zu nah!": LOCATE 3, 1: PRINT "Sie haben gewonnen, wenn Sie 850 Punkte": LOCATE 4, 1: PRINT  _
 "erreicht haben": IF INP(&H60) = 18 THEN GOTO 0: GOTO 3
 
 10 CLS
 LOCATE 2, 1: COLOR 15: PRINT " "
 LOCATE 23, 1: COLOR 15: PRINT " "
 v = .314
 y = 100: REM vertikale Startposition des Raumschiffs
 t = 10.1: REM Startrichtung
 sp = 2
 FOR d = 0 TO 200
 COLOR INT(d / 6)
 FOR x = 0 TO 360 STEP sp * (2 * SIN(d / 6) + .1) + .5: IF INKEY$ = CHR$(27) THEN 100
 IF p > 850 THEN GOTO 1000
 IF p < -20 THEN CLS : LOCATE 9, 20: COLOR 12: PRINT "          Loser!                                Loser!": SOUND 1440, 18.2 * 1.5: PRINT "Shame on you!": PRINT "Fuckhead": END
 LOCATE 1, 1: COLOR 6: PRINT p: LOCATE 1, 32: COLOR 5: PRINT "Level"; 1 + INT(d / 6)
 
 
 p = INT(d * 15 - a): REM Punktestand ermitteln
 IF y < 24 + d / 6 THEN GOSUB 200: COLOR 0 + d
 IF INP(&H60) = 20 THEN t = -1 'Tastenbelegung
 IF INP(&H60) = 34 THEN t = 1.8
 IF INP(&H60) = 40 THEN sp = sp + 1
 IF INP(&H60) = 41 THEN sp = sp - 1
 y = y + t / 25 - .5
 IF y > 155 THEN GOSUB 201: COLOR 0 + d
 IF INKEY$ = CHR$(27) THEN GOTO 100
 CIRCLE (xx, yy), 13, 0, , , v - INT(d / 6): REM alten Kreis (Frame) lschen
 CIRCLE (xx, yy), 12, 0, , , v - INT(d / 6)
 CIRCLE (xx, yy), 11, 0, , , v - INT(d / 6)
 CIRCLE (xx, yy), 10, 0, , , v - INT(d / 6)
 CIRCLE (xx, yy), 9, 0, , , v - INT(d / 6)
 CIRCLE (xx, yy), 8, 0, , , v + INT(d / 6)
 CIRCLE (xx, yy), 7, 0, , , v + INT(d / 6)
 IF d > 6 THEN ps = 1
 IF d > 11 THEN ps = 0
 IF d > 17 THEN ps = 2
 IF d > 23 THEN ps = 0
 IF d > 29 THEN ps = 3
 IF ps = 1 THEN SOUND 555 + 2 * x - y, 1
 IF ps = 2 THEN SOUND 1555 - 2 * x - y, .6
 IF ps = 3 THEN SOUND 440, 1
 CIRCLE (x, y), 13, INT(d / 6) + v * SIN(x + 1) + 80, , , v + INT(d / 6): REM Kreis zeichnen
 CIRCLE (x, y), 12, INT(d / 6) + v * SIN(x + 2) + 81, , , v + INT(d / 6)
 CIRCLE (x, y), 11, INT(d / 6) + v * SIN(x + 3) + 82, , , v + INT(d / 6)
 CIRCLE (x, y), 10, INT(d / 6) + v * SIN(x + 4) + 83, , , v + INT(d / 6)
 CIRCLE (x, y), 9, INT(d / 6) + 1 * SIN(x + 5) + 3, , , v + INT(d / 6)
 CIRCLE (x, y), 8, INT(d / 6) + 2 * SIN(x + 6) + 2, , , v + INT(d / 6)
 CIRCLE (x, y), 7, INT(d / 6) + 3 * SIN(x + 7) + 4, , , v + INT(d / 6)
 IF INKEY$ = CHR$(27) THEN 100
 xx = x: yy = y
 NEXT x, d
 
 100 SCREEN 13: CLS : k = .12
 LOCATE 6, 17: PRINT " ENDE"
 FOR h = 0 TO 20: SOUND 37 + h, 3: LOCATE 6, 17
 OUT &H43, &HB6
 OUT &H42, &HFF
 OUT &H42, 9
 OUT &H43, &H90
 OUT &H61, h
 OUT &H42, k
 
 
 
 COLOR 8 + h: PRINT " ENDE": k = 21.12 * (SIN(k)) + k: NEXT h: COLOR 8
 
 WHILE INKEY$ <> "": WEND: REM Tastaturpuffer leeren sonst
 REM                           Tastatureingaben nach Programmende
 REM                           auf der Eingabeaufforderung sichtbar
 101 END
 
 200 y = y + 25: REM Bildschirm soll bei Kollision mit Planke aufblinken
 a = a + 1
 
 FOR bc = 10 TO 920
 OUT &H3C8, 0
 OUT &H3C9, 255
 OUT &H3C9, 255
 OUT &H3C9, 255
 
 
 OUT &H3C8, 0
 OUT &H3C9, 0
 OUT &H3C9, 0
 OUT &H3C9, 0
 
 NEXT bc
 RETURN
 
 201 y = y - 25
 a = a + 1
 
 FOR bc = 10 TO 920
 OUT &H3C8, 0
 OUT &H3C9, 255
 OUT &H3C9, 255
 OUT &H3C9, 255
 
 
 OUT &H3C8, 0
 OUT &H3C9, 0
 OUT &H3C9, 0
 OUT &H3C9, 0
 
 NEXT bc
 RETURN
 
 
 1000 LOCATE 11, 17: COLOR 12: PRINT "WINNER": FOR r = 1 TO 20: POKE 12 * 80 + r, r: SOUND 1000 + RND * 152, 3: NEXT r: END
 1001 RETURN
 10000 RETURN
 |  |  
		| Nach oben |  |  
		|  |  
		| programmer404 
 
 
 Anmeldungsdatum: 07.09.2021
 Beitrge: 13
 Wohnort: Herford
 
 | 
			
				|  Verfasst am: 12.09.2021, 16:42    Titel: noch eine Version |   |  
				| 
 |  
				| RANDOMIZE TIMER DEF SEG = (&HB800)
 
 CONST PI = 3.14
 a = SIN(90)
 PRINT a
 CLS
 SCREEN 1             'Mittlere Auflsung, blauer Hintergrund.
 WINDOW (-3, -2)-(3, 2)           'Wandle Bildschirm in kartesische
 'Koordinaten um.
 SLEEP 1
 FOR n = 237 TO 224 STEP .033
 
 PSET (1, 0)                   'Setzt Startpunkt.
 
 FOR Winkel = 0 TO 12 * PI STEP .76
 IF INKEY$ = CHR$(27) THEN 100
 OUT &H43, &HB6
 OUT &H42, &HFF
 OUT &H42, 64
 OUT &H43, &H90
 r = INP(&H61) OR 3
 OUT &H61, 32 * SIN((r + 1) * (1 + x)) + y
 OUT &H42, 1
 r = 1 + SIN(n * Winkel)       'Polargleichung fr "Blte".
 x = r * COS(Winkel)           'Wandle Polarkoordinaten in kartesische
 y = r * SIN(Winkel)           'Koordinaten um.
 COLOR 2, x
 LINE -(x, y)                  'Zeichne eine Gerade vom alten zum neuen
 'Punkt.
 IF n > 230 < 234 THEN LOCATE 5 + n / 27, 14: COLOR 8: PRINT "Blte":
 NEXT Winkel, n
 
 SCREEN 8: PRINT "                 changing screen-mode"
 
 CLS
 PRINT "Loading": OPEN "creativa.exe" FOR OUTPUT AS #1
 COLOR 8: PRINT "Please wait"
 REM Forchrittsanzeige
 COLOR 9
 SCREEN 0: PRINT "fucke": PRINT "gucke": PRINT "schrott"
 CLS
 RANDOMIZE TIMER
 
 
 
 COLOR 11
 SCREEN 13
 0 CLS
 COLOR 5
 PRINT "               (S)tart"
 PRINT ""
 COLOR 3
 PRINT "               (H)ilfe"
 PRINT ""
 COLOR 1
 PRINT "               (C)redits"
 COLOR 9
 PRINT "               (E)nde"
 
 1  IF INP(&H60) = 18 THEN END
 IF INP(&H60) = 35 THEN GOTO 3
 IF INP(&H60) = 31 THEN GOTO 10
 IF INP(&H60) = 46 THEN GOTO 2
 GOTO 1
 2 IF INP(&H60) = 46 THEN CLS : PRINT "programmed by: Sebastian Grashoff,      Mozartstrae 55, 32049 Herford": IF INP(&H60) = 18 THEN GOTO 0: IF INP(&H60) = 31 THEN GOTO 10: GOTO 2
 3 IF INP(&H60) = 35 THEN CLS : LOCATE 1, 1: COLOR 15: PRINT "Steuerung mit den Tasten T und G": LOCATE 2, 1: PRINT "Kommen Sie den Planken nicht zu nah!": LOCATE 3, 1: PRINT "Sie haben gewonnen, wenn Sie 850 Punkte": LOCATE 4, 1: PRINT  _
 "erreicht haben": IF INP(&H60) = 18 THEN GOTO 0: GOTO 3
 
 10 CLS
 LOCATE 2, 1: COLOR 15: PRINT " "
 LOCATE 23, 1: COLOR 15: PRINT " "
 v = .314
 y = 100: REM vertikale Startposition des Raumschiffs
 t = 10.1: REM Startrichtung
 sp = 2
 FOR d = 0 TO 200
 COLOR INT(d / 6)
 FOR x = 0 TO 360 STEP sp * (2 * SIN(d / 6) + .1) + .5: IF INKEY$ = CHR$(27) THEN 100
 IF p > 850 THEN GOTO 1000
 IF p < -20 THEN CLS : LOCATE 9, 20: COLOR 12: PRINT "          Loser!                                Loser!": SOUND 1440, 18.2 * 1.5: PRINT "Shame on you!": PRINT "Fuckhead": END
 LOCATE 1, 1: COLOR 6: PRINT p: LOCATE 1, 32: COLOR 5: PRINT "Level"; 1 + INT(d / 6)
 
 
 p = INT(d * 15 - a): REM Punktestand ermitteln
 IF y < 24 + d / 6 THEN GOSUB 200: COLOR 0 + d
 IF INP(&H60) = 20 THEN t = -1 'Tastenbelegung
 IF INP(&H60) = 34 THEN t = 1.8
 IF INP(&H60) = 40 THEN sp = sp + 1
 IF INP(&H60) = 41 THEN sp = sp - 1
 y = y + t / 25 - .5
 IF y > 155 THEN GOSUB 201: COLOR 0 + d
 IF INKEY$ = CHR$(27) THEN GOTO 100
 CIRCLE (xx, yy), 13, 0, , , v - INT(d / 6): REM alten Kreis (Frame) lschen
 CIRCLE (xx, yy), 12, 0, , , v - INT(d / 6)
 CIRCLE (xx, yy), 11, 0, , , v - INT(d / 6)
 CIRCLE (xx, yy), 10, 0, , , v - INT(d / 6)
 CIRCLE (xx, yy), 9, 0, , , v - INT(d / 6)
 CIRCLE (xx, yy), 8, 0, , , v + INT(d / 6)
 CIRCLE (xx, yy), 7, 0, , , v + INT(d / 6)
 IF d > 6 THEN ps = 1
 IF d > 11 THEN ps = 0
 IF d > 17 THEN ps = 2
 IF d > 23 THEN ps = 0
 IF d > 29 THEN ps = 3
 IF ps = 1 THEN SOUND 555 + 2 * x - y, 1
 IF ps = 2 THEN SOUND 1555 - 2 * x - y, .6
 IF ps = 3 THEN SOUND 440, 1
 CIRCLE (x, y), 13, INT(d / 6) + v * SIN(x + 1) + 80, , , v + INT(d / 6): REM Kreis zeichnen
 CIRCLE (x, y), 12, INT(d / 6) + v * SIN(x + 2) + 81, , , v + INT(d / 6)
 CIRCLE (x, y), 11, INT(d / 6) + v * SIN(x + 3) + 82, , , v + INT(d / 6)
 CIRCLE (x, y), 10, INT(d / 6) + v * SIN(x + 4) + 83, , , v + INT(d / 6)
 CIRCLE (x, y), 9, INT(d / 6) + 1 * SIN(x + 5) + 3, , , v + INT(d / 6)
 CIRCLE (x, y), 8, INT(d / 6) + 2 * SIN(x + 6) + 2, , , v + INT(d / 6)
 CIRCLE (x, y), 7, INT(d / 6) + 3 * SIN(x + 7) + 4, , , v + INT(d / 6)
 IF INKEY$ = CHR$(27) THEN 100
 xx = x: yy = y
 NEXT x, d
 
 100 SCREEN 13: CLS : k = .12
 LOCATE 6, 17: PRINT " ENDE"
 FOR h = 0 TO 20: SOUND 37 + h, 3: LOCATE 6, 17
 OUT &H43, &HB6
 OUT &H42, &HFF
 OUT &H42, 9
 OUT &H43, &H90
 OUT &H61, h
 OUT &H42, k
 
 
 
 COLOR 8 + h: PRINT " ENDE": k = 21.12 * (SIN(k)) + k: NEXT h: COLOR 8
 
 WHILE INKEY$ <> "": WEND: REM Tastaturpuffer leeren sonst
 REM                           Tastatureingaben nach Programmende
 REM                           auf der Eingabeaufforderung sichtbar
 101 END
 
 200 y = y + 25: REM Bildschirm soll bei Kollision mit Planke aufblinken
 a = a + 1
 
 FOR bc = 10 TO 920
 OUT &H3C8, 0
 OUT &H3C9, 255
 OUT &H3C9, 255
 OUT &H3C9, 255
 
 
 OUT &H3C8, 0
 OUT &H3C9, 0
 OUT &H3C9, 0
 OUT &H3C9, 0
 
 NEXT bc
 RETURN
 
 201 y = y - 25
 a = a + 1
 
 FOR bc = 10 TO 920
 OUT &H3C8, 0
 OUT &H3C9, 255
 OUT &H3C9, 255
 OUT &H3C9, 255
 
 
 OUT &H3C8, 0
 OUT &H3C9, 0
 OUT &H3C9, 0
 OUT &H3C9, 0
 
 NEXT bc
 RETURN
 
 
 1000 LOCATE 11, 17: COLOR 12: PRINT "WINNER": FOR r = 1 TO 20: POKE 12 * 80 + r, r: SOUND 1000 + RND * 152, 3: NEXT r: END
 1001 RETURN
 10000 RETURN
 |  |  
		| Nach oben |  |  
		|  |  
		| programmer404 
 
 
 Anmeldungsdatum: 07.09.2021
 Beitrge: 13
 Wohnort: Herford
 
 | 
			
				|  Verfasst am: 17.09.2021, 04:53    Titel: Spaceball |   |  
				| 
 |  
				| zt = TIMER kb = 1: REM Kollisionsbehandlung
 RANDOMIZE TIMER
 DEF SEG = (&HB800)
 CLS
 SCREEN 13             'Mittlere Auflsung, blauer Hintergrund.
 
 CONST PI = 3.141593
 SCREEN 1: COLOR 13               'Mittlere Auflsung, blauer Hintergrund.
 WINDOW (-3, -2)-(3, 2)           'Wandle Bildschirm in kartesische
 'Koordinaten um.
 N = 5
 CLS
 PSET (1, 0)                      'Setzt Startpunkt.
 FOR Winkel = 0 TO 2 * PI STEP .02
 R = 1 + SIN(N * Winkel)       'Polargleichung fr "Blte".
 x = R * COS(Winkel)           'Wandle Polarkoordinaten in kartesische
 y = R * SIN(Winkel)           'Koordinaten um.
 LINE -(x, y)                  'Zeichne eine Gerade vom alten zum neuen
 'Punkt.
 NEXT
 
 FOR er = 1 TO 2900: fk = 89 + 88 * SIN(SIN(fk / (SIN(fk + 1)))):
 NEXT er
 
 
 SCREEN 0: PRINT "                 changing screen-mode..."
 
 CLS
 PRINT "Loading": OPEN "creativa.exe" FOR OUTPUT AS #1
 COLOR 8: PRINT "Please wait"
 REM Forchrittsanzeige
 SCREEN 13: PRINT "fucke": PRINT "spucke": PRINT "schrott"
 CLS
 RANDOMIZE TIMER
 COLOR 9
 PRINT "                                                                   "
 PRINT "                                   "
 PRINT "                                                    "
 PRINT "                          "
 PRINT "                                  "
 PRINT "                               "
 CLS
 OUT &H3C8, 0
 OUT &H3C9, 61
 OUT &H3C9, 117
 OUT &H3C9, 12
 
 PRINT "Spaceball"
 ae = 0: ea = 80
 be = 0: eb = 80
 FOR d = 150 TO 167
 FOR y = ae TO ea
 IF INKEY$ = CHR$(27) THEN 10
 FOR x = be TO eb
 IF INKEY$ = CHR$(27) THEN 10
 FOR g = 0 TO 11
 CIRCLE (4 * x + 3 * SIN(x) + 32, 4 * y + 40), g, POINT(x, y) * d
 NEXT g
 NEXT x, y, d: LOCATE 1, 1: PRINT "          "
 
 FOR er = 1 TO 12900: fk = 89 + 88 * SIN(SIN(fk / (SIN(fk + 1)))):
 IF INKEY$ = CHR$(27) THEN 100
 NEXT er
 
 c = 0
 COLOR 11
 
 CLS : SCREEN 13
 0 IF c > 30 THEN GOTO 10: c = c + 3
 fc = fc + 2: IF fc > 206 THEN fc = 100
 
 LOCATE 3
 PRINT ""
 PRINT "               (S)tart"
 PRINT ""
 PRINT "               (H)ilfe"
 PRINT ""
 PRINT "               (C)redits"
 PRINT ""
 PRINT "               (E)xit to OS"
 LOCATE 4, 16: COLOR fc + 10: PRINT "(S)"
 LOCATE 6, 16: COLOR fc + 20: PRINT "(H)"
 LOCATE 8, 16: COLOR fc + 30: PRINT "(C)"
 LOCATE 10, 16: COLOR fc + 40: PRINT "(E)"
 1
 IF INP(&H60) = 18 THEN END
 IF INP(&H60) = 35 THEN CLS : SHELL "type manual.txt": DO: LOOP UNTIL INKEY$ = CHR$(27): CLS
 IF INP(&H60) = 31 THEN GOTO 10
 IF INP(&H60) = 46 THEN CLS : SHELL "type credits.txt": DO: LOOP UNTIL INKEY$ = CHR$(27): CLS
 IF INKEY$ = CHR$(27) THEN GOTO 10
 GOTO 0
 
 10
 CLS
 LOCATE 2, 1: COLOR 15: PRINT " "
 LOCATE 23, 1: COLOR 15: PRINT " "
 LOCATE 24, 29: PRINT "made on Covid"
 v = 1.728: REM Form des Raumschiffs
 y = 100: REM vertikale Startposition des Raumschiffs
 t = 10.5: REM Startrichtung
 COLOR 0
 FOR d = 0 TO 200: CLS
 FOR x = 0 TO 360 STEP s + 1: IF INKEY$ = CHR$(27) THEN GOTO 0
 xx = x - 1: yy = y
 IF INP(&H60) < 40 THEN t = INP(&H60)
 s = INP(&H60) / 50
 y = y + t / 25 - .5
 
 v = .36
 gh = 4
 
 IF P > 849 THEN GOTO 1000
 IF P < -19 THEN CLS : LOCATE 9, 20: COLOR 12: PRINT "          Loser!                                Loser!": SOUND 1440, 18.2 * 1.5: PRINT "Shame on you!": PRINT "Fuckhead": END
 LOCATE 1, 1: COLOR 6: PRINT P
 IF INT(d / 6) < 10 THEN LOCATE 1, 33: COLOR 9: PRINT "Level"; 1 + INT(d / 6)
 IF INT(d / 6) > 9 THEN LOCATE 1, 32: COLOR 10: PRINT "Level"; 1 + INT(d / 6)
 IF INT(d / 6) > 99 THEN LOCATE 1, 31: COLOR 11: PRINT "Level"; 1 + INT(d / 6)
 P = INT(d * 15 - a): REM Punktestand ermitteln
 
 cf = x: IF cf > 255 THEN cf = 40: nf = 40
 n2 = y: IF cf > 255 THEN cf = 50: nf = 50
 IF ps = 3 THEN SWAP cf, n2
 IF y < 18 THEN GOSUB 200
 IF y > 155 THEN GOSUB 201
 
 LOCATE 2, 1: COLOR cf: PRINT " "
 LOCATE 23, 1: COLOR n2: PRINT " "
 
 
 IF INKEY$ = CHR$(27) THEN GOTO 0
 REM alten Kreis (Frame) lschen
 
 
 CIRCLE (xx, yy), 13, 0, , , v - INT(d / 6)
 CIRCLE (x, y), 13, 9, , , v - INT(d / 6)
 CIRCLE (xx, yy), 12, 0, , , v - INT(d / 6)
 CIRCLE (x, y), 12, 12, , , v - INT(d / 6)
 CIRCLE (xx, yy), 11, 0, , , v - INT(d / 6)
 CIRCLE (x, y), 11, 11, , , v - INT(d / 6)
 
 IF d > 6 THEN ps = 1: REM Verschiedene Soundthemes
 IF d > 8 THEN ps = 0: REM in Abhngigkeit vom
 IF d > 14 THEN ps = 2: REM Level
 IF d > 16 THEN ps = 0
 IF d > 18 THEN ps = 3
 IF d > 20 THEN ps = 4
 IF d > 21 THEN ps = 5
 IF ps = 1 THEN SOUND 37 + y, .1
 IF ps = 2 THEN SOUND 18055 - 2 * x, .6
 
 IF ps = 4 THEN SOUND 65 * SIN(x / 5) + 273, x / 1000
 IF ps = 5 THEN SOUND 15625 + x - y, .09
 IF INKEY$ = CHR$(27) THEN 0
 NEXT x, d
 100 SCREEN 0
 
 FOR h = 0 TO 20: LOCATE 6, 17
 OUT &H43, &HB6
 OUT &H42, &HFF + h
 OUT &H42, 90
 OUT &H43, &H90
 OUT &H61, h
 OUT &H42, k
 COLOR h + k: PRINT " ENDE": k = 21.12 * (SIN(k)) + k: NEXT h: COLOR 7
 
 WHILE INKEY$ <> "": WEND: REM Tastaturpuffer leeren sonst
 REM                           Tastatureingaben nach Programmende
 REM                           auf der Eingabeaufforderung sichtbar
 101 WHILE INKEY$ <> "": WEND: REM Tastaturpuffer leeren sonst
 END
 
 200
 y = y + 25: REM Bildschirm soll bei Kollision mit Planke aufblinken
 x = x + 1
 a = a + 1
 
 LOCATE 2, 1: COLOR 0: PRINT " "
 SOUND 2000, 2.5: SOUND 2500, 1
 IF kb = 0 THEN RETURN
 FOR bc = 10 TO 920
 OUT &H3C8, 0
 OUT &H3C9, 64
 OUT &H3C9, 128
 OUT &H3C9, 255
 OUT &H3C8, 0
 OUT &H3C9, 0
 OUT &H3C9, 0
 OUT &H3C9, 0
 
 NEXT bc
 RETURN
 
 201
 y = y - 25
 a = a + 1
 x = x + 1
 
 LOCATE 23, 1: COLOR 0: PRINT " "
 SOUND 2000, 2.5: SOUND 2500, 1
 IF kb = 0 THEN RETURN
 FOR bc = 10 TO 920
 OUT &H3C8, 0
 OUT &H3C9, 64
 OUT &H3C9, 128
 OUT &H3C9, 255
 OUT &H3C8, 0
 OUT &H3C9, 0
 OUT &H3C9, 0
 OUT &H3C9, 0
 
 NEXT bc
 RETURN
 
 
 1000 LOCATE 11, 17: COLOR 12: PRINT "WINNER": FOR R = 1 TO 20: POKE 12 * 80 + R, R: SOUND 1000 + RND * 152, 3: NEXT R: WHILE INKEY$ <> "": WEND:  END
 1001 RETURN
 10000 RETURN
 |  |  
		| Nach oben |  |  
		|  |  
		|  |  
  
	| 
 
 | Du kannst keine Beitrge in dieses Forum schreiben. Du kannst auf Beitrge in diesem Forum nicht antworten.
 Du kannst deine Beitrge in diesem Forum nicht bearbeiten.
 Du kannst deine Beitrge in diesem Forum nicht lschen.
 Du kannst an Umfragen in diesem Forum nicht mitmachen.
 
 |  |