error 047: array sizes do not match, or destination array is too small

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
  • Die Zeilen "aktion = strtok(cmdtext, idx);"


    Der ganze Befehl: (die Fehler sind rot makiert)



    if(strcmp(cmd, "/produkte", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(PlayerInfo[playerid][pMember] >= 0 || PlayerInfo[playerid][pLeader] >= 0)
    {
    tmp = strtok(cmdtext, idx);
    new aktion[200];
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GOLD, "____________________________|Prdoukthilfe|____________________________");
    SendClientMessage(playerid, COLOR_WHITE, "Benutzung: /produkte [Aktion]");
    SendClientMessage(playerid, COLOR_WHITE, "Verfügbare Funktionen: kaufen, verkaufen, anzeigen");
    return 1;
    }
    if(strcmp(tmp, "kaufen", true) == 0)
    {
    if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 456)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Dieses Fahrzeug kann keine Produkte ausliefern!");
    return 1;
    }
    if(!IsPlayerInRangeOfPoint(playerid, 50, 1957.5536,-2183.4856,13.5469))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du bist nicht am Eingang vom Los Santos Airport!");
    return 1;
    }
    aktion = strtok(cmdtext, idx);
    if(!strlen(aktion))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Benutzung: /produkte kaufen [Anzahl]");
    SendClientMessage(playerid, COLOR_GRAD1, "*Preis pro Produkt: 50$, Maximale Produkte: 100");
    return 1;
    }
    new menge;
    menge = strval(aktion);
    new preis = menge*50;
    if(menge > LSAWaren)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Derzeit haben wir nicht soviele Produkte auf Lager!");
    return 1;
    }
    if(menge < 1 || menge > 100)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du kannst mindestens 1 Produkt und höchstens 100 Produkte kaufen!");
    return 1;
    }
    if(menge + ProdsDabei[playerid] > 100)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "So viele Produkte passen nicht mehr rein!");
    format(string, sizeof(string), "Produkte dabei: %d/100",ProdsDabei[playerid]);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    return 1;
    }
    if(preis > GetPlayerMoney(playerid))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du hast nicht genug Geld!");
    return 1;
    }
    ProdsDabei[playerid] = menge;
    LSAWaren -= menge;
    GivePlayerMoney(playerid, -preis);
    format(string, sizeof(string), "*Du hast %d Produkte für %d$ gekauft.", menge, preis);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Du kannst sie nun an Geschäfte verkaufen.");
    new string2[200];
    format(string2, sizeof(string2), "[Produktverkauf]\nPreis pro Produkt: 50$\nProdukte auf Lager: %d\nKaufen mit /produkt\nEinkauf nur mit Prodlaster", LSAWaren);
    Update3DTextLabelText(LSWText, 0xFFFFFFFF, string2);
    SaveStuff();
    return 1;
    }
    else if(strcmp(tmp, "verkaufen", true) == 0)
    {
    aktion = strtok(cmdtext, idx);
    if(!strlen(aktion))
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Benutzung: /produkte verkaufen [Anzahl]");
    return 1;
    }
    if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 456)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Dieses Fahrzeug kann keine Produkte ausliefern!");
    return 1;
    }
    for(new i = 0; i < sizeof(BizzInfo); i++)
    {
    new menge = strval(aktion);
    new preis = menge*BizzInfo[i][bPriceProd];
    if (IsPlayerInRangeOfPoint(playerid,10.0,BizzInfo[i][bEntranceX], BizzInfo[i][bEntranceY], BizzInfo[i][bEntranceZ]) && BizzInfo[i][bOwned] == 1)
    {
    if(BizzInfo[i][bProducts] + menge > BizzInfo[i][bMaxProducts])
    {
    GameTextForPlayer(playerid, "~r~Wir benoetigen nicht soviele Produkte!", 5000, 1);
    PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
    return 1;
    }
    if(preis > BizzInfo[i][bTill])
    {
    GameTextForPlayer(playerid, "~r~Wir haben zu wenig Geld!", 5000, 1);
    PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
    return 1;
    }
    ProdsDabei[playerid] -= menge;
    GivePlayerMoney(playerid, preis);
    BizzInfo[i][bProducts] += menge;
    BizzInfo[i][bTill] -= preis;
    new string3[200];
    format(string3, sizeof(string3), "[%s]\nInhaber: %s\nTeilhaber: %s\nEintrittspreis: %d$\nLevel: %d\nProdukte: %d/%d\nPreis pro Produkt: %d", BizzInfo[i][bMessage],BizzInfo[i][bOwner],BizzInfo[i][bExtortion],BizzInfo[i][bEntranceCost],BizzInfo[i][bLevelNeeded],BizzInfo[i][bProducts],BizzInfo[i][bMaxProducts],BizzInfo[i][bPriceProd]);
    Update3DTextLabelText(BizzInfo[i][bText],COLOR_BUYED,string3);
    format(string, sizeof(string), "%d Produkte für %d$ verkauft, Produkte: %d/100.", menge,preis,ProdsDabei[playerid]);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    ConsumingMoney[playerid] = 1;
    OnPropUpdate();
    return 1;
    }
    }
    for(new s = 0; s < sizeof(SBizzInfo); s++)
    {
    new menge = strval(aktion);
    new preis = menge*SBizzInfo[s][sbPriceProd];
    if (IsPlayerInRangeOfPoint(playerid,10.0,SBizzInfo[s][sbEntranceX], SBizzInfo[s][sbEntranceY], SBizzInfo[s][sbEntranceZ]) && SBizzInfo[s][sbOwned] == 1)
    {
    if(SBizzInfo[s][sbProducts] + menge > SBizzInfo[s][sbMaxProducts])
    {
    GameTextForPlayer(playerid, "~r~Wir benoetigen nicht soviele Produkte!", 5000, 1);
    PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
    return 1;
    }
    if(menge > ProdsDabei[playerid])
    {
    format(string, sizeof(string), "Du hast nur %d Produkte dabei!", ProdsDabei[playerid]);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    return 1;
    }
    if(preis > SBizzInfo[s][sbTill])
    {
    GameTextForPlayer(playerid, "~r~Wir haben zu wenig Geld!", 5000, 1);
    PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
    return 1;
    }
    ProdsDabei[playerid] -= menge;
    format(string, sizeof(string), "%d Produkte für %d$ verkauft, Produkte: %d/100.", menge,preis,ProdsDabei[playerid]);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    GivePlayerMoney(playerid, preis);
    SBizzInfo[s][sbProducts] += menge;
    SBizzInfo[s][sbTill] -= preis;
    new string4[200];
    format(string4, sizeof(string4), "[%s]\nInhaber: %s\nTeilhaber: %s\nEintrittspreis: %d$\nLevel: %d\nProdukte: %d/%d\nPreis pro Produkt: %d", SBizzInfo[s][sbMessage],SBizzInfo[s][sbOwner],SBizzInfo[s][sbExtortion],SBizzInfo[s][sbEntranceCost],SBizzInfo[s][sbLevelNeeded],SBizzInfo[s][sbProducts],SBizzInfo[s][sbMaxProducts], SBizzInfo[s][sbPriceProd]);
    Update3DTextLabelText(SBizzInfo[s][sbText],COLOR_BUYED,string4);
    ConsumingMoney[playerid] = 1;
    OnPropUpdate();
    return 1;
    }
    }
    GameTextForPlayer(playerid, "~r~Keine Firma in der Naehe", 5000, 1);
    return 1;
    }
    else if(strcmp(tmp, "anzeigen", true) == 0)
    {


    if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 456)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du bist in keinem Yankee");
    return 1;
    }
    new prods = ProdsDabei[playerid];
    format(string, sizeof(string), "*Produkte dabei: %d/100", prods);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, "ERROR!");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Logg dich erst ein!");
    }
    return 1;
    }


  • Hat geklappt danke, wenn wir schon dabei sind:


    warning 202: number of arguments does not match definition


    Zeile:
    SetPlayerPos(playerid,2232.1707,-1159.8075,25.8906,89.1050);



    else if(IsPlayerInRangeOfPoint(playerid,3.0,2216.3401,-1150.5100,1025.7969))
    {
    GameTextForPlayer(playerid, "~w~Auf wiedersehen!", 5000, 1);
    SetPlayerInterior(playerid, 0);
    SetPlayerPos(playerid,2232.1707,-1159.8075,25.8906,89.1050);
    }