Problem mit sscanf

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
  • Hallo Community,
    Seit ich in meinem script sscanf.inc verwendet gehen einige befehle nicht mehr. bei manchen musste ich schon die schreibe weise ändern. manchmal hilft es manchmal nicht
    hat einer ne Idee wie ich das behebe.
    mfg
    Daniel

    SA:MP Projekt Geplant!

  • Thx also er zeigt mir nur an was ich in OnPlayerComand habe also Diesen Befehl giebt es auf RrL nicht
    hier mein need befehl:
    ocmd:need(playerid,params[])
    {
    new string1[111], needg[123];
    new string2[111], needf[123];
    if(sscanf(params,"u",needf,needg))return SendClientMessage(playerid,rot,"/need [SAPD/Medic] [grund]");
    {
    if(strcmp(needf,"SAPD",true) == 0)
    {
    if(nf[playerid][nfFrakt] == 1)return SCM(sid,rot,"Du hast schon Angerufen gebe /cancelneed [SAPD] ein");
    format(string1,sizeof(string1),"[-Zentralle-]Notruf: %s Braucht Hilfe - Grund: %s - Benutze /accept [playerid] [SAPD] um anzunehmen!",SpielerName(playerid),needg);
    new Float:a, Float:b, Float:c;
    GetPlayerPos(playerid,a,b,c);
    nf[playerid][nfX] = a;
    nf[playerid][nfY] = b;
    nf[playerid][nfZ] = c;
    nf[playerid][nfFrakt] = 1;
    nf[playerid][nfGrund] = needg;
    for(new i=0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,1))
    {
    if(GPI(playerid,"Duty")==1)
    {
    SendClientMessage(i,drot,string1);
    }
    }
    }
    }
    }
    if(strcmp(needf,"Medic",true) == 0)
    {
    if(nf[playerid][nfFrakt] == 3)return SCM(sid,rot,"Du hast schon Angerufen gebe /cancelneed [Medic] ein");
    format(string2,sizeof(string2),"[-Zentralle-]Notruf: %s Braucht Hilfe - Grund: %s - Benutze /accept [playerid] [Medic] um anzunehmen!",SpielerName(playerid),needg);
    new Float:a, Float:b, Float:c;
    GetPlayerPos(playerid,a,b,c);
    nf[playerid][nfX] = a;
    nf[playerid][nfY] = b;
    nf[playerid][nfZ] = c;
    nf[playerid][nfFrakt] = 3;
    nf[playerid][nfGrund] = needg;
    for(new i=0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,3))
    {
    if(GPI(playerid,"Duty")==1)
    {
    SendClientMessage(i,drot,string2);
    }
    }
    }
    }
    }
    }
    return 1;

    mfg
    Daniel

    SA:MP Projekt Geplant!

  • Probier den Befehl für einen Test mal auf dcmd umschreiben.
    #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) +
    dcmd(need,4,cmdtext)
    dcmd_need(playerid,params[])
    {
    new string1[111], needg[123];
    new string2[111], needf[123];
    if(sscanf(params,"u",needf,needg))return SendClientMessage(playerid,rot,"/need [SAPD/Medic] [grund]");
    {
    if(strcmp(needf,"SAPD",true) == 0)
    {
    if(nf[playerid][nfFrakt] == 1)return SCM(sid,rot,"Du hast schon Angerufen gebe /cancelneed [SAPD] ein");
    format(string1,sizeof(string1),"[-Zentralle-]Notruf: %s Braucht Hilfe - Grund: %s - Benutze /accept [playerid] [SAPD] um anzunehmen!",SpielerName(playerid),needg);
    new Float:a, Float:b, Float:c;
    GetPlayerPos(playerid,a,b,c);
    nf[playerid][nfX] = a;
    nf[playerid][nfY] = b;
    nf[playerid][nfZ] = c;
    nf[playerid][nfFrakt] = 1;
    nf[playerid][nfGrund] = needg;
    for(new i=0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,1))
    {
    if(GPI(playerid,"Duty")==1)
    {
    SendClientMessage(i,drot,string1);
    }
    }
    }
    }
    }
    if(strcmp(needf,"Medic",true) == 0)
    {
    if(nf[playerid][nfFrakt] == 3)return SCM(sid,rot,"Du hast schon Angerufen gebe /cancelneed [Medic] ein");
    format(string2,sizeof(string2),"[-Zentralle-]Notruf: %s Braucht Hilfe - Grund: %s - Benutze /accept [playerid] [Medic] um anzunehmen!",SpielerName(playerid),needg);
    new Float:a, Float:b, Float:c;
    GetPlayerPos(playerid,a,b,c);
    nf[playerid][nfX] = a;
    nf[playerid][nfY] = b;
    nf[playerid][nfZ] = c;
    nf[playerid][nfFrakt] = 3;
    nf[playerid][nfGrund] = needg;
    for(new i=0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    if(isPlayerInFrakt(i,3))
    {
    if(GPI(playerid,"Duty")==1)
    {
    SendClientMessage(i,drot,string2);
    }
    }
    }
    }
    }
    }
    return 1;
    }

  • if(sscanf(params,"u",needf,needg))return SendClientMessage(playerid,rot,"/need [SAPD/Medic] [grund]");
    richtig:
    if(sscanf(params,"ss",needf,needg))return SendClientMessage(playerid,rot,"/need [SAPD/Medic] [grund]");
    s weil du 2 mal einen string hast, würde ich sagen.