• C4 and smoke grenades not working (TTT)
    8 replies, posted
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.