Aufbau eines Jump'n Run's (like Turrikan)
-
FinalbrainXP schrieb:
Neee das ist ne bombensichere Sache..da würde ICH garnix dran ändern!!
Warum zeigst du es uns dann überhaupt?
1.) Gimme ist cooler! Und ist ja meine Engine mein Style!
lol
Ist ja nicht ne kommerzielle Engine mit Standard Konventionen!
Ah, und drum sollte man keine Konventionen beachten?
2.) Da sind 3 Objekte Public! ContainerPool, Container, Sprite!
Das sind alles 3 eingenständige Klassen...welche man auch ausserhalb
der Engine benutzen kann!! Wenn ich jetzt nen animerbares Objekt mache,
muss ich dem nur den Pool-Pointer übergeben..und es kann sich dann komplett
anhand verschiedener Sequenz-Container selbstanimieren! Da sich die
Container selber den Speicher bereinigen, muss ich beim animierbarem Objekt
nichts mehr beachten..bzw initialisieren! Bei deiner Version
funktioniert dies dann weniger Objekt orientiert, oder ich müsste die
Zuweisung an die Container private mit in den Engine-Code Packen, welches
ich nicht tue, da die Klassen getrennt von einander entwickelt wurden, und
so besser gewartet werden können! Glaube mir das ist echt gut durchdacht!AnimierbaresObjekt->Pool = Engine.ContainerPool
AnimierbaresObjekt->SetSequences(0,0,0) //Animation links gehenm
AnimierbaresObjekt->SetSequences(1,0,1) //Animation rechts gehenif Keyboard.links
AnimierbaresObjekt->AnimateMe(0);if Keyboard.rechts
AnimierbaresObjekt->AnimateMe(1)AnimierbaresObjekt->DrawMe();
Hm, bis jetzt kein einziger Satz ohne Ausrufezeichen...
3.) Das mit den Parametern ist doch toll! Verstehe nicht warum es schlecht ist.
Kein Kommentar
Bei direktX gibt es auch mäßig Parameter!
massig
Und dieses ist ja die größte
Funktion! Ob ich jetzt 11 untereinander oder hintereinander mache..ist doch
egal! Jedes Sprite braucht halt diese 11 Unterschiedlichen Parameter!Falsch. Selbst wenn du alle Werte benötigst, könntest du 1. mit Defaultparametern arbeiten und 2. Strukturen benutzen.
-
Vielleicht solltest Du dieses "Sprite wird noch aus einem großen Bitmap ausgeschnitten" abkapseln von der Sprite-Lade-Routine.
Sprites die man nicht zerschneiden muß bekommen dann immer 0 als Parameter, das ist doch doof.
Lieber für Sprite-Tables noch eine kleine Sprite-Extractor-Funktion davorhängen.Zum anderen könntest Du Funktionen überladen. Falls es mir z.B. schnurzegal ist wo im Speicher das Ding lagert reicht ein LoadSprite(char* filename), daß meinetwegen die Position im Container zurückgibt (Größe kann die Funktion selber aus der Datei rausfinden).
-
- GESCHLOSSEN - Bevor hier zu viel Schei**e erzählt wird!!
-
FinalbrainXP schrieb:
3.) Das mit Separierung von Jum'n Run und Shoot'n Run ist Schwachsinn!
Das kommt, wenn man sich nicht selber Gedanken über die Wort selber macht
und jedes Wort übernimmt, was irgend jemand mal in die Luft geworfen hat.
Jump'n run heißt Laufen und Springen!! Also ist es demnach ein Jump'n Run
und ein Shoot'em Run! Aber warum so kleinlich ? Bei Supermario sagt auch
keiner Shoot'em Run/Jump, obwohl man da durchaus schießen kann!Oh mann dieser Thread muss in die lolotw.
FinalbrainXP 4 President
-
ChockoCookie schrieb:
FinalbrainXP schrieb:
3.) Das mit Separierung von Jum'n Run und Shoot'n Run ist Schwachsinn!
Das kommt, wenn man sich nicht selber Gedanken über die Wort selber macht
und jedes Wort übernimmt, was irgend jemand mal in die Luft geworfen hat.
Jump'n run heißt Laufen und Springen!! Also ist es demnach ein Jump'n Run
und ein Shoot'em Run! Aber warum so kleinlich ? Bei Supermario sagt auch
keiner Shoot'em Run/Jump, obwohl man da durchaus schießen kann!Oh mann dieser Thread muss in die lolotw.
FinalbrainXP 4 President
Ganz ehrlich, dass hab ich mir auch gerade gedacht
Immer wieder schön zu sehen, wie gut man sich selbst finden kann.
-
Gut, das ich den Originalthread gerettet habe. Got finally brain?
Bye, TGGC (Reden wie die Großen)
-
GESCHLOSSEN - Bevor hier zu viel Schei**e erzählt wird!!
-
-
Arm...
-
Yeah Shoot'em Runs RULEN.