Gesetzte Variable existiert nicht?

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

  • Gesetzte Variable existiert nicht?

    Hallo alle zusammen,
    wie schon im Titel gesagt, habe ich ein problem mit Variablen.
    Die Programmierung sieht so aus:

    GML-Quellcode

    1. //Create Event objPlayer
    2. weaponDmg = global.W1Dmg

    GML-Quellcode

    1. //End Step Event
    2. if (mouse_check_button_pressed(mb_left) and munition > 0){
    3. munition -= 1
    4. with (instance_create(x,y,objShot))
    5. {
    6. direction = other.direction
    7. dmg = weaponDmg;
    8. }
    9. }


    Eigentlich müsste die Varible weaponDmg existieren, aber ich bekomme immer den Fehler:

    Quellcode

    1. ERROR!!! :: ############################################################################################
    2. FATAL ERROR in
    3. action number 1
    4. of Step Event2
    5. for object objPlayer:
    6. Push :: Execution Error - Variable Get 101012.weaponDmg(100017, -2147483648)
    7. at gml_Object_objPlayer_StepEndEvent_1 (line 13) - dmg = weaponDmg;
    8. ############################################################################################

    :cursing: :rage:


    Vielen Dank für eure Antworten schon mal im vorraus ;)
    Ich bin Aaron. :D
  • Versuch mal dmg = other.weaponDm.
    Erklärung kommt gleich :D

    Edit: Ich wollte 1er sein ^^

    So der Grund: wenn du ein with-statement verwendest, dann wird der Code sozusagen im Object objShot ausgeführt. Und da existiert die Variable weaponDmg, ja nicht. Du kannst aber auf die "Haupt"-Instanz mithilfe der other Variable zugreifen.

    -
    Rodrog
    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Ergo: Je mehr Käse, desto weniger Käse.