Scripting HelpersARCHIVE
A little piece of Roblox history. Preserved for everyone, one question at a time.Read about the archive →
COMMUNITY QUESTION

Why is the TextLabel not showing the Ammo?

I am scripting a SubMachineGun. First I have these values inside of Replicated Storage: SMGAmmoLeft, The ammo left in the SMG SMGEquipped, Whether the SMG is equipped. I also have a Remote Event called FiringSMGEvent. I have this Local Script inside of a gun tool in Starter Pack.

local gun = scriptt.Parent
local ReplicatedStorage = game:GetService('ReplicatedStorage')
local remoteEvent = ReplicatedStorage:WaitForChild('FiringSniperEvent')
local shooting = false
local equipped = false
local EquipValue = ReplicatedStorage.EquippedSMG.Value
EquipValue=false
local player = game.Players.LocalPlayer
local mouse = player:GetMouse()
local mouseConnection
gun.Equipped:Connect(function()
	equipped = true
	EquipValue=true
	mouse.Icon = 'rbxassetid://117431027'
	mouseConnection = mouse.Button1Down:Connect(function()
		shooting = true
		while shooting and equipped do
			remoteEvent:FireServer(gun.Handle.Position, gun.Handle.Orientation, mouse.Hit.p)
			gun.Ammo.Value-=1
			game.ReplicatedStorage.SMGAmmo.Value-=1
			if gun.Ammo.Value==0 then
				equipped=false
				game.ReplicatedStorage.SMGAmmo.Value=0
				wait(5)
				gun.Ammo.Value=50
				game.ReplicatedStorage.SMGAmmo.Value=50
				equipped=true
			end
			mouse.Button1Up:Connect(function()
				shooting = false
			end)
			wait(0.1)
		end
	end)
end)



gun.Unequipped:Connect(function()
	equipped = false
	mouseConnection:Disconnect()
end) 

I have this Local Script inside of a ScreenGui which is home to a TextLabel which is supposed to display the ammo left.

script.Parent.TextLabel.Visible=false
game.ReplicatedStorage.EquippedSMG.Changed:Connect(function()
	if game.ReplicatedStorage.EquippedSMG == true then
		script.Parent.TextLabel.Visible=true
		script.Parent.TextLabel.Text = game.ReplicatedStorage.SMGAmmo.Value
	elseif game.ReplicatedStorage.EquippedSMG == false then
		script.Parent.TextLabel.Visible=false
	end
	
end)

The TextLabel is not displaying the AmmoLeft. May you please help me?

1 answer

Thats because u dont fire the event so the textlabel never recibe that information

1 comment

0

So I should create a BindableEvent that will fire whenever the gun is equipped?

This discussion is preserved as it was. New answers, comments, and votes are closed.