Nacheinander erstellende Objekte

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Nacheinander erstellende Objekte

    Hallo, ich bins mal wieder^^
    die Überschrift klingt etwas undeutlich, aber naja

    Beim J&R (sicht von der Seite) soll der Spieler per "D" Knopf eine Attacke machen.
    Die soll Folgendermaßen aussehen:
    ("-.-) \ \ \ \ \

    5 Eiszacken werden nacheinander in die Richtung, in der er beim Drücken geguckt hat geschossen.
    Diese werden vor dem Spieler erstellt und fallen dann durch die Gravity runter.

    Würde ich dies mit einem Timer machen, erstellt er die Zacken SOFORT wieder neu, wenn man also öfters hintereinander "D" drückt.
    Dies möchte ich jedoch nicht.
    Danke schon einmal für die Hilfe. Falls es nicht verständlich ist, werde ich noch mal ausführlich mein Problem schildern!

    ____
    Adventskalender 2010: Blue Smiley
  • Mach' doch eine Variable, die das verhindert:
    (create_event)

    GML-Quellcode

    1. can_ice=true;
    2. zackencount=0;

    (keyboard_press_d)

    GML-Quellcode

    1. if can_ice=true {
    2. can_ice=false;
    3. alarm[0]=10;
    4. }

    (alarm_0_event)

    GML-Quellcode

    1. if zackencount<5 {
    2. instance_create(x,y,Eiszacke);
    3. zackencount+=1;
    4. alarm[0]=10;
    5. }
    6. else {
    7. zackencount=0;
    8. can_ice=true;
    9. }


    ,-Megamag

    Magical dream time!
  • der meldet unknown variable can_ice :pinch:

    dazu noch ne frage:
    müsste ich jetzt noch die einzelnen eiszacken an den verschiedenen poisitionen createn oder macht das schon dein code?
    weil ich seh nix von irgentwas wie x achse verschieben oder so :?:

    ____
    Adventskalender 2010: Blue Smiley
  • So wie ich Megamags code verstehe:

    Das mit der Fehlermeldung: guck nochmal im create event ob da der richtige code steht



    ja du musst sie noch erstelen und bei den icezacken:

    ins create event(bezogen auf das objekt wo die ganzen codes drin stehen):

    GML-Quellcode

    1. zackencount += 1;


    ins destroy event(bezogen auf das objekt wo die ganzen codes drin stehen):

    GML-Quellcode

    1. zackencount -= 1;

  • Da musst du was falsch verstanden haben.
    Wieso zackencount+=1 ins create-Event?
    Und ja, der Code macht das mit den Zacken, es seidenn,
    ich habe dich falsch verstanden, und du willst nicht, dass
    die Zacken sich vorwärts bewegen.

    Magical dream time!
  • Nein, ich glaube du hast mich falsch verstanden ^^
    Also: Beim Drücken der "D" Taste werden 5 Eiszacken NaChEiNanDeR und NeBeNeiNanDeR, die in der Form sind wie das hier \, und NICHT nach --> vorne schweben sondern schlagartig beim erstellen durch die gravity (kann man auch mit speed machen) nach unten \/prallen.

    Also. D Knopf - Bam Bam Bam Bam Bam und nicht BAAAM^^

    ____
    Adventskalender 2010: Blue Smiley
  • Achso. Na, dann:
    (create_event)

    GML-Quellcode

    1. zackencount=0
    2. x_ver=0
    3. can_ice=true

    (keyboard_pressed_d)

    GML-Quellcode

    1. if can_ice=true {
    2. can_ice=false
    3. alarm[0]=10 }

    (alarm[0])

    GML-Quellcode

    1. if zackencount<5 {
    2. zackencount+=1
    3. x_ver+=20
    4. instance_create(x+x_ver,y,Eiszacke)
    5. alarm[0]=10 }
    6. else {
    7. zackencount=0
    8. x_ver=0
    9. can_ice=true }


    ,-Megamag

    Magical dream time!
  • da die Attacke ja in beide Richtungen geschossen werden kann (links & rechts) sollte Alarm0-Event dann so aussehen, oder?

    GML-Quellcode

    1. if zackencount<5 {
    2. if global.richtung = "rechts" {
    3. zackencount+=1
    4. x_ver+=20
    5. instance_create(x+x_ver,y,Eiszacke_rechts)
    6. }
    7. if global.richtung = "links" {
    8. zackencount+=1
    9. x_ver-=20 // statt +20 dann -20, richtig?
    10. instance_create(x+x_ver,y,Eiszacke_links)
    11. }
    12. alarm[0]=10 }
    13. else {
    14. zackencount=0
    15. x_ver=0
    16. can_ice=true }
    Alles anzeigen

    ____
    Adventskalender 2010: Blue Smiley

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Gimero ()

  • Jetzt folgen die Eiszacken aber dem Spieler.
    Also wenn ich "D" drücke und in eine Richtung laufe, machen die 5 Eiszacken nicht da ihre Aufgabe, sondern dort, wo der Spieler steht.
    Und wenn man sich dann also dreht, fallen die restlichen Eiszacken in diese Richtung und nicht in die ursprüngliche :headtouch:
    edit: man kann diese attacke auch nur einmal machen, also nicht öfters hintereinander D drücken. man muss also immer warten X(

    Hiern Video ^^ Problem_mit_Eiszacke.zip

    ____
    Adventskalender 2010: Blue Smiley

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Gimero ()

  • Benutzer online 1

    1 Besucher