Files
VnUtest/garrysmod/addons/tacrp/lua/entities/tacrp_proj_40mm_smoke.lua
2026-03-31 10:27:04 +03:00

49 lines
1.3 KiB
Lua

AddCSLuaFile()
ENT.Base = "tacrp_proj_base"
ENT.PrintName = "40mm Smoke"
ENT.Spawnable = false
ENT.Model = "models/weapons/tacint/grenade_40mm.mdl"
ENT.IsRocket = false // projectile has a booster and will not drop.
ENT.InstantFuse = false // projectile is armed immediately after firing.
ENT.RemoteFuse = false // allow this projectile to be triggered by remote detonator.
ENT.ImpactFuse = true // projectile explodes on impact.
ENT.ExplodeOnDamage = false // projectile explodes when it takes damage.
ENT.ExplodeUnderwater = true
ENT.Delay = 0
ENT.BounceSounds = {
"TacRP/weapons/grenade/smoke_bounce-1.wav",
"TacRP/weapons/grenade/smoke_bounce-2.wav",
"TacRP/weapons/grenade/smoke_bounce-3.wav",
"TacRP/weapons/grenade/smoke_bounce-4.wav",
}
ENT.ExplodeSounds = {
"TacRP/weapons/grenade/smoke_explode-1.wav",
}
ENT.AudioLoop = "TacRP/weapons/rpg7/rocket_flight-1.wav"
ENT.SmokeTrail = true
function ENT:Detonate()
if self:WaterLevel() > 0 then self:Remove() return end
self:EmitSound(table.Random(self.ExplodeSounds), 75)
local cloud = ents.Create( "TacRP_smoke_cloud" )
if !IsValid(cloud) then return end
cloud:SetPos(self:GetPos())
cloud:Spawn()
self:Remove()
end