Herzanzeigen erstellen

  • GM 8

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

  • Herzanzeigen erstellen

    Guten Tag , ich bin grad dabei etwas rumzutüffteln
    Ich hab zwar schon etwas erfahrung, jedoch fehlen mir dazu noch die Anzeige von Leben.
    Meine Vorstellung: 3 Herzen die oben links im bild ercheinen und immer mit gehen , wo man eins verlieren bzw. max. bis 5 wieder herstellen kann
    Ich hab etwas probiert natürlich , jedoch komm ich nicht auf mein gewünschtes ergebnis , kann sein das es an den Event-Score-Buttons liegt da man dort finde ich
    zu wenig einstellen kann , ich weiß leider noch nicht wie ich das in scripts schreibe.
    Und ich möchte das der Player nach einem verlust des herzen das sprite wechselt , jedoch erstellt er nur wirrkürlich eine menge sprites und zertört sich nicht selbst.
    Benötige hilfe
    Danke im Vorraus :)
    Skype: xxshadow-- <- falls nötig :troll:
  • Am einfachsten bist du glaub ich bedient, wenn du ne Variable für die Anzahl an Herzen verwendest und dann im Draw-Event in etwa sowas hier benutzt:

    GML-Quellcode

    1. switch (global.herzen)//Deine Variable
    2. {
    3. case 1:
    4. //Wenn ein Herz
    5. draw_sprite(spr_herz,0,x1,y1);
    6. break;
    7. case 2:
    8. //Wenn zwei Herzen
    9. draw_sprite(spr_herz,0,x1,y1);
    10. draw_sprite(spr_herz,0,x2,y2);
    11. break;
    12. case 3:
    13. //Wenn drei Herzen
    14. draw_sprite(spr_herz,0,x1,y1);
    15. draw_sprite(spr_herz,0,x2,y2);
    16. draw_sprite(spr_herz,0,x3,y3);
    17. break;
    18. default:
    19. //Wenn keine Herzen
    20. //
    21. }
    Alles anzeigen
  • Das ganze über ein Switch zu lösen ist keine effiziente Lösung (sorgt für viel repetitiven Code).
    Benutz stattdessen eine Schleife, wie z.B. for:

    GML-Quellcode

    1. var _x, _y, _offset, _i;
    2. _x = 12; // Beispielhaft
    3. _y = 12; // (muss nicht unbedingt in einer Variable gespeichert werden)
    4. _offset = 24;
    5. for (_i=0; _i<global.herzen; _i+=1)
    6. {
    7. draw_sprite(spr_herz, 0, _x + _i * _offset, _y);
    8. }
  • hab es nun , muss nur noch einstellen das es mit dem Player mitgeht , weil es stehen bleibt.
    Aber ich denke das krieg ich selber hin , danke an alle.

    Achja ich hab einfach nur Y-Koordinaten ändern müssen und das offset

    //

    Leider erfolglos , die idee war etwas dämlich mit dem spieler folgen, da es verschwindet beim hüpfen oder wenn man zu weit link bzw. rechts ist.
    Wüsste noch jemand den Code dafür , das es dem SpielBild folgt , so das es immer oben links in der ecke bleibt.
    Sry , es etwas lange her ( halbes Jahr ) , wo ich zuletzt programmierte , nun bräuchte ich etwas auffrischung , da ich sachen teils vergessen hab,
    da ich sie so gut wie nie brauchte.


    //
    GESCHAFFT!

    var _x, _y, _offset, _i; // (muss nicht unbedingt in einer Variable gespeichert werden)
    _x = view_xview+10; // Beispielhaft
    _y = view_yview+10; // (muss nicht unbedingt in einer Variable gespeichert werden)
    _offset = 80;

    for (_i=0; _i<global.herzen; _i+=1)
    {
    draw_sprite(spr_herz, 0, _x + _i * _offset, _y);
    }


    für mich perfekt
    Skype: xxshadow-- <- falls nötig :troll:

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von xnoblegamerx ()

  • meinst du dann nicht

    var maximum;
    maximum=5 //oder so
    global.herzen=max(0,min(herzen,maximum))

    ??

    ////////////////////////////////////

    Habs nun so gemacht , bei einem gegestand wo man ein leben dazu bekommt im create

    global.herzen +=1
    instance_destroy()

    var maximum;
    maximum=5 //oder so
    global.herzen=max(0,min(herzen,maximum))



    und ich sterbe :D ?


    ////////////////////////////////////


    global.herzen +=1
    instance_destroy()

    var maximum;
    maximum=5 //oder so
    herzen=max(0,min(herzen,maximum))



    und ich bekomm auch noch weiterhin leben ,also beides klappt leider nicht.. :D ?
    Skype: xxshadow-- <- falls nötig :troll:

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