Beiträge von Kaliber

    Nun immernoch:


    Code
    C:\Users\Home\Desktop\pawno\Gamemodes\testmap.pwn(165) : warning 217: loose indentation
    C:\Users\Home\Desktop\pawno\Gamemodes\testmap.pwn(167) : warning 217: loose indentation
    C:\Users\Home\Desktop\pawno\Gamemodes\testmap.pwn(171) : warning 217: loose indentation
    Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase
    
    
    
    
    3 Warnings.


    Schreibe mal oben in dein Script das hier:


    #pragma tabsize 0


    mfg. :thumbup:

    Schreibe das mal so:


    if(strcmp(strget(cmdtext,0), "/veh", true) == 0)
    {
    if(IsPlayerAdmin(playerid))
    {
    if(!strlen(strget(cmdtext,3))) return SendClientMessage(playerid, COLOR_BEFEHL, "Benutze: /veh [CARID] [COLOR1] [COLOR2]");
    new modelid, col1, col2, car;
    new Float:PosX, Float:PosY, Float:PosZ, Float:PosZA;
    GetPlayerPos(playerid, PosX, PosY, PosZ);
    GetPlayerFacingAngle(playerid, PosZA);

    modelid = strval(strget(cmdtext,1));
    col1 = strval(strget(cmdtext,2));
    col2 = strval(strget(cmdtext,3));

    car = AddStaticVehicle(modelid, PosX, PosY, PosZ, PosZA, col1, col2);

    PutPlayerInVehicle(playerid,car,0);
    }
    return 1;
    }


    mfg. :thumbup:

    So:


    ocmd:setadmin(playerid,params[])
    {
    new pID,string[128],Rang;
    if(!IstSpielerEinAdmin(playerid,5))return SendClientMessage(playerid,Grau,"Zugriff verweigert. Benötigter Rang: {FF2800}Projektleitung");
    if(sscanf(params,"ui",pID,Rang))return SendClientMessage(playerid,Grau,"Benutze /setadmin [ID/Teilname] [Grund]");
    if(!IsPlayerConnected(pID))return SendClientMessage(playerid,Grau,"Der angegebene Spieler ist nicht online.");
    if(Rang < 0 || Rang > 5)return SendClientMessage(playerid,Grau,"Der Rang darf nicht unter 0 und über 5 liegen.");
    new rangname[64];
    switch (Rang)
    {
    case 1: format(rangname, 64, "Moderator");
    case 2: format(rangname, 64, "Supporter");
    case 3: format(rangname, 64, "Administrator");
    case 4: format(rangname, 64, "Super Administrator");
    case 5: format(rangname, 64, "Server Owner");
    }
    format(string,sizeof(string),"Du wurdest von Projektleiter %s als %s ins Team aufgenommen.",SpielerName(playerid),rangname);
    SendClientMessage(pID,Hellrot,string);
    return 1;
    }


    mfg. :thumbup:


    So kannst du das noch nicht machen da bei dir text keinen Array hat und somit wird es vom Compiler als Integer angesehen ;)


    mfg. :thumbup:


    //Edit:


    Mein Code hat zwar 6 Zeilen weniger und ist somit Ressourcen freundlicher, aber im Prinzip sind beide richtig ;)

    Ich löse das mal auf, schreibe es einfach so:


    ocmd:pchat(playerid,params[])
    {
    if(!isPlayerPremium(playerid))return SendClientMessage(playerid,ROT,"Du bist kein Premium User!");
    new string[128],text[128];
    if(sscanf(params,"s",text))return SendClientMessage(playerid,Grau,"Fehler: /pchat [Text]");
    format(string,sizeof(string),"(( PremiumUser %s: %s ))",SpielerName(playerid),text);
    SendClientMessageToAll(GOLD,string);
    return 1;
    }


    mfg. :thumbup:

    Kannst du nicht Überprüfen das wenn der User "C" drückt bzw. öfters Drückt eine Verwarnung bekommt und bei 3 bekommt er einen Kick. Oder das wenn er "C" drückt und in einem Auto ist, dass er dann dort automatisch Raus geworfen wird.


    Ja, das kann man, die Definition von dem Key ist: "KEY_CROUCH" ;)


    mfg. :thumbup:

    Mir war gerade langweilig und habe mal einen Lustigen Code geschrieben, der es möglich machen würde in einer SendClientMessage $variablen zu verwenden wie in PHP :D


    Sähe dann so aus:



    stock ScmEx(playerid, farbe, format[])
    {
    new z = strfind(format, "$", true);
    if(z > 0)
    {
    new x[64], y;
    x = _strtok(format, z);
    y = (z+1);
    z -= strlen(x);
    strdel(format, z, y);
    strdel(x, 0, 1);
    new text[128];
    strcat(text, "Gustav", sizeof text);
    strins(format, text, z, sizeof text);
    SendClientMessage(playerid, farbe, format);
    return 1;
    }
    else return SendClientMessage(playerid, farbe, format);
    }


    Hier mal ein Beispiel zur Anwendung:


    ScmEx(playerid, rot,"Herzlich willkommen $name !");


    In meinem Codeschnipsel habe ich eine konstante Variable die den Namen regelt, anstatt $name würde dann "Gustav" da stehen :D


    und da ist der Punkt leider kann man das nicht als Include machen, da man den Wert der Variable herbekommen muss, bzw. sie übergeben muss und das erfordert mehr Zeilen Code als ein einfaches format :S


    Naja, trotzdem viel Spaß damit :D


    mfg. :thumbup:

    Schreibe das mal so:


    if (strcmp("/myperso", cmdtext, true) == 0)
    {
    if(GetPVarInt(playerid,"Perso") == 0) return SendClientMessage(playerid,ROT,"Du benötigst einen Personalausweiß!");
    new string[128], name[24], ftext[9];
    GetPlayerName(playerid, name, 24);
    new level = SAccount[playerid][Fraktion];
    if(level == 0) {ftext= "Zivilist"; }
    if(level == 1) {ftext= "LS-PD"; }
    if(level == 2) {ftext= "Medic"; }
    if(level == 3) {ftext= "Ballas"; }
    if(level == 4) {ftext= "Ordnungsamt"; }
    if(level == 5) {ftext= "Grove Street"; }
    if(level == 6) {ftext= "Vagos"; }
    if(level == 7) {ftext= "Keine Angabe"; }
    if(level == 8) {ftext= "Yakuza"; }
    format(string,sizeof(string),"Name: %s\n Alter: %d\n Fraktion: %s\n Herkunft: Los Santos",name,SAccount[playerid][Alter],ftext);
    ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX,"Dein Personalausweiss",string,"OK","");
    return 1;
    }
    SAccount[playerid][Alter] noch bitte auf deins anpassen in der Formatierung ;)


    mfg. :thumbup: