Try this :
PHP Code:
#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#define VERSION "0.0.3"
#define MAX_PLAYERS 32
#define TEAM_T 1
#define TEAM_CT 2
#define XO_PLAYER 5
#define m_iTeam 114
#define cs_get_user_team_index(%1) get_pdata_int(%1, m_iTeam, XO_PLAYER)
#define cs_set_user_team_index(%1,%2) set_pdata_int(%1, m_iTeam, %2, XO_PLAYER)
#define IsPlayer(%1) ( 1 <= %1 <= g_iMaxPlayers )
new g_iMaxPlayers
new g_iVictimTeam
new HamHook:g_iHhTakeDamagePost
public plugin_init()
{
register_plugin("Real FriendlyFire", VERSION, "ConnorMcLeod")
RegisterHam(Ham_TakeDamage, "player", "Player_TakeDamage_Pre")
g_iHhTakeDamagePost = RegisterHam(Ham_TakeDamage, "player", "Player_TakeDamage_Post", 1)
DisableHamForward( g_iHhTakeDamagePost )
g_iMaxPlayers = get_maxplayers()
}
public Player_TakeDamage_Pre(iVictim, iInflictor, iAttacker)
{
if( IsPlayer( iAttacker ) && iVictim != iAttacker )
{
g_iVictimTeam = cs_get_user_team_index(iVictim)
if( g_iVictimTeam == cs_get_user_team_index(iAttacker) )
{
cs_set_user_team_index(iVictim, g_iVictimTeam == TEAM_T ? TEAM_CT : TEAM_T)
EnableHamForward( g_iHhTakeDamagePost )
return HAM_HANDLED
}
}
return HAM_IGNORED
}
public Player_TakeDamage_Post(iVictim)
{
cs_set_user_team_index(iVictim, g_iVictimTeam)
DisableHamForward( g_iHhTakeDamagePost )
}
__________________