function OnPlayerConnected(player) if player:IsBot() then return end player.ouchcooldown = 0 player:AddCallback(ON_DEATH, function() if player.m_iClass == 10 then local randomsound = math.random(1, 4) player:PlaySound("=105|npc/metropolice/die" .. randomsound .. ".wav") end end) player:AddCallback(ON_DAMAGE_RECEIVED_PRE, function(_, damageinfo) if player.m_iClass ~= 10 then return end local attacker = damageinfo.Attacker if damageinfo.Damage > 0.49999 and damageinfo.DamageType ~= 8 and attacker.m_iTeamNum ~= player.m_iTeamNum and damageinfo.Damage < player.m_iHealth then local randomsound = math.random(1, 4) if player.ouchcooldown > 0 then return end player:PlaySound("=105|npc/metropolice/pain" .. randomsound .. ".wav") player.ouchcooldown = 5 end end) player:AddCallback(ON_SPAWN, function() if player.m_iClass == 10 then player:SetCustomModelWithClassAnimations("models/player/sniper.mdl") timer.Simple(0.01, function() player:AddCond(32, 0.01, nil) end) end timer.Create(0.1, function() if not player:IsValid() then -- random errors out of nowhere return end if player.m_iClass ~= 10 or not player:IsAlive() then return false end if player.ouchcooldown > 0 then player.ouchcooldown = player.ouchcooldown - 1 end for _, allies in pairs(ents.FindInSphere(player:GetAbsOrigin(), 400)) do if allies.m_iTeamNum == player.m_iTeamNum and player:IsAlive() and allies:IsAlive() and allies:IsPlayer() and allies:GetHandleIndex() ~= player:GetHandleIndex() then if player.m_hActiveWeapon:GetClassname() ~= "tf_weapon_fireaxe" and player.m_hActiveWeapon ~= 954 then -- multi class weapons are axes huh return end allies:AddCond(42, 0.15, player) -- lvl1 bomb defense allies:AddCond(6, 0.15, player) -- tele dust allies:AddCond(101, 0.15, player) -- grappling hook hud icon allies:AddCond(20, 0.15, player) -- amputator rings allies:AddCond(21, 0.15, player) -- some cond provided by continuous healing maybe it will make assists work allies:AddHealth(1, false) -- allies:PlaySound("=18|weapons/physcannon/energy_sing_flyby2.wav") end end end, 0, nil) end) end