Error im Bannsystem

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
  • Hollo,
    ich habe einen Error in meinem Bannsystem, den ich nicht rausbekomme.



    if (strcmp("/ban", cmdtext, true, 10) == 0)
    {
    if(pInfo[playerid][pAdmin] >= 3)
    {
    new giveplayerid, reason[50], params[128];
    if(sscanf(params, "us", giveplayerid, reason))
    {
    new name[MAX_PLAYER_NAME], givenname[MAX_PLAYER_NAME], germangivenstring[100], englishgivenstring[100], germanallstring[100], englishallstring[100];
    GetPlayerName(playerid, name, sizeof(name));
    GetPlayerName(giveplayerid, givenname, sizeof(givenname));
    format(germangivenstring,sizeof(germangivenstring),"Du wurdest von %s gebannt. Grund: %s",name,reason);
    format(englishgivenstring,sizeof(englishgivenstring),"%s has you banned. Reason: %s",name,reason);
    SendPlayerMessage(giveplayerid, RED, germangivenstring, englishgivenstring);
    format(germanallstring,sizeof(germanallstring),"%s hat %s gebannt. Grund: %s",name,givenname,reason);
    format(englishallstring,sizeof(englishallstring),"%s has %s banned. Reason: %s",name,givenname,reason);
    SendAllPlayerMessage(RED, germanallstring, englishallstring);
    pInfo[giveplayerid][pBanned] = 1;
    pInfo[giveplayerid][pBanReason] = reason;
    }
    else
    {
    SendPlayerMessage(playerid, RED, "/ban [ID/Name] [Grund]", "/ban [ID/NAME] [Reason]");
    }
    }
    else
    {
    SendPlayerMessage(playerid, RED, "Du bist kein Admin!", "You're not an admin!");
    }
    return 1;
    }

    Code
    A:\Mark\Desktop\Stunt\gamemodes\gamemode.pwn(345) : error 047: array sizes do not match, or destination array is too small


    Danke im vorraus.

    3 Mal editiert, zuletzt von Mark () aus folgendem Grund: [pwn] vergessen; Überschrift angepasst; Text versucht einzurücken

  • Zitat

    Du hast der Variable bspw durch ein "new variable[10]" eine gewisse Anzahl an Dimensionen gegeben. In diesem Beispiel 10 (variable[0] - variable[9]).
    Nun kannst du aber auch nur diese nutzen.
    Der Fehler tritt auf wenn du also bspw nur 10 Dimensionen erstellst, aber versuchst weitere Dimensionen anzusprechen,
    also du bspw versucht, nun die Variable "variable[200]" zu nutzen.

  • ocmd:ban(playerid,params[])
    {
    if(pInfo[playerid][pAdmin])return SendClientMessage(playerid,ROT,"Du bis kein keine Rechte für diesen Befehl.");
    new pID, reason[128],string[128];
    if(sscanf(params,"us",pID,reason))return SendClientMessage(playerid,ROT,"Benutze: /ban [Spieler/ID] [Grund]");
    format(string,sizeof(string),"AdmCmd: %s wurde von %s gebannt. Grund: %s",SpielerName(pID),SpielerName(playerid),reason);
    SendClientMessageToAll(ROT,string);
    sInfo[pID][pBanned] = 1;
    Ban(pID);
    return 1;
    }


    Hier, kurz und Knapp

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen