none
Statuswerte mitteinander addieren RRS feed

  • Frage

  • Moin zusammen,

    wie kann ich diverse Statuswerte mitteinader addieren, die ständiger Änderung unterliegen? Wie zum Beispiel Widerstände gegen Magie, Gift usw. die durch buffs erhöht werden können.

            public int Blitzwiderstand = 0;
            public int BonusBlitzwiderstand = 0;
            public int GesamtBlitzwiderstand;
            public int Maxblitzwiderstand = 75;

    Vielen Dank im voraus,

    Gorbert

    Sonntag, 27. Januar 2013 20:22

Antworten

  • Hallo,

    Du solltest deine Felder (Variablen) nur über Eigenschaften zugreifbar machen:

    private int _Blitzwiderstand = 0;
    public int Blitzwiderstand
    {
        get
        {
            return _Blitzwiderstand;
        }
        set
        {
            _Blitzwiderstand = value;
        }
    }
    //...

    Wenn jetzt ein Wert geändert wird, dann wird der Setter (set) der Eigenschaft aufgerufen. Dort kannst du dann deine anderen Eigenschaften aktualisieren. value enthält den neuen, zu setzenden Wert.

    Achte aber darauf das keine Stapelüberläufe o.ä. durch gegenseitige Veränderung entstehen.


    Koopakiller [kuːpakɪllɐ] | Webseite | Code Beispiele | Facebook | Snippets

    • Als Antwort markiert Gorbert Freitag, 8. Februar 2013 23:02
    Sonntag, 27. Januar 2013 20:27
    Moderator

Alle Antworten

  • Hallo,

    Du solltest deine Felder (Variablen) nur über Eigenschaften zugreifbar machen:

    private int _Blitzwiderstand = 0;
    public int Blitzwiderstand
    {
        get
        {
            return _Blitzwiderstand;
        }
        set
        {
            _Blitzwiderstand = value;
        }
    }
    //...

    Wenn jetzt ein Wert geändert wird, dann wird der Setter (set) der Eigenschaft aufgerufen. Dort kannst du dann deine anderen Eigenschaften aktualisieren. value enthält den neuen, zu setzenden Wert.

    Achte aber darauf das keine Stapelüberläufe o.ä. durch gegenseitige Veränderung entstehen.


    Koopakiller [kuːpakɪllɐ] | Webseite | Code Beispiele | Facebook | Snippets

    • Als Antwort markiert Gorbert Freitag, 8. Februar 2013 23:02
    Sonntag, 27. Januar 2013 20:27
    Moderator
  • Hallo Gorbert,

    Hat Dir die Antwort von Koopakiller geholfen? Wenn Ja bitte markiere diese als Antwort.

    Gruss,

    Ionut

    Montag, 4. Februar 2013 14:58
    Moderator