Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

Ammo within gun is loaded but is not able to be fired. Any ideas?

Asked by 4 years ago

So recently I've been making a role playing game and have made a framework for my guns. So for the ammo I thought to myself "Why not use a debounce to stop the player from firing more bullets until they press 'Reload'?". So I've written the script out but it doesn't seem to work, because after reloading the player is still unable to fire again after depleting their ammo.

local debounce = false

local cooldownTime = 0.7

script.Parent.Activated:Connect(function()
    if not debounce then
        debounce = true
        local shooting = game:GetService("Players").LocalPlayer.Character.Humanoid:LoadAnimation(script.Parent.Shoot)

        local sound = game:GetService("StarterPack").Shotgun.shooting

        sound:Play()
        shooting:Play()
        wait(cooldownTime)
        Ammo = Ammo-1
        debounce = false
        if Ammo < 1 then
            debounce = true
        else
                if Ammo > 1 then
                    debounce = false
                end
        end
    end
end)

This section of the code is where the player's input (AKA the mouse click) is detected, and where the ammo value is located.

local debounce = false
local eq=false
local cooldownTime = 1
local mouse=game.Players.LocalPlayer:GetMouse()
script.Parent.Equipped:Connect(function(mouse)
eq=true
end)
script.Parent.Unequipped:Connect(function(mouse)
eq=false
end)
    mouse.KeyDown:Connect(function(key)
        if not debounce and key== "r" and eq then
            debounce = true
            local reload = game:GetService("Players").LocalPlayer.Character.Humanoid:LoadAnimation(script.Parent.Reload)
            local sound = game:GetService("StarterPack").Shotgun.reloading
            reload:Play()
            reload.Looped = false
            sound:Play()
            Ammo = Ammo + 1
            wait(cooldownTime)
            debounce = false
        end 
    end)

This section is where the player hits R in order to reload and the ammo value is refilled.

Any tips, ideas, additional coding, or a link to a post relating to this kind of stuff would be greatly appreciated!

Answer this question