I've been working on an M1 Garand and when you reload it shows the correct numbers of bullets in the clip as you have in the gun. But when in multiplayer it always shows it as empty.
[CODE]
if CLIENT then
local function M1GarandFireSet(pl, event, data)
if event == PLAYERANIMEVENT_ATTACK_PRIMARY then
if LocalPlayer():GetActiveWeapon():GetClass() == "tfa_pig_doi_m1_garand" then
LocalPlayer():GetViewModel():SetBodygroup(2, LocalPlayer():GetActiveWeapon():Clip1())
end
end
end
hook.Add("DoAnimationEvent", "SetBodygroupOnFire", M1GarandFireSet)
local function M1GarandReloadReset(pl, event, data)
if event == PLAYERANIMEVENT_RELOAD then
if LocalPlayer():GetActiveWeapon():GetClass() == "tfa_pig_doi_m1_garand" then
if LocalPlayer():GetActiveWeapon():Clip1() >= 1 then
timer.Simple( 2, function()
if LocalPlayer():GetActiveWeapon():Ammo1() + LocalPlayer():GetActiveWeapon():Clip1() > 8 then
LocalPlayer():GetViewModel():SetBodygroup(2, 7)
else
LocalPlayer():GetViewModel():SetBodygroup(2, LocalPlayer():GetActiveWeapon():Ammo1() + LocalPlayer():GetActiveWeapon():Clip1())
end
end )
else
timer.Simple( 1, function()
if LocalPlayer():GetActiveWeapon():Ammo1() + LocalPlayer():GetActiveWeapon():Clip1() > 8 then
LocalPlayer():GetViewModel():SetBodygroup(2, 7)
else
LocalPlayer():GetViewModel():SetBodygroup(2, LocalPlayer():GetActiveWeapon():Ammo1() + LocalPlayer():GetActiveWeapon():Clip1())
end
end )
end
end
end
end
hook.Add("DoAnimationEvent", "ResetBodygroupOnReload", M1GarandReloadReset)
end
[/CODE]
Yes I know the code is bad.
Correct:
[IMG]http://i.imgur.com/kr8Ak2d.jpg[/IMG]
Incorrect:
[IMG]http://i.imgur.com/JRtSa7q.jpg[/IMG]
Any help is appreciated.
[code]
local vm
local obg = -1
local targ
SWEP.Callback = {}
SWEP.Callback.Deploy = function(self)
obg = -1
end
SWEP.Callback.PlayerThink = function(self)
if not IsValid(vm) then
vm = self.OwnerViewModel
return
end
if self:GetReloading() then
targ = math.Clamp(self:Clip1() + self:Ammo1(), 0, 7)
else
targ = math.Clamp(self:Clip1(), 0, 7)
end
if obg ~= targ then
vm:SetBodygroup(2, targ)
end
end
[/code]
Since you're using TFA Base, this should work nicely. Though the code runs on Tick, it should be properly predicted, and only changes the viewmodel's bodygroup when necessary.
That kind of works but I need the bullets set to a lower value when you shoot, It's always at max capacity.
Sorry, you need to Log In to post a reply to this thread.