SA-MP Forums Archive
[Ajuda] Duvidas Sobre Pawno - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Duvidas Sobre Pawno (/showthread.php?tid=625679)



Duvidas Sobre Pawno - affasdas - 04.01.2017

Tenho duas dъvidas, a primeira й que, por quк quando vou dar valor a uma variбvel, com, sei lб o DOF2 ele pede um tamanho maior que o conteъdo da variбvel, por exemplo, a variбvel tem valor[32] espaзos, e quando faзo valor[32] = DOF2_GetString(file,"NomeDoPlayer"); //Nome do Player = Batata ele pede uma variavel com [60] espaзos por exemplo?

Outra coisa й que fiz um comando de mensagem, mas jб tentei modificar o tamanho da str e ele continua salvando um valor fixo dentro dessa variбvel.

PHP код:
CMD:msg(playerid,params[]){
    new 
cell,id,x;
    new 
str[160];
    if(
sscanf(params,"is",cell,str)) return SendClientMessage(playerid,COR_AVISO,"Use /msg [CELULAR] [MSG]");
    for(new 
i;i<MAX_PLAYERS;i++) if(Player[playerid][Celular]!=cellx++;
    if(
x==MAX_PLAYERS) return SendClientMessage(playerid,COR_AVISO,"O usuбrio estб offline ou o nъmero do celular й invбlido!");
    
format(str,sizeof(str),"{C68700}Mensagem de %s [%d]: %s",GetPlayerNameEx(playerid),playerid,str);
    
id=VerificarCell(cell);
    
SendClientMessage(id,0xC68700FF,str);
    return 
1;




Re: Duvidas Sobre Pawno - MultiKill - 05.01.2017

Primeiro pawno й o editor e pawn й a linguagem.

Primeira dъvida:

Isso acontece pela string que a funзгo retorna й maior que a variбvel que vocк esta tentando armazenar, exemplo:

PHP код:
main(){
    new 
str[25];
    
str Funcao();
}

Funcao(){
    
//string com 50 cйlulas
    
new st[50] = "Hello World!";
    return 
st;

No cуdigo acima irб dar um erro pois a variбvel de destino й menor do que a da funзгo, para evitar esse erro vocк deve utilizar a funзгo strcat:

PHP код:
new str[25];
strcat(strFuncao(), sizeof str); 
Segunda dъvida:

Utilize uma segunda variбvel para a formataзгo final, mas lembre-se que o chat sу suporta apenas 144 caracteres, entгo com base nisso vocк pode limitar o tamanho da mensagem do jogador.

PHP код:
format(string,sizeof(string), "{C68700}Mensagem de %s [%d]: %s",GetPlayerNameEx(playerid),playerid,str);

SendClientMessage(id,0xC68700FF,string);