public OnPlayerDeath(playerid, killerid, reason) { new name[MAX_PLAYER_NAME+1]; new string[256]; GetPlayerName(playerid, name, sizeof(name)); format(string, sizeof(string), "*** %s died.", name, reason); SendClientMessageToAll(COLOR_ORANGE, string); SetPlayerWorldBounds(playerid,20000.0000,-20000.0000,20000.0000,-20000.0000); //Reset world to player printf("OnPlayerDeath(%d, %d, %d)", playerid, killerid, reason); MyDeaths[playerid]++; //Put at top of the function under printf(.....) if(killerid == INVALID_PLAYER_ID) { SendDeathMessage(INVALID_PLAYER_ID,playerid,reason); } else { if(gTeam[killerid] != gTeam[playerid]) { // Valid kill SendDeathMessage(killerid,playerid,reason); SetPlayerScore(killerid,GetPlayerScore(killerid)+1); MyKills[killerid]++; } new deathreason[20]; GetPlayerName(playerid, name, sizeof(name)); GetWeaponName(reason, deathreason, 20); if (killerid == INVALID_PLAYER_ID) { switch (reason) { case WEAPON_DROWN: { format(string, sizeof(string), "*** %s drowned.)", name); } default: { if (strlen(deathreason) > 0) { format(string, sizeof(string), "*** %s died. (%s)", name, deathreason); } else { format(string, sizeof(string), "*** %s died.", name); } } } } else { new killer[MAX_PLAYER_NAME]; GetPlayerName(killerid, killer, sizeof(killer)); if (strlen(deathreason) > 0) { format(string, sizeof(string), "*** %s killed %s. (%s)", killer, name, deathreason); } else { format(string, sizeof(string), "*** %s killed %s.", killer, name); } } SendClientMessageToAll(COLOR_RED, string); } return 1; }