 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Bärenmaster

Anmeldungsdatum: 24.03.2005 Beiträge: 11
|
Verfasst am: 06.04.2005, 18:11 Titel: PingPong |
|
|
Moin Moin,
ich wollte mal in QBasic einen kleinen PingPong Klon basteln, nachdem mir nichts besseres einfiel
Ist ja auch eigentlich nicht sonderlich schwer (bis auf den Ball und die Berechnung des Flugwinkels ), eigentlich nur 2 Rechtecke, deren Y-Variablen sich bei Tastendruck verändern und ein Ball.
Soweit so gut, ich hab mich dann auch gleich an die Arbeit gemacht, und häng schon gleich am Anfang fest :
Ich habe den Schläger des Spielers mittels LINE gezeichnet und das ganze in eine WHILE Schleife gepackt, der Schläger wird auch nach unten immer größer - so wie es sein sollte - , doch nach oben wird er nicht kleiner, sondern größer.
Ich wollte eigentlich bezwecken, dass der Schläger oben kleiner und unten größer wird, eine Bewegung also simuliert wird.
Code: |
CLS
SCREEN 12
'-------------------------------------------------
'Ausgangsvariablen definieren
'.................................................
xeins = 10
yeins = 100
xzwei = 50
yzwei = 300
i = 1
'-------------------------------------------------
LINE (xeins, yeins)-(xzwei, yzwei), , BF
'Schlaeger wurde in Ausgangstellung gebracht, nun wird auf Eingabe gewartet
SLEEP
'-------------------------------------------------
'Wenn Cursorrunter:
'-------------------------------------------------
WHILE INKEY$ = CHR$(0) + CHR$(80)
CLS
i = i + 1 'Laufvariable um eins erhoehen
yzweiplusi = yzwei + i 'Y-Var von P2 immer um eins erhoehen
yeinsminusi = yeins - i 'Y-Var von P1 immer um eins veringern
LINE (xeins, yeinsminusi)-(xzwei, yzweiplusi), , BF 'Rechteck zeichnen
SLEEP
WEND
|
Was habe ich falsch gemacht? |
|
Nach oben |
|
 |
Paul aka ICC, HV-Freak
Anmeldungsdatum: 11.09.2004 Beiträge: 588 Wohnort: Uelzen
|
Verfasst am: 06.04.2005, 18:24 Titel: |
|
|
Moin,
ich würds so machen mit den Schlägern
Code ist nicht getestet, sollte aber laufen..:
Code: |
SCREEN 12
CLS
LinksY = 10
RechtsY = 400
DO
k$ = INKEY$
SELECT CASE k$
CASE "w", "W" 'linken Schläger hoch
LinksY = LinksY - 10
CASE "s", "S" 'linken Schläger hoch
LinksY = LinksY + 10
CASE CHR$(0) + "H" 'rechten Schläger hoch
RechtsY = RechtsY - 10
CASE CHR$(0) + "P" 'rechten Schläger runter
RechtsY = RechtsY + 10
END SELECT
LINE(0, LinksY)-(10, LinksY + 20), 15, BF
LINE(639 - 20, RechtsY)-(639, RechtsY + 20), 15, BF
LOOP
|
Die "Schläger" sind jeweils zwei 10x20 Balken
Linker Schläger wird mit "W" und "S" bewegt, der Rechte mit den Pfeiltasten
Du musst jetzt nur noch einbauen, dass die alten Balken gelöscht werden, wenn sich ein Schläger bewegt Da bin ich jetz zu faul zu _________________
 |
|
Nach oben |
|
 |
Bärenmaster

Anmeldungsdatum: 24.03.2005 Beiträge: 11
|
Verfasst am: 06.04.2005, 19:18 Titel: |
|
|
Vielen Dank für die Hilfe!
Hat mir schon geholfen, funktioniert wunderbar!
 |
|
Nach oben |
|
 |
dreael Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 2529 Wohnort: Hofen SH (Schweiz)
|
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|