Funktion Entfernt? sprite_create_from_screen

  • GM 8

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

  • Funktion Entfernt? sprite_create_from_screen

    Beim Update auf 1.2 habe ich als ich das Programm ausführen wollte einen Compile Error bekommen.
    Anscheinend wurde die Funktion sprite_create_from_screen enfernt.
    Kennt jemand eine Funktion die ich stattdessen benutzen kann?

    Edit: iOS: sprite_create_from_screen does not work on iOS

    Anscheinend haben sie es entfernt weil diese Funktion in iOS nicht funktionierte.

    Mein Gott, iOS fährt mit dem Wayn-Train zum Whateverest...!!!!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Balls of Steel ()

  • Hi Mew,

    Ich brauche diese Funktion eigentlich nur um ein weiteres Sprite zu erzeugen um somit die Anzahl meiner Sprites für eine Schleife herauszufinden, welche dann die Namen der Sprites in einer Map speichert.

    In meinem Multiplayer ist es so das der Server die Namen der Bilder an den Client sendet und der Client über diese Map die ID des Sprites herausfindet (welche natürlich eine andere als beim Server sein darf) um es zu Drawn.

    GML-Quellcode

    1. { var no, i, ds_map;
    2. ds_map = argument0;
    3. no = sprite_create_from_screen(0, 0, 1, 1, false, false, 0, 0);
    4. sprite_delete(no);
    5. for (i = 0; i < no; i += 1)
    6. { if (sprite_exists(i))
    7. { ds_map_add(ds_map,sprite_get_name(i),i);
    8. }
    9. }
    10. }


    Eigentlich müsste die Funktion sprite_create_from_surface ja genauso ihren zweck erfüllen, da sie auch ein neues Sprite anlegt... dann Google ich mal schnell was Surface sind, hab mich bisher nicht damit befasst, da ich es noch nicht brauchte.

    Vielleicht hat ja jemand schneller eine Antwort als ich Googlen kann ;)

    Edit: Ah hab hier im Forum ein Tutorial gefunden :)

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Balls of Steel ()

  • Surfaces werden dein Problem nicht lösen. Ich habe deine Technik früher selbst benutzt, aber in Studio kann man dynamisch keine Resourcen hinzufügen.

    Stattdessen würde ich dir nahelegen, diese Map einfach selbst zu machen und Ids selbstständig zu verteilen. Die kannst du dann rübersenden. Das ist auch nicht so hässlich wie das Senden von Resourcennamen und braucht weniger Traffic.

    Wobei, ist es nicht noch immer so, dass der Name einer Resource nichts anderes als eine Konstante ist, die die Id hält? Warum dann überhaupt mit Strings arbeiten?

    Edit: Vergiss letzteres. Du erwähntest schließlich, dass die IDs andere sein können.
  • MewX schrieb:

    aber in Studio kann man dynamisch keine Resourcen hinzufügen


    Wie meinst du das? Klappt doch :) Also finde gut das du mich auf die Surface gebracht hast, hab den Code jetzt abgeändert.
    So funktioniert er super, falls jemand noch Verbesserungsvorschläge hat immer her damit!

    GML-Quellcode

    1. { var no, i, ds_map, sf;
    2. ds_map = argument0;
    3. sf = surface_create(10,10);
    4. no = sprite_create_from_surface(sf, 0, 0, 1, 1, false, false, 0, 0);
    5. surface_free(sf);
    6. sprite_delete(no);
    7. for (i = 0; i < no; i += 1)
    8. { if (sprite_exists(i))
    9. { ds_map_add(ds_map,sprite_get_name(i),i);
    10. }
    11. }
    12. }
    Alles anzeigen
  • Benutzer online 1

    1 Besucher