Hey, gibt es eine möglichkeit wie bei doodle jump das das level unendlich geht?
Unendliches Level
- GM 8
Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen
-
-
bei doodle Jump wird vermutlich das Level von oben generiert, es ist daher nicht unendlich sondern erscheint dir nur so. (unendlich wird übrigens auf absehbarer Zeit nicht möglich sein)
im prinzip hast du einen room von z.B. 640x480 pixeln und von oben werden immer wieder Objekte generiert. -
Asoo, weißt du wie das geht ? das die objekte von oben oder von der seite(sowie bei flappy bird) gengeriert werden?
-
du nutzt beispielsweise für jede Platform ein objekt obj_platform
du benötigst außerdem einen obj_platform_controller, der einmalig, im Create Event die Objekte erstellt:
GML-Quellcode
- //generiere 8 platformen
- for(i=0; i<8; i=+1){
- /*bei jedem Schleifendurchlauf erstelle Variablen mit zufälligen Werten (random) und runde diese auf ganze Zahlen (round) innerhalb der Raumdimension //(room_width und room_height)*/
- x_create=random(round(room_width));
- y_create=random(round(room_height));
- /*Wenn an dieser Stelle kein obj_platform Objekt ist*/
- if(!place_meeting(x_create, y_create, obj_platform){
- /*dann erstelle eine Platform*/
- instance_create(x_create, y_create, obj_platform);
- }
- }
und im Step Event der Platform:
und dann im destroy event ein Objekt über dem oberen Bildschirmrand erstellen:
mal als grober Denkanstoß. Ist natürlich nicht getestet -
Kannst du mal bitte ein example ich verstehe das nicht ganz
-
dann probier lieber was leichteres
-
Mit einem example versteh ich das bestimmt leichter hier ist es bisschen anders
Danke -
Dafür brauchst du kein example
Es gibt viele verschiedene wege, wie du das machst, ich sag mal einen kurz.
Du hast ein Objekt, dass die Weltgeneration steuert. Dies setzt du in deinen Raum, wo die Welt generiert werden soll.
Angenommen es sei DoodleJump: Du hast ja verschiedene Objekte, das sind die Bretter auf die man springt. Jetzt machst du einfach einen Loop in deinem Controllobjekt. Am besten mit Alarmevents. Und immer wenn der Allarm runter geht, erstellst du ein Objekt an einer Stelle. Wie schon domis4 geschrieben hat, kannst du den Erstellpunkt gut mit room_height, room_widht lösen. Room_height ist die Raumhöhe, Room_widht die Raumbreite. Also würde z.B. bei instance_create(room_height/2,room_widht/2,obj_brett) das obj_brett in der Mitte von deinem Raum erstellt werden. Diese Variablen kannst du dann ja beliebig ändern etc.Husi012 hat mich nicht mehr in seiner Signatur, ich bin trotzdem noch fame.
-
Es gibt ein Sidescrolling Tutorial von yoyo da wird dir alles schritt für schritt erklärt und das sogar mit D&D Yoyo TutorialarchivWir stehen zusammen und wir fallen zusammen
-
Die Grundidee hierbei (also bei Doodlejump) ist, alle paar Sekunden eine Plattform zu erstellen,
die auf einer zufälligen Position auf der X-Achse steht, und mit einer konstanten Geschwindigkeit stetig nach unten geht.
Sobald die Plattform aus dem Raum ist, wird sie wieder zerstört.
Wird diese Aktion andauernd wiederholt, entsteht ein "Unendlichkeits-Effekt".Dieser Beitrag wurde bereits 8.675.628 mal editiert, zuletzt von »levarris07« (Heute, 11:33) -
ich habe mir neulich privat nen flappy bird klon gecodet (in Java, aber des ist ja eigentlich egal).
da habe ich 2 röhren im raum, die immer nach links wandern und dann, wenn x<0-bitmapbreite dann x=xauflösung+bitmapbreite.
in GML währe das
Kopiere dies in deine Signatur, um es in deiner Signatur zu haben.
Achtung: Dieser Beitrag läuft ende des Monats ab, bitte lese ihn noch vor dem Monatswechsel...
Nach langer zeit wieder im Forum aktiv