Hmm, I'm sure there is an easier way to do this than what I'm about to tell you but just change the way the weapon is rendered.
This is from an old script of mine,
PHP Code:
public Action:SetColor(Handle:Timer, any:client) //This decides what color to make humans.
{
if(IsClientConnected(client) && IsClientInGame(client))
{
if(TF2_GetPlayerClass(client) == TFClass_Sniper)
{
SetEntityRenderMode(client, RENDER_TRANSCOLOR);
SetEntityRenderColor(client, 100, 100, 100, 75); //<----- Renders client almost invisible.
new index = -1;
while((index = FindEntityByClassname(index, "tf_weapon_compound_bow")) !=-1)
{
SetEntityRenderMode(index, RENDER_TRANSCOLOR);
SetEntityRenderColor(index, 100, 100, 100, 75); //<----- Renders client's weapon almost invisible.
}
}
else if (TF2_GetPlayerClass(client) != TFClass_Sniper)
{
SetEntityRenderColor(client, 255, 255, 255, 255);
}
}
}
You can render entities completely transparent by using SetEntityRenderColor(entity, R,G,B, THIS IS TRANSPARENCY VALUE) Please excuse my old ugly code shame on me.