IF sound_isplaying()

  • IF sound_isplaying()

    Hallo zusammen. Ist zwar jetzt ne völlig leichte/dämliche frage, aber irgendwie bekomm ich es nicht hin.
    Also ich habe ein objekt schuss. logisch, man kann es schießen. beim create event hab ich diesen code:

    GML-Quellcode

    1. If not sound_isplaying(snd_schuss) sound_play(snd_schuss)


    ka wieso, aber es geht einfach nicht. der sound wird abgespielt. egal ob er schon abgespielt wird. das ist natürlich nervig, weil man mehrere schüsse gleichzeitig erstellt. wer kkann mir helfen?
  • sound_isplaying(index) Returns whether (a copy of) the indicated sound is playing. Note that this functions returns true when the sound actually plays through the speakers. After you call the function to play a sound it does not immediately reach the speakers so the function might still return false for a while. Similar, when the sound is stopped you still hear it for a while (e.g. because of echo) and the function will still return true.

    ausschnitt aus der gmaker help

    Dragoon
    int (*x(*x(int))[5])(int*);
    Confused? Yes, it's C!
  • sound_isplaying(index) Gibt an,ob der angegebene (index)SFX gespielt wird. Nachdem du die Funktion zum abspielen eines Sounds aufgerufen hast kommt der Sound aber nicht direkt an den Lautsprechern an, deswegen kann die Funktion vielleicht fälschlicherweise false zurückgeben. Dasselbe ist, wenn du einen Sound anhälst und der noch eine Weile spielt (z.B. wegen eines Echos) gibt die Funktion true zurück.


    ausschnitt aus der gmaker help (gut deutsch) ;)


    @! und not:
    Dachte ich mir doch ^^
  • das hab ich ja auch schon gelesen ?( also liegt des daran "...deswegen kann die Funktion vielleicht fälschlicherweise false zurückgeben" ? manno
    das hört sich echt sehr verwirrend an^^
    gibts keine lösng dafür?
    hab schon extra die shusssounds ausm gamemaker sound ordner genommen. die ham ja kein echo oder ähnliches... :no:
  • Ich mache solche Sounds, die dauernd abgespielt werden sollen wenn sie nicht laufen mit Alarm Events, da muss man halt vorher ausloten wie lange der dauert. ne andere Lösung kann ich so nicht ausm Ärmel schütteln.
    "Die Erde ist ein Irrenhaus. Dabei könnte das bis heute erreichte Wissen der Menschheit aus ihr ein Paradies machen. Dafür müsste die weltweite Gesellschaft allerdings zur Vernunft kommen."
    - Joseph Weizenbaum