Mehrere Fehler

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 Tag,
    ich habe schon lange mehrere Fehler z.B.


    Ich habe ein /stats aber wenn ich INgame das eingebe passiert das : http://img5.fotos-hochladen.ne…ads/samp315qzfsg2bpoy.png
    Code :
    if(strcmp(cmdtext,"/stats",true)==0)
    {
    new dialogstring[50],sName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,sName,sizeof(sName));
    format(dialogstring,sizeof(dialogstring),"Willkommen %s\n\nKills: %d\nTode: %d\n",sName,GetPVarInt(playerid,"Kills"),GetPVarInt(playerid,"Tode"));
    ShowPlayerDialog(playerid,Stats,DIALOG_STYLE_MSGBOX,"Deine Statistiken %s",dialogstring,"Oke","Abbrechen",sName);
    return 1;
    }
    return 0;
    Fehler Codes

    Spoiler anzeigen
    C:\Users\Patrick\Desktop\Server\gamemodes\IRP-City.pwn(262) : warning 217: loose indentation
    C:\Users\Patrick\Desktop\Server\gamemodes\IRP-City.pwn(275) : warning 217: loose indentation
    C:\Users\Patrick\Desktop\Server\gamemodes\IRP-City.pwn(302) : warning 206: redundant test: constant expression is non-zero
    C:\Users\Patrick\Desktop\Server\gamemodes\IRP-City.pwn(365) : warning 217: loose indentation
    C:\Users\Patrick\Desktop\Server\gamemodes\IRP-City.pwn(366) : warning 217: loose indentation
    C:\Users\Patrick\Desktop\Server\gamemodes\IRP-City.pwn(373) : warning 202: number of arguments does not match definition
    C:\Users\Patrick\Desktop\Server\gamemodes\IRP-City.pwn(379) : warning 225: unreachable code
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase

    Spoiler anzeigen
    7 Warnings.


    Dann noch ein Givemoney befehl :
    ocmd:givemoney(playerid,params[])
    {
    if(IsPlayerAdmin(playerid))
    {
    new pID, Geld, msg[144];
    if(sscanf(params,"ui",pID,Geld))return SendClientMessage(playerid,GELB,"/givemoney [spieler] [Betrag] ");
    if(1||90000)return SendClientMessage(playerid,ROT,"Bitte gültigen Betrag angeben.");
    SetPVarInt(pID,"Geld",Geld);
    SpielerSpeichern(pID);
    format(msg, sizeof(msg),"Du hast von einem Admin geld überwiesen bekommen.");
    SendClientMessage(playerid,BLAU,msg);
    return 1;
    }
    else
    {
    SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    }
    return 1;
    }
    Ingame ist immer Gültigen betrag angeben.


    Und dann noch ne Frage,
    wie speichere ich Skins.



    MFG Ffreak

  • 1. Schreib es so:


    if(!strcmp(cmdtext,"/stats",true)) {
    new dialogstring[50],header[18 + MAX_PLAYER_NAME],sName[MAX_PLAYER_NAME];
    GetPlayerName(playerid,sName,sizeof(sName));
    format(dialogstring,sizeof(dialogstring),"Willkommen %s\n\nKills: %d\nTode: %d\n",sName,GetPVarInt(playerid,"Kills"),GetPVarInt(playerid,"Tode"));
    format(header,sizeof header,"Deine Statistiken %s",sName);
    ShowPlayerDialog(playerid,Stats,DIALOG_STYLE_MSGBOX,header,dialogstring,"Oke","Abbrechen");
    return 1;
    }


    2. Schreibe es so:


    ocmd:givemoney(playerid,params[]) {
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    new pID, Geld, msg[144];
    if(sscanf(params,"ui",pID,Geld))return SendClientMessage(playerid,GELB,"/givemoney [spieler] [Betrag] ");
    if(Geld < 1 || Geld > 90000)return SendClientMessage(playerid,ROT,"Bitte gültigen Betrag angeben.");
    SetPVarInt(pID,"Geld",Geld);
    SpielerSpeichern(pID);
    format(msg, sizeof(msg),"Du hast von einem Admin geld überwiesen bekommen.");
    SendClientMessage(pID,BLAU,msg);
    return 1;
    }


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Oke und nun möchte ich das jeder das dann bekommt, wie mache ich das.


    Habe diesen Code : ocmd:givemoneyall(playerid,params[]) {
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    new pID, Geld, msg[144];
    if(sscanf(params,"ui",pID,Geld))return SendClientMessage(playerid,GELB,"/givemoneyall [spieler] [Betrag] ");
    if(Geld < 1 || Geld > 900000000)return SendClientMessage(playerid,ROT,"Bitte gültigen Betrag angeben.");
    SetPVarInt(pID,"Geld",Geld);
    GivePlayerMoney(pID, Geld);
    SpielerSpeichern(pID);
    format(msg, sizeof(msg),"Du hast vom System %i$ überwiesen bekommen.",Geld);
    SendClientMessagetoAll(pID,BABYBLAU,msg);
    return 1;
    }
    Help me

  • SetPVarInt(pID,"Geld",Geld);
    GivePlayerMoney(pID, Geld);
    SpielerSpeichern(pID);


    Anstatt dem da, das so schreiben:


    for(new i; i!=MAX_PLAYERS; i++) if(IsPlayerConnected(i)) SetPVarInt(i,"Geld",Geld),GivePlayerMoney(i,Geld),SpielerSpeichern(i);


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • ocmd:givemoneyall(playerid,params[]) {
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    new Geld , msg[144];
    if(sscanf(params,"ui",Geld))return SendClientMessage(playerid,GELB,"/givemoneyall [spieler] [Betrag] ");
    if(Geld < 1 || Geld > 900000000)return SendClientMessage(playerid,ROT,"Bitte gültigen Betrag angeben.");
    for(new i; i!=MAX_PLAYERS; i++) if(IsPlayerConnected(i)) SetPVarInt(i,"Geld",Geld),GivePlayerMoney(i,Geld),SpielerSpeichern(i);
    format(msg, sizeof(msg),
    SendClientMessageToAll(BABYBLAU,"Du hast vom System %i$ überwiesen bekommen.",Geld,msg);
    return 1;
    } Wo ist der Fehler hab 1 Error
    :
    C:\Users\Patrick\Desktop\Server\gamemodes\IRP-City.pwn(277) : warning 217: loose indentation
    C:\Users\Patrick\Desktop\Server\gamemodes\IRP-City.pwn(304 -- 305) : warning 202: number of arguments does not match definition
    C:\Users\Patrick\Desktop\Server\gamemodes\IRP-City.pwn(304 -- 305) : warning 202: number of arguments does not match definition
    C:\Users\Patrick\Desktop\Server\gamemodes\IRP-City.pwn(304 -- 305) : error 035: argument type mismatch (argument 3)
    C:\Users\Patrick\Desktop\Server\gamemodes\IRP-City.pwn(373) : warning 217: loose indentation
    C:\Users\Patrick\Desktop\Server\gamemodes\IRP-City.pwn(384) : warning 217: loose indentation
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Error.

  • machs so
    ocmd:giveallmoney(playerid,params[])
    {
    new amount,msg[128];
    if(sscanf(params,"d",amount))return SendClientMessage(playerid, -1 ," /giveallmoney <betrag>");
    if(amount < 0 || amount > 9000000)return SendClientMessage(playerid, -1 , " Bitte gültigen Betrag angeben!");
    for(new i; i!=MAX_PLAYERS; i++)
    {
    if(!IsPlayerConnected(i))continue;
    SetPVarInt(i,"Geld",Geld),GivePlayerMoney(i,Geld),SpielerSpeichern(i);
    }
    format(msg, sizeof(msg),"Du hast vom System %i$ überwiesen bekommen.",amount);
    SendClientMessagetoAll(pID,BABYBLAU,msg);
    return 1;
    }