As the title says the smoke grenades and C4 are not working. The smoke grenades don't make smoke and the C4s can be disarmed on every wire.
Here is the smoke grenade code:
[CODE]AddCSLuaFile()
SWEP.HoldType = "grenade"
if CLIENT then
SWEP.PrintName = "grenade_smoke"
SWEP.Slot = 3
SWEP.Icon = "vgui/ttt/icon_nades"
end
SWEP.Base = "weapon_tttbasegrenade"
SWEP.Spawnable = true
SWEP.WeaponID = AMMO_SMOKE
SWEP.Kind = WEAPON_NADE
SWEP.UseHands = true
SWEP.ViewModelFlip = false
SWEP.ViewModelFOV = 54
SWEP.ViewModel = "models/weapons/cstrike/c_eq_smokegrenade.mdl"
SWEP.WorldModel = "models/weapons/w_eq_smokegrenade.mdl"
SWEP.Weight = 5
SWEP.AutoSpawnable = true
-- really the only difference between grenade weapons: the model and the thrown
-- ent.
function SWEP:GetGrenadeName()
return "ttt_smokegrenade_proj"
end
[/CODE]
And here is the C4 code:
[CODE]-- traitor equipment: c4 bomb
AddCSLuaFile()
SWEP.HoldType = "slam"
if CLIENT then
SWEP.PrintName = "C4"
SWEP.Slot = 6
SWEP.EquipMenuData = {
type = "item_weapon",
name = "C4",
desc = "c4_desc"
};
SWEP.Icon = "vgui/ttt/icon_c4"
end
SWEP.Base = "weapon_tttbase"
SWEP.Kind = WEAPON_EQUIP
SWEP.CanBuy = {ROLE_TRAITOR} -- only traitors can buy
SWEP.WeaponID = AMMO_C4
SWEP.UseHands = true
SWEP.ViewModelFlip = false
SWEP.ViewModelFOV = 54
SWEP.ViewModel = Model("models/weapons/cstrike/c_c4.mdl")
SWEP.WorldModel = Model("models/weapons/w_c4.mdl")
SWEP.DrawCrosshair = false
SWEP.ViewModelFlip = false
SWEP.Primary.ClipSize = -1
SWEP.Primary.DefaultClip = -1
SWEP.Primary.Automatic = true
SWEP.Primary.Ammo = "none"
SWEP.Primary.Delay = 5.0
SWEP.Secondary.ClipSize = -1
SWEP.Secondary.DefaultClip = -1
SWEP.Secondary.Automatic = true
SWEP.Secondary.Ammo = "none"
SWEP.Secondary.Delay = 1.0
SWEP.NoSights = true
local throwsound = Sound( "Weapon_SLAM.SatchelThrow" )
function SWEP:PrimaryAttack()
self:SetNextPrimaryFire( CurTime() + self.Primary.Delay )
self:BombDrop()
end
function SWEP:SecondaryAttack()
self:SetNextSecondaryFire( CurTime() + self.Secondary.Delay )
self:BombStick()
end
-- mostly replicating HL2DM slam throw here
function SWEP:BombDrop()
if SERVER then
local ply = self.Owner
if not IsValid(ply) then return end
if self.Planted then return end
local vsrc = ply:GetShootPos()
local vang = ply:GetAimVector()
local vvel = ply:GetVelocity()
local vthrow = vvel + vang * 200
local bomb = ents.Create("ttt_c4")
if IsValid(bomb) then
bomb:SetPos(vsrc + vang * 10)
bomb:SetOwner(ply)
bomb:SetThrower(ply)
bomb:Spawn()
bomb:PointAtEntity(ply)
local ang = bomb:GetAngles()
ang:RotateAroundAxis(ang:Up(), 180)
bomb:SetAngles(ang)
bomb.fingerprints = self.fingerprints
bomb:PhysWake()
local phys = bomb:GetPhysicsObject()
if IsValid(phys) then
phys:SetVelocity(vthrow)
end
self:Remove()
self.Planted = true
end
ply:SetAnimation( PLAYER_ATTACK1 )
end
self:EmitSound(throwsound)
self:SendWeaponAnim(ACT_VM_SECONDARYATTACK)
end
-- again replicating slam, now its attach fn
function SWEP:BombStick()
if SERVER then
local ply = self.Owner
if not IsValid(ply) then return end
if self.Planted then return end
local ignore = {ply, self}
local spos = ply:GetShootPos()
local epos = spos + ply:GetAimVector() * 80
local tr = util.TraceLine({start=spos, endpos=epos, filter=ignore, mask=MASK_SOLID})
if tr.HitWorld then
local bomb = ents.Create("ttt_c4")
if IsValid(bomb) then
bomb:PointAtEntity(ply)
local tr_ent = util.TraceEntity({start=spos, endpos=epos, filter=ignore, mask=MASK_SOLID}, bomb)
if tr_ent.HitWorld then
local ang = tr_ent.HitNormal:Angle()
ang:RotateAroundAxis(ang:Right(), -90)
ang:RotateAroundAxis(ang:Up(), 180)
bomb:SetPos(tr_ent.HitPos)
bomb:SetAngles(ang)
bomb:SetOwner(ply)
bomb:SetThrower(ply)
bomb:Spawn()
bomb.fingerprints = self.fingerprints
local phys = bomb:GetPhysicsObject()
if IsValid(phys) then
phys:EnableMotion(false)
end
bomb.IsOnWall = true
self:Remove()
self.Planted = true
end
end
ply:SetAnimation( PLAYER_ATTACK1 )
end
end
end
function SWEP:Reload()
return false
end
function SWEP:OnRemove()
if CLIENT and IsValid(self.Owner) and self.Owner == LocalPlayer() and self.Owner:Alive() then
RunConsoleCommand("lastinv")
end
end[/CODE]
I can't seem to find anything wrong but then again I'm not very good at coding.
I'm not sure about the smoke grenade but I know that if you only set the C4 for 45 seconds, its easy to disarm. Try setting the timer to the full 10 mins and seeing if you can disarm it 5 times in a row
45 seconds means 5 of the wires will disarm, 1 will blow. I can't remember how many seconds you go up each time will remove 1 wire from disarm and add it to blow until only 1 will disarm and 5 blow.
Ah I see. Thanks. But does anyone have any ideas for the smoke grenade? I throw it, it disappears but no smoke appears. For some reason it makes your fps drop though.
[QUOTE=KnightVultor;45164536]Ah I see. Thanks. But does anyone have any ideas for the smoke grenade? I throw it, it disappears but no smoke appears. For some reason it makes your fps drop though.[/QUOTE]
Same problem here, I have this problem on EVERY server, not only on mine!
Are you running in DX8?
Sorry for the late reply. I'm guessing not because it everyone on the server can't see the smoke from smoke grenades.
Maybe CS:S needs to be properly mounted? Not too sure on this one.
yesterday i went to a server and was the first smoke nade that i seen working...I don't know why, the other servers just make this one dissapear
Sorry, you need to Log In to post a reply to this thread.