Записуешь в CurWeapon условие,если If(p_data[idUser][P_RACE]==RACE_CHAMELEON)
То,if (weaponID == CSW_KNIFE) там записуй переменную к примеру: g_chameleon[idUser] = 1,а если ,if (weaponID != CSW_KNIFE),то g_chameleon[idUser] = 0.
Потом идешь к client_damage
Туда,если if( g_chameleon[iAttacker] == 1),то
Code
new Float:vVelocity[3];
entity_get_vector( iVictim, EV_VEC_velocity, vVelocity );
vVelocity[0] = random_float(100.0, 400.0 );
vVelocity[1] = random_float(100.0, 400.0 );
vVelocity[2] = random_float(400.0, 700.0 );
entity_set_vector( iVictim, EV_VEC_velocity, vVelocity );
Для тебя это сложно,но для других понадобится.
Урон:
Code
RegisterHam(Ham_TakeDamage, "player", "FwdTakeDamage", 0)
Code
public FwdTakeDamage(victim, inflictor, attacker, Float:damage, damage_bits)
{
if(g_chameleon[attacker]==1)//переменная исходя из 1 .
{
SetHamParamFloat(4,(damage*1.3)) //умножаем наш урон
}
return HAM_HANDLED
}
P.S это для тех,кто не в танке.