Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // SendClientMessageEx, manda uma mensagem formata sem precisar do uso de format... By rjj ou ken
- stock SendClientMessageEx(playerid, color, str[], ...)
- {
- #define isint(%0) (getarg(%0, 0) == EOS)
- for(new x = 0; getarg(2, x) != EOS; x++)
- {
- str[x] = getarg(2, x);
- }
- if((numargs()-3) == 0) return SendClientMessage(playerid, color, str);
- if((numargs()-3) > 3) return true;
- new y;
- new final[128];
- new string[6][128];
- y = 3;
- while(y < numargs())
- {
- if(!isint(y))
- {
- for(new x = 0; x < sizeof(string); x++)
- {
- string[y][x] = getarg(y, x);
- if(string[y][x] == EOS) break;
- }
- }
- else
- {
- string[y][0] = getarg(y, 0);
- }
- y++;
- }
- switch(numargs()-3)
- {
- case 1: //1 argumento
- {
- if(isint(3)) format(final,128,str,string[3][0]);
- else if(!isint(3)) format(final,128,str,string[3]);
- }
- case 2: //2 argumentos
- {
- if(isint(3) && isint(4)) format(final,128,str,string[3][0], string[4][0]);
- else if(!isint(3) && isint(4)) format(final,128,str,string[3], string[4][0]);
- else if(isint(3) && !isint(4)) format(final,128,str,string[3][0], string[4]);
- else if(!isint(3) && !isint(4)) format(final,128,str,string[3], string[4]);
- }
- case 3: //3 argumentos
- {
- if(isint(3) && isint(4) && isint(5)) format(final,128,str,string[3][0],string[4][0],string[5][0]);
- else if(!isint(3) && !isint(4) && !isint(5)) format(final,128,str,string[3],string[4],string[5]);
- else if(isint(3) && !isint(4) && isint(5)) format(final,128,str,string[3][0],string[4],string[5][0]);
- else if(isint(3) && isint(4) && !isint(5)) format(final,128,str,string[3][0],string[4][0],string[5]);
- else if(isint(3) && !isint(4) && !isint(5)) format(final,128,str,string[3][0],string[4],string[5]);
- else if(!isint(3) && isint(4) && isint(5)) format(final,128,str,string[3],string[4][0],string[5][0]);
- else if(isint(3) && isint(4) && !isint(5)) format(final,128,str,string[3][0],string[4][0],string[5]);
- else if(!isint(3) && isint(4) && !isint(5)) format(final,128,str,string[3],string[4][0],string[5]);
- else if(isint(3) && !isint(4) && isint(5)) format(final,128,str,string[3][0],string[4],string[5][0]);
- else if(!isint(3) && isint(4) && isint(5)) format(final,128,str,string[3],string[4][0],string[5][0]);
- else if(!isint(3) && !isint(4) && isint(5)) format(final,128,str,string[3],string[4],string[5][0]);
- }
- }
- SendClientMessage(playerid, color, final);
- return true;
- }
- //Exemplo de uso
- new n = -1;
- SendClientMessageEx(playerid, -1, "Testando %d", n);
- // Printaria -1
Advertisement
Add Comment
Please, Sign In to add comment