Operator mit argument übergeben?

    • GM 8

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

    • Operator mit argument übergeben?

      Bräucht mal wieder kurz eure hilfe,

      ich rufe mit "scr_itemdata(1)" z.b. das hier auf :

      GML-Quellcode

      1. case 1:
      2. {
      3. global._player_stats_maxhp+=5
      4. global._player_stats_maxhp+=5
      5. global._player_stats_defense+=1
      6. break;
      7. }


      Nu möchte ich aber mit nem weiterem argument sagen können welchen Operator er benutz also entweder + oder -.
      Die einfachste Möglichkeit wär ja für alles einmal für + und einmal für - zu schreiben, aber das wär am Schluss echt einfach zu viel code ^-^.
      Will nun mit scr_itemdata(1,+) irgendwie sagen können das nu halt

      GML-Quellcode

      1. case 1:
      2. {
      3. global._player_stats_maxhp+argument1=5
      4. global._player_stats_maxhp+argument1=5
      5. global._player_stats_defense+argument1=1
      6. break;
      7. }

      Passiert, wie schreibe ich nu am besten "global._player_stats_maxhp+argument1=5" so das es funktioniert? Hoffe habs verständlich ausgedrückt, wen ich aufstehe red ich meistens viel zu.. kompliziert :troll: .

      mfg Death
    • Du könntest versuchen, es mit execute_string zu versuchen und dann eben z.B. "+" oder "-" übergeben. (edit: "versuchen ... zu versuchen" xD)
      Obwohl das nicht gerade die sauberste Lösung wäre ^^
      Aber ohne if / switch statements zu verwenden fällt mir echt nichts anderes ein.

      - Tobi97
    • Naja, da gibt es 2 Möglichkeiten:

      entweder du übergibst als 2ten Parameter die Zahl +1 oder -1, die dann im Script an der jeweiligen stelle multipliziert wird,
      ODER:
      Du übergibst "+" oder "-" als String, fügst es mit einer 1 zusammen und multiplizierst es mit der jeweiligen Zahl. (Wobei ich mir nicht sicher bin ob das so funktioniert.)
    • Oder du lässt dir den Code vom GM "generieren". D.h. du fügst per object_event_add ein User-Event hinzu, sammelst deine ganzen Strings, konkatenierst diese, und fügst den finalen String in das Event ein. Dann kannst du event_user(numb) in deinem Skript ausführen.

      Albert Einstein schrieb:

      Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.