Jump to content
  • 0

pomoc Krátka správa


Twixo

Dotaz

Popis problému:

Zdravím,

 

mám problém so správou. Idete o to, že som spravil PM príkaz, lenže vždy je správa krátka (cca 30 znakov). Nemyslím si, že je chyba v príkaze, ale nikdy nevieš, takže po neúspešnom hľadaní chyby som sa obrátil na Vás. Prikládam pre istotu i pm cmd.

 

Chyby/varování kompilátoru a při běhu:

--

 

Kód:

 

CMD:pm(playerid, params[])
{
    new str[768], id, str2[768];
    if(sscanf(params, "us", id, str)) return SendClientMessage(playerid, 0xFF0000FF,"[ ! ] {FFFFFF}/pm [ id ] [ správa ]");
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, 0xFF0000FF,"[ ! ] {FFFFFF}Hráč neni pripojený");
    format(str2,sizeof(str2),"PM pre %s(%d): %s",Jmeno(id),id,str);
    SendClientMessage(playerid, 0xFFFF00FF, str2);
    format(str2,sizeof(str2),"PM od %s(%d): %s",Jmeno(playerid),playerid,str);
    SendClientMessage(playerid, 0xFFFF00FF, str2);
    if(pmsound[id] == 1) return PlayerPlaySound(id,1085,0.0,0.0,0.0);
    return 1;
}

 

 

 

Dodatečné poznámky:

--

Link to comment
Share on other sites

10 odpovědí na tuto otázku

Recommended Posts

  • 0
  • Globální moderátor

Off-topic!

Vyvarujte se offtopicu! Další zpráva reagující na předchozí zprávu bude vyhodnocena jako spam

 

Já si dovolím trochu odbočit než bude "platit" toto upozornění:

@Weed/DeNiSko: PM se snad nedá ani jinak udělat... tvůj argument "částečný kód z módu" je nevalidní

 

k problému, řekl bych, že musíš specifikovat max. délku stringu v sscanfu. Jistý si ale nejsem

Link to comment
Share on other sites

  • 0

Kromě toho, že délka 768 je nesmysl icon_e_biggrin.gif tak musíš sscanfu nějak říct, kde má konečnou délku řetězce:

 

if(sscanf(params, "rs[140]", id, str)) return SendClientMessage(playerid, 0xFF0000FF,"[ ! ] {FFFFFF}/pm [ id ] [ správa ]");
Link to comment
Share on other sites

  • 0

je to tvoje

//{FFD70E}
CMD:pm(playerid, params[]){
        new id, text[144],string[144];
        if (!sscanf(params, "us", id, text)) {
        if (id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "{88FF00}Hráč není připojený");
        if (id == playerid) return SendClientMessage(playerid, 0xEFEFF7AA, "{88FF00}Nemůžeš psát sám sebe !");
        if (strlen(text) > 144) return SendClientMessage(playerid, -1, "{88FF00}Zadal jste do textu příliš dlouhý text !");
        if(PlayerBlokPM[id][playerid] == 1)    return SendClientMessage(playerid,-1,"{7700FF}Tento hráč si zablokoval příjem zpráv od tebe");
        if(Set[Pmky][id] == 0)                        return SendClientMessage(playerid,-1,"{88FF00}Tento hráč si {7700FF}zablokoval {88FF00}příjem zpráv od všech");
        if(Sav[MuteOn][playerid] > 0 || umlcen[playerid] > 0) return SendClientMessage(playerid, 0xFF0000FF, "[ ! ] {FFFFFF}Jste umlčen !");
        format(string, 144, "PM od {00FF00}%s(%d):{FFD70E} %s", Jmeno(playerid), playerid,text);
        SendClientMessage(id, 0xFFD70EFF, string);
          format(string, 144, "PM pro {00FF00}%s(%d):{FFD70E} %s", Jmeno(id), id, text);
        SendClientMessage(playerid, 0xFFD70EFF, string);
        pInfo[id][Last] = playerid;
        if(Set[pmzvuky][id] == 1) PlayMySound(id);
        if(afk[id] == true)SendClientMessage(playerid,0xff0000AA,"{7700FF}Tento hráč je AFK !");
        if(Sav[MuteOn][id] > 0 || umlcen[id] > 0)SendClientMessage(playerid,0xFF0000AA,"{7700FF}Tento hráč je umlčený, zřejmě Vám neodpoví");
        } else return SendClientMessage(playerid, -1, "{88FF00}Použití: {7700FF}/pm [ ID ] [ TEXT ]");
        return CMD_SUCCESS;
}

 

toto je z Ganja Party

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...