01.11.2011, 17:05
(
Последний раз редактировалось whiXґ; 02.11.2011 в 21:24.
)
Bem hoje decidi fazer um sistema de team-killer, muito facil; Sistema simples mais bem util.
Primeiramente criaremos essas stock:
• Explicaзгo:
Ele quer dizer que SetPlayerTeam para team-kill quando configurado para o mesmo time que um outro jogador (o que significa que nгo pode prejudicar as pessoas estabelecem na equipe mesmo que vocк). No entanto, hб um problema com ele onde ele аs vezes ainda permite team-kill.
String[128] - Irб definir o numero de caracters de uma menssagem.
plname[MAX_PLAYER_NAME] - Irб definir o numero maximo de caracters do nome do player.
Gang[MAX_PLAYERS] - Variavel usada para Verificara se os players sгo da mesma gang.
• if(Gang[killerid] == Gang[playerid]) - Isso й, caso o player fizer TK(Team-Kill) acontecerб as linhas abaixo.
• GetPlayerName(killerid, plname, MAX_PLAYER_NAME); - Aqui irб pegar o nome do player que fez o TK(Killerid) ou seja oque matou.
• format(string, sizeof(string), "(TEAM-KILLER): %s cometeu Team-Killer e perdeu -5 de score.", plname); - Isso irб formatar a menssagem, plname = serб exibido o nome do player.
• SendClientMessageToAll(-1,string); - Mandara uma a todos os players.
• SetPlayerScore(killerid, GetPlayerScore(killerid) -5); - O player que fez TK(Team-Kill) Perderб -5 de score.
• GameTextForPlayer(killerid,"~y~VOCE COMETEU TEAM-KILLER SEU ~w~EMO",5000,3); - Mandara uma menssagem na tela.
Bem й um simples sistema Dъvidas/Bugs/Erros? poste aqui e estarei a ajuda vocк.
Primeiramente criaremos essas stock:
pawn Код:
static PlayerTeamFix[MAX_PLAYERS] = {NO_TEAM,...};
stock GetPlayerTeamFixGANG(playerid)
{
return PlayerTeamFixGANG[playerid];
}
stock SetPlayerTeamGANG(playerid,team)
{
PlayerTeamFix[playerid] = team;
SetPlayerTeam(playerid,team);
}
Ele quer dizer que SetPlayerTeam para team-kill quando configurado para o mesmo time que um outro jogador (o que significa que nгo pode prejudicar as pessoas estabelecem na equipe mesmo que vocк). No entanto, hб um problema com ele onde ele аs vezes ainda permite team-kill.
pawn Код:
new
string[128],
plname[MAX_PLAYER_NAME],
Gang[MAX_PLAYERS]
;
plname[MAX_PLAYER_NAME] - Irб definir o numero maximo de caracters do nome do player.
Gang[MAX_PLAYERS] - Variavel usada para Verificara se os players sгo da mesma gang.
pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
if(Gang[killerid] == Gang[playerid]) {
GetPlayerName(killerid, plname, MAX_PLAYER_NAME);
format(string, sizeof(string), "(TEAM-KILLER): %s cometeu Team-Killer e perdeu -5 de score.", plname);
SendClientMessageToAll(-1,string);
SetPlayerScore(killerid, GetPlayerScore(killerid) -5);
GameTextForPlayer(killerid,"~y~VOCE COMETEU TEAM-KILLER SEU ~w~EMO",5000,3);
}
return 1;
}
• GetPlayerName(killerid, plname, MAX_PLAYER_NAME); - Aqui irб pegar o nome do player que fez o TK(Killerid) ou seja oque matou.
• format(string, sizeof(string), "(TEAM-KILLER): %s cometeu Team-Killer e perdeu -5 de score.", plname); - Isso irб formatar a menssagem, plname = serб exibido o nome do player.
• SendClientMessageToAll(-1,string); - Mandara uma a todos os players.
• SetPlayerScore(killerid, GetPlayerScore(killerid) -5); - O player que fez TK(Team-Kill) Perderб -5 de score.
• GameTextForPlayer(killerid,"~y~VOCE COMETEU TEAM-KILLER SEU ~w~EMO",5000,3); - Mandara uma menssagem na tela.
Bem й um simples sistema Dъvidas/Bugs/Erros? poste aqui e estarei a ajuda vocк.