instance_destroy außerhalb des views

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

  • instance_destroy außerhalb des views

    ich habe schon gesucht und gefragt aber keiner hat lust mir eine antwort zu geben -.- oder ich finde nichts also frag ich nochmal.


    ich habe jemanden mit ner waffe und auf der space taste schießt man,

    wenn das schussobjekt ausm view raus ist hätte ich es gerne so das es gelöscht wird
    ich habs mit view_xview versucht aber nichts geht bei mir ich kenn mich einfach nicht genug aus mit diesen sachen xD.
  • Also ein vorgefertigtes Event wie "Outside Room" gibt es für den View afaik nicht in 6.x (wenn doch hab ichs doch tatsächlich nie gefunden).
    (Bevor mich jetzt einige anfangen zu steinigen: Ja Outside View gibt es in 7.0!)
    Das heißt wir müssen uns die Positionsabfrage selbst zusammenbasteln.

    Vorab: Es gibt für die obere und die linke Seite des Views die Begrenzungen, welche mit view_xview und view_yview bezeichnet werden.
    Für die rechte, und untere Seite jedoch nicht, da muss man dann mit Breite und Höhe des Views (also view_wview und view_hview) arbeiten.

    Das ganze sähe dann in etwa so aus:

    GML-Quellcode

    1. //'blub' ist der Index des betreffenden Views.
    2. if (x<view_xview[blub]) /*Kugel links aus dem Bild*/
    3. || (x>view_xview[blub]+view_wview[blub]) /*Kugel rechts aus dem Bild*/
    4. || (y<view_yview[blub]) /*Kugel oben aus dem Bild*/
    5. || (y>view_yview[blub]+view_hview[blub] /*Kugel unten aus dem Bild*/
    6. instance_destroy();

    Die Abfrage für das Outside Room-Event sähe im Übrigen ähnlich aus (nur natürlich nicht mit den Werten des Vewis, sondern denen des Raumes).
    Hier werden sie geholfen:
    [Regeln] [GML] [Hilfe] [Suche] [Posten] [Duden.de]
    [Wenn das alles nicht mehr hilft] [Dunning-Kruger]


    "Die Vernunft sollte Autorität definieren; nicht umgekehrt!"
    "Selber denken regt das Gehirn an."
    - Niffel f.k.a. Kilik
  • Wenn die Patrone nur horizontal fliegt brauchste nur zu überprüfen ob das obejct vor oder hinter dem viewbereich ist.
    stepevent der patrone:

    GML-Quellcode

    1. if x>view_xview+view_wview
    2. instance_destroy()
    3. else if x<view_xview
    4. instance_destroy()

    Wenn es in alle Richtungen fliegen kann musste noch zusätzlich das selbe mit y und view_yview/view_hview machen

    Wenn du es in 2 Zeilen gelöst haben willst kannste auch einfach die Distanz zum Spieler abfragen.

    GML-Quellcode

    1. if distance_to_object(obj_player)>320
    2. instance_destroy()

    Is aber rechenaufwendiger, da er so jeden step die distanz noch berechnen muss statt einfach die gegebenen koordinaten zu vergleichen.