Algumas duvidas
#1

Como faзo pra que quando tal jogador faзa alguma coisa apareзa uma mensagem com o nome dele para todo o server?

Exemplo:

O Jogador1 digita /m4

apareзa assim pro server todo: Jogador1 comprou m4. Utilize /m4

Ou quando ele mate alguem por exemplo: Jogador1 fuzilou Jogador2.

Obs: Nгo quero nada pronto, so quero que vocкs me ensinem a fazer com que apareзa o nome do jogador que ativou aquela mensagem.
Reply
#2

Arakuta, para isto basta usar OnPlayerDeath

pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
    // killerid = quem matou
    // playerid = quem morreu

    static string[128];
    format(string, 128, "Jogador nъmero %d matou o nъmero %d", killerid, playerid);    
    return SendClientMessageToAll(0xFFFFFFFF, string), true;
}
// Para pegar o nome basta GetPlayerName
Quanto aos comandos:

pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    static string[128];
    format(string, 128, "Jogador nъmero %d digitou %s", playerid, cmdtext);    
    return SendClientMessageToAll(0xFFFFFFFF, string), false;
}

//cmdtext = texto digitado
//playerid = quem digitou
// para pegar name usa GetPlayerName
Й isto, Espero que lhe ajude.
Reply
#3

Deixa eu ver se eu entendi no primeiro cуdigo:

pawn Код:
static string[128];
    format(string, 128, "Jogador nъmero %d matou o nъmero %d",killerid, playerid);    
    return SendClientMessageToAll(0xFFFFFFFF, string), true;
O primeiro %s eh definido pra ser KILLERID o segundo ta definido pro PLAYERID...

Entao se eu alterar pra isso:

pawn Код:
static string[128];
    format(string, 128, "Jogador nъmero %d matou o nъmero %d", playerid, killerid);    
    return SendClientMessageToAll(0xFFFFFFFF, string), true;
Seria o inverso?
Reply
#4

Sim, entгo iria mostrar

"O Jogador 0 matou o nъmero 1"

Sendo que o 1 matou o 0, isto seria o inverso, exatamente

se puder da estrelinha
Reply
#5

Quote:
Originally Posted by arakuta
Посмотреть сообщение
Como faзo pra que quando tal jogador faзa alguma coisa apareзa uma mensagem com o nome dele para todo o server?

Exemplo:

O Jogador1 digita /m4

apareзa assim pro server todo: Jogador1 comprou m4. Utilize /m4
https://sampforum.blast.hk/showthread.php?tid=260920
Reply
#6

sim. a todavia.
Reply
#7

PHP код:
if (strcmp("/steste"cmdtexttrue) == 0)
{
new 
string[128];
new 
pname[MAX_PLAYER_NAME];
GetPlayerName(playeridpnameMAX_PLAYER_NAME);
format(stringsizeof(string), "* O jogador %s digitou o comando /steste!"pname);
SendClientMessageToAll(-1string);
return 
1;
}
//GetPlayerName = pega o nome do player
//format(string....= й a mensagem que vocк quer que apareзa para todos os players
//SendClientMessageToAll = manda a mensagem para todos. 
Morte:
PHP код:
public OnPlayerDeath(playeridkilleridreason)
{
    
GameTextForPlayer(playerid,"~w~Morto",4000,2);
    if(
killerid != INVALID_PLAYER_IDSetPlayerScore(killeridGetPlayerScore(killerid) + 1325);
    
GivePlayerMoney(killerid10000);
    
SendDeathMessage(killeridplayeridreason);
    return 
1;
}
//~w~ Morto = mensagem quando o player morre.
//SetPlayerScore = seta o score do player no caso ali estб + 1325 ou seja o player ganha + 1325 score.
//GivePlayerMoney = da dinheiro pro player.
//SendDeathMessage = aparece a mensagem , que vocк tava querendo ai.
//Se quiser pode tirar a ' ~w~Morto,SetPlayerScore,e o Giveplayermoney :D 
Bom..isso foi o que eu entendi que vocк quer ;s , mais se nгo for isso pode ajudar a alguйm
OBS: Se tiver algo errado[/achoquenгotem;seuacho] me corriga por favor!
Reply
#8

pawn Код:
stock nome(playerid) //coloque no fim do seu gamemode
{
     new Nome[MAX_PLAYER_NAME]; GetPlayerName(playerid, Nome, sizeof(Nome));
     return Nome;
}

//Exemplo:

if(!strcmp(cmd, "/testando", true)) return new j_string[MAX_PLAYER_NAME+15], format(j_string, sizeof j_string, "%s foi para arena", nome(playerid)), SendClientMessageToAll(-1, j_string);

Espero ter ajudado x)
<~~ 'Reputation' ? valeu!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)