einbauen von minispielen
-
- Verpackungs-Wegwerfer
- Beiträge: 76
- Registriert: 09.04.2006, 17:51
- Kontaktdaten:
einbauen von minispielen
hallo, ich möchte in meinem spiel den arcade-klassiker pong einbauen (man findet irgendwann eine art gameboy und dann kann man zwischendurch pong spielen)
mein problem ist nicht das programmieren von pong, das krieg ich hin, mir geht es viel mehr um die darstellung, also wie man die "schläger" und den ball am besten darstellt (mit objekten oder mit Dynamic Sprites oder ganz anders)
Am Liebsten würde ich das Spiel auf einem GUI anzeigen lassen, aber ich weiß nicht wie das möglich wäre...
also meine frage ist einfach: Wie zeige ich am besten (bzw. flüssigsten) die beweglichen Objekte an?
wäre toll wenn ihr mir helfen könntet
mein problem ist nicht das programmieren von pong, das krieg ich hin, mir geht es viel mehr um die darstellung, also wie man die "schläger" und den ball am besten darstellt (mit objekten oder mit Dynamic Sprites oder ganz anders)
Am Liebsten würde ich das Spiel auf einem GUI anzeigen lassen, aber ich weiß nicht wie das möglich wäre...
also meine frage ist einfach: Wie zeige ich am besten (bzw. flüssigsten) die beweglichen Objekte an?
wäre toll wenn ihr mir helfen könntet
- KhrisMUC
- Adventure-Gott
- Beiträge: 4674
- Registriert: 14.03.2005, 00:55
- Wohnort: München
Re: einbauen von minispielen
Die Methode ist ziemlich egal; wenn der Rechner halbwegs aktuell ist, läuft es immer flüssig.
Wenn das Spiel auf einem GUI angezeigt werden soll, musst Du die Pong-Grafik in ein DynamicSprite packen und das als Hintergrund des GUIs festlegen (oder als Buttongrafik, falls es nicht GUI-füllend sein soll).
AGS 3.0: mittels DynamicSprite.GetDrawingSurface direkt "ins" DynamicSprite zeichnen.
2.72: den Bildschirm unterhalb des GUIs löschen, Spielfläche zeichnen, Ausschnitt ins DynamicSprite holen.
Du könntest auch in der Mitte des GUIs ein durchsichtiges Rechteck einbauen und die Spielfläche in den Raum zeichnen.
Wenn das Spiel auf einem GUI angezeigt werden soll, musst Du die Pong-Grafik in ein DynamicSprite packen und das als Hintergrund des GUIs festlegen (oder als Buttongrafik, falls es nicht GUI-füllend sein soll).
AGS 3.0: mittels DynamicSprite.GetDrawingSurface direkt "ins" DynamicSprite zeichnen.
2.72: den Bildschirm unterhalb des GUIs löschen, Spielfläche zeichnen, Ausschnitt ins DynamicSprite holen.
Du könntest auch in der Mitte des GUIs ein durchsichtiges Rechteck einbauen und die Spielfläche in den Raum zeichnen.
Use gopher repellent on funny little man
-
- Verpackungs-Wegwerfer
- Beiträge: 76
- Registriert: 09.04.2006, 17:51
- Kontaktdaten:
Re: einbauen von minispielen
hab mich jetzt mal daran versucht, aber nichts zustande bekommen
habe ein gui erstellt (gPong), welches den gameboy darstellt und einen button (btnscreen), der das spielfeld darstellt.
habe anfangs folgenden code (variablen-wert zuweisungen und darstellen des startbildschirms (ball in der mitte, "pong-schläger" oben und unten)
aber es wird nichts angezeigt, also nur das gui und der button, aber sonst nichts, also die surface-funktionen bewirken irgendwie nichts...
was mach ich falsch?
habe ein gui erstellt (gPong), welches den gameboy darstellt und einen button (btnscreen), der das spielfeld darstellt.
habe anfangs folgenden code (variablen-wert zuweisungen und darstellen des startbildschirms (ball in der mitte, "pong-schläger" oben und unten)
Code: Alles auswählen
gPong.Visible = true;
vpong = 1;
p1x = 160; p2x = 160; bx = 160; by = 120; ki = 0; bmovex = 0; bmovey = 4; ps = 3; bs = 4; p1move = 0; p2move = 0;
DynamicSprite* sprite = DynamicSprite.CreateFromExistingSprite(btnscreen.Graphic);
DrawingSurface *surface = sprite.GetDrawingSurface();
surface.DrawImage(bx, by, 154);
surface.DrawImage(p1x, 184, 155);
surface.DrawImage(p2x, 56, 155);
surface.Release();
was mach ich falsch?
- KhrisMUC
- Adventure-Gott
- Beiträge: 4674
- Registriert: 14.03.2005, 00:55
- Wohnort: München
Re: einbauen von minispielen
Etwas kleines aber entscheidendes fehlt:
Außerdem muss sprite eine globale Variable sein, da das DynamicSprite sonst am Ende der Funktion gelöscht wird und der Button trotzdem leer bleibt (bzw. als Bild die berühmte blau Tasse kriegt).
Code: Alles auswählen
btnscreen.Graphic = sprite;
Use gopher repellent on funny little man
-
- Verpackungs-Wegwerfer
- Beiträge: 76
- Registriert: 09.04.2006, 17:51
- Kontaktdaten:
Re: einbauen von minispielen
hatte es auch schon bemerkt
machs jetzt allerdings auf ner extra-map mit objekten, kommt ja im endeffekt aufs gleiche raus. bin auch schon recht weit gekommen, nur noch ein teil der gegner-"KI" (bei pong darf man eigentlich noch nich von ner KI sprechen ^^) fehlt...
machs jetzt allerdings auf ner extra-map mit objekten, kommt ja im endeffekt aufs gleiche raus. bin auch schon recht weit gekommen, nur noch ein teil der gegner-"KI" (bei pong darf man eigentlich noch nich von ner KI sprechen ^^) fehlt...
- Kaktus
- Tastatursteuerer
- Beiträge: 658
- Registriert: 17.02.2006, 01:45
- Wohnort: Wüstä
- Kontaktdaten:
Re: einbauen von minispielen
Also die KI ist doch bei Pong denkbar einfach. Du musst nur die y-position des Computergegners ständig auf die Höhe des Balles setzen.
- Timer
- Süßwasserpirat
- Beiträge: 260
- Registriert: 27.02.2007, 17:35
Re: einbauen von minispielen
Dann ist der Gegner allerdings unbesiegbar.
-
- Verpackungs-Wegwerfer
- Beiträge: 76
- Registriert: 09.04.2006, 17:51
- Kontaktdaten:
Re: einbauen von minispielen
ich hab nirgendwo gesagt das die pong-ki schwierig ist, ich war nur zu dem zeitpunkt noch nicht fertig damit
außerdem ist es viel geschickter einfach den punkt ausrechnen zu lassen an dem der ball ankommen wird für die ki.
und schaffbar ist es schon noch, aber je nach dem wie man die maximalen geschwindigkeiten von ball und schlägern setzt wirds sauschwer...
außerdem ist es viel geschickter einfach den punkt ausrechnen zu lassen an dem der ball ankommen wird für die ki.
und schaffbar ist es schon noch, aber je nach dem wie man die maximalen geschwindigkeiten von ball und schlägern setzt wirds sauschwer...