Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
PitBull
Anmeldungsdatum: 28.08.2006 Beiträge: 2
|
Verfasst am: 28.08.2006, 21:20 Titel: Nibbles mit zwei Geschwindigkeiten! |
|
|
Moin!
Wie der Titel des Themas schon sagt: ich möchte in Nibbles die Möglichkeit einbauen, das zwei Spieler jeweils eine andere Geschwindigkeit haben.
Die Idee kam, als mein Bruder mit seiner Freundin spielte, und sie das nur seeehr langsam kann Er hingegen spielt es schneller. Und da wollte ich euch fragen, wie ich dies realisieren kann. Ich danke schon im vorraus für Antworten  |
|
Nach oben |
|
 |
Elvis

Anmeldungsdatum: 01.06.2006 Beiträge: 818 Wohnort: Deutschland, BW
|
Verfasst am: 28.08.2006, 21:47 Titel: |
|
|
Das ist sehr einfach.
Du musst einfach Spieler1 und Spieler2 eine "Zahlenvariable" zuweisen.
Diese wird bei jedem Durchgang der DO...LOOP-Schleife (oder was immer du auch verwendest) im Spielmodus um eins erhöht.
Immer wenn ein bestimmter maximalwert erreicht ist (bei beiden unterschiedlich) wird (angenommen es ist ein Rennspiel, ich kenne es nicht ), das Auto (wenn eine Taste gedrückt wurde) eine Einheit nach vorne bewegt. Klar soweit?
Wenn nicht:
Code: |
DO
...
ZeitSpieler1 = ZeitSpieler1 + 1
IF ZeitSpieler1 = 20000 THEN
IF taste$ = "gedrückt" THEN
'Rennauto eine Einheit nach vorn
END IF
ZeitSpieler1 = 0
END IF
ZeitSpieler2 = ZeitSpieler2 + 1
IF ZeitSpieler2 = 40000 THEN
IF taste$ = "gedrückt" THEN
'Rennauto eine Einheit nach vorn
END IF
ZeitSpieler1 = 0
...
LOOP
|
Spieler1 ist die Freundin deines Bruders, und Spieler2 ist er selber.
Allerdings kann die Zeit, die der Computer zum hochzählen auf 20000/40000 benötigt, von PC zu PC unterschiedlich (CPU).
Dieses Problem kannst aber auch lösen, indem du den CPU-Speed ermittelst und den Wert entsprechend anpasst.
Wie das geht, steht glaube ich in der MonFaq. Link
Grüße, Elvis _________________ Geforce 7300GT (256MB GDDR3, Gainward) -- 2x 512MB (DDR2 800, MDT) -- AMD Athlon64 X2 EE 3800+ -- Asrock ALiveNF5-eSATA2+ |
|
Nach oben |
|
 |
SpionAtom
Anmeldungsdatum: 10.01.2005 Beiträge: 395
|
Verfasst am: 28.08.2006, 23:27 Titel: |
|
|
Naja bei Nibbles muss man schon etwas mehr rumtricksen. Die eigentliche Geschwindigkeit wird ja so erreicht, dass das Spiel nach jedem Schleifendurchlauf (also nach jedem Bewegungsschritt) eine Pause einlegt. Die Pause gilt aber für das gesamte Programm, also auch für beide Schlangen..
Trotzdem kann man den Lösungsweg von Elvis irgendwo einbauen
EDIT: In der SUB PlayNibbles gibts eine Schleife, mit dem Kommentar Move Snake, ich denke da irgendwo musst du den Stopper einbauen
@Elvis: Kein Nibbles kennen Schäm dich  _________________ Inzwischen gehöre ich auch zu den BlitzBasicern. Also verzeiht mir, wenn mir mal ein LOCATE 100, 100 oder dergleichen rausrutscht. |
|
Nach oben |
|
 |
Elvis

Anmeldungsdatum: 01.06.2006 Beiträge: 818 Wohnort: Deutschland, BW
|
Verfasst am: 29.08.2006, 10:40 Titel: |
|
|
SpionAtom hat Folgendes geschrieben: |
@Elvis: Kein Nibbles kennen Schäm dich  |
Ich kenns nur unter 'nem anderen Namen
Grüße, Elvis _________________ Geforce 7300GT (256MB GDDR3, Gainward) -- 2x 512MB (DDR2 800, MDT) -- AMD Athlon64 X2 EE 3800+ -- Asrock ALiveNF5-eSATA2+ |
|
Nach oben |
|
 |
PitBull
Anmeldungsdatum: 28.08.2006 Beiträge: 2
|
Verfasst am: 29.08.2006, 11:55 Titel: |
|
|
Erst einmal Danke für die Antworten, nur leider bin ich noch nicht daraus schlau geworden Ich bin noch nicht wirklich gut in QBasic. Und dann habe ich auch noch das Problem, dass das alte Notebook nicht mehr hochfährt Zum Glück funktioniert noch das andere. Ich werde erst einmal wieder ein paar Tutorials machen
mfg PitBull |
|
Nach oben |
|
 |
|