bubbles clone probleme :S

  • bubbles clone probleme :S

    Hi ich mache gerade einen Bubbles- Clone wie z.B den hier, um Gml besser zu lernen,

    Was ich schon habe ist:
    Einen Pfeil, der als ziehlvorrichtung dient, und immer genau in die richtung der maus zeigt.
    dann habe ich natürlich auch schon alle sprites und objekte.

    aber da ich noch ein absoluter anfänger bin, kommen wir jetzt zu meinen schwierigkeiten.

    1. Wie schaff ich das unten rechts aus zufallsprinziep immer eine kugel mit einer zufälligen farbe angezeigt wird, und das diese kugel dann später unter meinem pfeil auftaucht, um sie abzuschießen?

    2. wie kann ich dem sagen dass alle zusammenhängenden kugeln der selben farbe bei einem aufprall einer gleichfarbigen kugel platzen sollen?

    3. und wenn eine kugel völlig im raum stehen würde das sie dann auch platzt? (im falle das sie keine verbindung mehr zu einer anderen kugel hätte)

    4. und wie lass ich das kugelopjekt dann abschießen in richtung meiner maus?

    sorry das des so viele fragen sind, aber fand ich jetz besser alles auf einmal zu schreiben als das ich dann morgen n neuen thread öffne 8|

    P.S. mögliche schreibfehler sind nicht das resultat meiner schulbildung, sondern das privileg eines patentes auf schreibfreiheit :D

    gruß Gruen


  • 1. mit choose(x1,x2,x3,...) kannst du etwas zufälliges wählen, es wird 1 der max 16 Argumente ausgewählt.
    Mal sehn ob du das so hinbekommst, will erstmal nicht alles verraten (erstmal alleine probieren :D )

    3.

    GML-Quellcode

    1. if place_free(x-1,y-1) && place_free(x+1,y-1) && place_free(x,y-1)
    2. {instance_destroy();}


    4.

    GML-Quellcode

    1. //Global Left pressed event
    2. speed = //dein Speed
    3. direction = point_direction(x,y,mouse_x,mouse_y);



    Zu 2. fällt mir grad nichts ein, aber ich überleg mal noch. :D
    Gruß Gamer
  • ja danke hört sich schon gut an , aber zum teil 3, so wie ich das sehe wird aber nicht die möglichkeit mit bedacht, das ganze gruppen von kugeln mitten im raum stehen könnten. also wenn jetzt drei zusammenhängende kugeln die verbindung zum ganzen verliehren sollen sie ja auch zerplatzen :)

    und zu den anderen ich werds sofort ausprobieren... :)



  • 2. wie kann ich dem sagen dass alle zusammenhängenden kugeln der selben farbe bei einem aufprall einer gleichfarbigen kugel platzen sollen?
    collision_point(x,y,obj,prec,notme) Diese Funktion prüft, ob an Punkt (x,y) eine Kollision mit Instanzen des Objektes obj vorliegt.
    position_destroy(x,y) Vernichtet alle Instanzen deren "sprites" Position (x,y) abdecken.

    GML-Quellcode

    1. if collision_point(x-1,y-1,obj,false) && collision_point(x+33,y-1,obj,false) && place_free(x,y-1,obj_false)
    2. {
    3. // Das was pasieren soll
    4. //z.b:
    5. score+=1
    6. position_destroy(x-1,y-1)
    7. position_destroy(x+32,y-1)
    8. position_destroy(x,y-1)
    9. instance_destroy()
    10. }
    Alles anzeigen

    Bei obj muss in eine Variable geschreiben werden was es für ein obejkt ist also z.b obj_kugel_grün.

    3.

    GML
    1
    2

    if place_free(x-1,y-1) && place_free(x+1,y-1) && place_free(x,y-1)
    {instance_destroy();}

    1. Das if muss false sein. #edit Hab mich verlessen
    2. das ist falsch: place_free(x+1,y-1) da muss x+33 hin.
    MfG Henrik1235
    Ps. Könnten Denkfehler drin sein
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%
  • so da bin ich nochmal, ich komm einfach nich drauf wo mein fehler liegt, oder wie ich das noch anders machen könnte...

    ich hab geschrieben

    GML-Quellcode

    1. gelb = obj_gelb;
    2. rot = obj_rot;
    3. gruen = obj_gruen;
    4. blau = obj_blau;
    5. xx = choose(gelb,rot,gruen,blau);
    6. if (xx == gelb)
    7. instance_create(x+200,y-200,gelb);
    8. if (xx == rot)
    9. instance_create(x+200,y-200,rot);
    10. if (xx == gruen)
    11. instance_create(x+200,y-200,gruen);
    12. if (xx == blau)
    13. instance_create(x+200,y-200,blau);
    Alles anzeigen


    des funktioniert nicht :S was is jetz falsch?


  • @ henrik1235: Wie kommst du denn darauf, dass man bei allem außer Variablen Anführungszeichen setzen muss?
    Versuch mal, das gewünschte Objekt in einem instance_create-Befehl in Anführungszeichen zu setzen und schau, wie viel dir das bringt.

    @ Allgemeinheit:
    Anführungszeichen sind in GML nur in String-Variablen zu benutzen, ansonsten braucht man die nirgendwo (mal ganz davon abgesehen, dass so auch einige Fehler verursacht werden können)

    @ Gruen:
    Zum Choose-Thema:

    GML-Quellcode

    1. bubble=choose(obj_rot,obj_blau,obj_gelb,obj_gruen);
    2. instance_create(x,y,bubble);

    sollte eigentlich keine Fehler verursachen. Sollte das doch passieren, überprüf mal den Kontext deines Gesamtcodes - vielleicht pfuscht dir ein anderes Segment dazwischen. Meistens sind die Fehler viel simpler zu lösen, als man annehmen möchte. ;)
  • @ henrik1235: Wie kommst du denn darauf, dass man bei allem außer Variablen Anführungszeichen setzen muss?
    Versuch mal, das gewünschte Objekt in einem instance_create-Befehl in Anführungszeichen zu setzen und schau, wie viel dir das bringt.
    :pinch: Du hast recht. Hab mich voll vertan mit den Strings.
    wupto.net/ Nicht meine Seite!
    We love Koalas.

    GM-D-Spam-o-Meter: 32%
  • also echt ihrgendwas scheine ich falsch zu machen, ich habe das im event left released für die maus, weil das auch erst passieren soll wenn ich den ersten abgeschossen habe, aber da geht nix, ich hab das genau so eingegeben -.- ich lad meine datei mal hoch...
    Dateien
    • bubbles.rar

      (16,13 kB, 94 mal heruntergeladen, zuletzt: )


  • Benutzer online 1

    1 Besucher