Morte -
Mteck - 29.01.2013
Eu tinha feito uma pergunta aqui No fуrum, mas perdi o tуpico.
Meu sistema as vezes da um bug no kill, mata mata mata mas nгo conta score nem vaipro chat kill, como colocar pra quando o player morrer o score ir para o ъltimo hit.
OnplayerDeath
pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
if(GetPlayerState(killerid) == 2)
{
GetPlayerName(killerid,kickname,sizeof(kickname));
format(kstring,sizeof(kstring),"AdmCmd: %s ID:[%d] cometeu DB em %s ID:[%d] e foi kickado automaticamente!",kickname,killerid,PlayerName(playerid),playerid);
SendClientMessageToAll(0xFF6347AA,kstring);
Kick(killerid);
}
#if KILLS_DEATHS == 1
if(PlayerInfo[killerid][Logged] == 1)
{
format(file, sizeof(file), USERS_FILE, PlayerName(killerid));
dini_IntSet(file, "Kills", dini_Int(file, "Kills")+1);
}
if(PlayerInfo[playerid][Logged] == 1)
{
format(file, sizeof(file), USERS_FILE, PlayerName(playerid));
dini_IntSet(file, "Deaths", dini_Int(file, "Deaths")+1);
}
#endif
if (killerid != INVALID_PLAYER_ID)
{
if (!PlayerShotPlayer[killerid][playerid])
{
Ban(playerid);
}
}
foreach(Player, i)
{
PlayerShotPlayer[i][playerid] = 0;
}
SendDeathMessage(killerid,playerid,reason);
if((gTeam[playerid] == TEAM_HUMAN) && (gTeam[killerid] == TEAM_ZOMBIE))
{
gTeam[playerid] = TEAM_ZOMBIE;
SetPlayerColor(playerid, ADMIN_RED);
SendClientMessage(playerid, 0xF7F700, "[E.z] - Vocк foi Infectado");
SendClientMessageToAll(0xF7F700, "[E.z] - Um Humano foi Infectado");
GivePlayerMoney(killerid, 500);
GameTextForPlayer(killerid,"~p~+2 XP ~n~~w~+$500",6000,4);
SetPlayerScore(killerid, GetPlayerScore(killerid) + 2);
return 1;
}
else if((gTeam[playerid] == TEAM_ZOMBIE) && (gTeam[killerid] == TEAM_HUMAN))
{
SetPlayerColor(playerid, ADMIN_RED);
SendClientMessage(killerid, 0xF7F700, "[E.z] - Vocк Matou um zombie ");
SendClientMessageToAll(0xF7F700, "[E.z] - Um Zombie Foi morto");
GivePlayerMoney(killerid, 250);
GameTextForPlayer(killerid, "~p~+1 XP ~n~~w~+$250", 6000, 4);
SetPlayerScore(killerid, GetPlayerScore(killerid) + 1);
}
return 1;
}
Re: Morte -
Mteck - 29.01.2013
E o chat kill nгo aparece o motivo de todas as mortes lol
pawn Код:
if(killerid == INVALID_PLAYER_ID)
{
SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
}
else
{
SendDeathMessage(killerid,playerid,reason);
}
Re: Morte -
Don_Speed - 29.01.2013
Faзa um teste usando printf .
Re: Morte -
EditPawn - 29.01.2013
Pra que isso?
pawn Код:
if(killerid == INVALID_PLAYER_ID)
{
SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
}
else
{
SendDeathMessage(killerid,playerid,reason);
}
Nгo uso muito essa funзгo, mais acho que apenas usando SendDeathMessage(killerid, playerid, reason); ele ja printa normalmente. Se caso o cara se matar ai eu nгo sei se vai printar o suicidio... Creio que envie a reaзгo na sendDeath... Nгo custa tentar..
Apenas coloque
pawn Код:
SendDeathMessage(killerid, playerid, reason);
Re: Morte -
Mteck - 29.01.2013
Edit, o problema й que ja tentei com
pawn Код:
SendDeathMessage(killerid, playerid, reason);
e nao aparece quando й suicнdio ..
@ e o primeiro ninguйm sabe me ajudar? ;/