Was bedeutet das?

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
  • Guten Morgen ,
    ich hab mal eine Frage:
    Man kann ja ein Stock erstellen mit IsPlayerAnAdmin
    Dennoch hab ich gesehen, dass paar Scripter vor dem IsPlayerAnAdmin ein "!" setzen.( !isPlayerAnAdmin)Was bedeutet das wenn man da ein Ausrufezeichen setzt?


    MfG.


    /e Rechtschreibfehler: setzt zu setzen*


    Beiträge:
    150 {X}
    300 {X}
    450 {X}
    600 { }

    Einmal editiert, zuletzt von PR3MiiUM () aus folgendem Grund: Überschrift geändert.

  • Code
    stock IsPlayerAnAdmin(playerid,rank)
    {
    if(GetPVarInt(playerid,"Adminlevel")==rank) return 1;
    }


    Soltle glaube gehen, ist ungetestet...wenn ich zu Hause bin kann ich dir meinen Code schicken...


    Wenn du jetzt abfragen will mit "!" musst du das so machen


    Code
    if(!IsPlayerAnAdmin(playerid,1)) return SendClientMessage(playerid,GRAU,"Du bist kein Admin");
  • Das Ausrufezeichen vor einer Variable heißt quasi Alles Außer, oder überall außer, zumindest merke ich mir es so.


    z.B. bei !IsPlayerInRangeOfPoint, heißt es das der Spieler überall sein darf außer in diesem Bereich
    dann logischer Weise bei !IsPlayerAdmin, das er alles sein kann außer Admin.


    Hoffe kann es etwas verständlich rüberbringen


    Mit freundlichen Grüßen
    mR.Jefferson


  • Ja, also wenn das z.B vor IsPlayerAnAdmin ist dann könnn das die normalen User machen, aber es können nicht die Admins den Befehl benutzen, Richtig?


    Beiträge:
    150 {X}
    300 {X}
    450 {X}
    600 { }

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Ach so, okay :) Danke
    Hab noch ein else Problem:
    C:\Users\Dennis\Desktop\Server\gamemodes\BGRL.pwn(130) : error 029: invalid expression, assumed zero
    C:\Users\Dennis\Desktop\Server\gamemodes\BGRL.pwn(185) : error 029: invalid expression, assumed zero



    Befehl:
    ocmd:gethere(playerid,params[])
    {
    new string[128],player;
    if(!IsPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,Rot,"Du bist kein Admin!");
    if(sscanf(params,"u",player))return SendClientMessage(playerid,Rot,"Error: /gethere [ID]");
    {
    new sendername[MAX_PLAYER_NAME],playername[MAX_PLAYER_NAME];
    GetPlayerName(player,sendername,sizeof sendername);
    GetPlayerName(playerid,playername,sizeof playername);
    format(string,sizeof string,"%s hat dich zu sich geportet.",playername);
    SendClientMessage(player,Blau,string);
    format(string,sizeof string,"Du hast %s zu dir geportet.",sendername);
    SendClientMessage(playerid,Blau,string);
    new Float:X,Float:Y,Float:Z;
    GetPlayerPos(playerid,X,Y,Z);
    if(IsPlayerInAnyVehicle(player))
    {
    new autoid = GetPlayerVehicleID(player);
    SetVehiclePos(autoid, X, Y+4, Z);
    }
    else
    {
    SetPlayerPos(player,X,Y+2,Z);
    }
    }
    else
    {
    SendClientMessage(playerid, Rot,"Du bist kein Admin!");
    }
    return 1;
    } Das 2 else.


    Befehl 2:
    ocmd:setskin(playerid,params[])
    {
    new skinid1,pID,string[128];
    if(!IsPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,Rot,"Du bist kein Admin!");
    if(sscanf(params,"ud",pID,skinid1))return SendClientMessage(playerid,Rot,"Error: /setskin [ID] [SKINID]");
    {
    SetPlayerSkin(pID,skinid1);
    format(string,sizeof(string),"Ein Admin hat dir den Skin %d zugewiesen!",skinid1);
    SendClientMessage(pID,Blau,string);
    }
    else
    {
    SendClientMessage(playerid,Rot,"Du bist kein Admin!");
    }
    return 1;
    } Wieder das 2. else.


    Beiträge:
    150 {X}
    300 {X}
    450 {X}
    600 { }

  • Ein tipp auch wenn es als erledigt gilt wenn dir das mit dem ! zu unverständlich ist kannst du auch else verwenden ein Beispiel



    ich möchte das wenn er in keinem fahrzeug ist der Befehl geht



    ocmd:befehl(playerid,params[])
    {
    if(IsPlayerInVehicle(playerid))
    {
    //Ist im Fahrzeug
    }
    else
    {
    //Ist nicht im Fahrzeug
    }
    return 1;
    }