Abfrage funktioniert nicht ganz ;o

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hi ;D


    Ich möchte machen das der Spieler level 2 und 4 respektpunkte braucht, ansonsten bekommt er ne naricht, aber wenn ich den befehl eingebe,
    bekommt er halt immer das level drauf gesetzt, sprich die abfrage klappt nicht ganz ;o

    if(GetPlayerScore(playerid) != 2 && SpielerInfo[playerid][pRespektpunkte] != 4)return SendClientMessage(playerid, Rot, "Nicht genügend Respektpunkte!");
    {
    SpielerInfo[playerid][pRespektpunkte]=0;
    SetPlayerScore(playerid, 3);
    SavePlayer(playerid);
    }


    Hoffe ihr wisst was ich meine, und hoffe ebenfalls das mir jmd. helfen kann ;/


    Lg :)

  • Ich glaube, du hast das mit den If-Abfragen nochnicht richtig verstanden oder einfach das else vergessen. Die If Abfrage betrifft nur den nachstehenden Code (in deinem fall SendClientMessage) bzw. Codeblock. Das else bewirkt, dass der Code, der unter dem else ausgeführt wird, wenn die If Bedingung nicht erfüllt ist.


    if(GetPlayerScore(playerid) != 2 && SpielerInfo[playerid][pRespektpunkte] != 4)
    return SendClientMessage(playerid, Rot, "Nicht genügend Respektpunkte!");
    else
    {
    SpielerInfo[playerid][pRespektpunkte]=0;
    SetPlayerScore(playerid, 3);
    SavePlayer(playerid);
    }



    BlackLegend


  • Danke erstmal für die Antwort ;D
    Da ich es aber Ressourcendsparender schreiben will, will ich es auch SO haben:
    if(!IstSpielerEinAdmin(playerid,5)) return SendClientMessage(playerid,Rot,"Du kannst diesen Befehl nicht benutzen!");

  • Kannst du natürlich so machen, aber ressourcensparender ist das ganz sicher nicht, es hat überhaubt keine Auswirkung auf den finalen Ressourcenverbrauch.
    Wieviel Ressourcen (Arbeitsspeicher, CPU) ein Script bzw. Programm verbraucht hängt davon ab, wieviele Variablen es besitzt und welche Funktionen aufgerufen bzw. im Endeffekt Berechnungen durchgeführt werden. Ich würde dir davon abraten, dass so zu schreiben, da es später sehr unübersichtlich werden kann, ist aber deine Entscheidung.




    BlackLegend


    (e) Fehler ausgebessert

    Einmal editiert, zuletzt von BlackLegend ()