Attempt to index boolean with 'value'

This problem has been very annoying and I haven’t seen anyone with my exact situation

local v3_ = script.Parent.IsJumping
local dashingval = script.Parent.IsDashing
v1__uis.InputBegan:Connect(function(input,gp)
	if input.KeyCode == Enum.KeyCode.Space and not v_de then
		v_de = true
		v3_.Value = true
		wait(v12_cool)
	v_de = false
	end
end)
-- Output
UI.STHandle:86: attempt to index boolean with 'Value'  -  Client - STHandle:86

Is the value IsJumping a BoolValue?

1 Like

If v3_ is assigned a BoolValue object in the hierarchy then you can use v3_.Value

If v3_ is assigned a property then use just v3_

If you are trying to set IsJumping on a humanoid to true, then I had the same problem a while back. I ended up just using Humanoid:ChangeState(“Jumping”)

Yea it is a boolean value, stored in the Ui

Where are all of the locations that you assign anything to v3?

1 Like

Can you share the line that errors (line 86)?

3 Likes

try to use instead of v3_ another name, not something like v3 or just v, like IsJumping or JumpingVal

1 Like

The line is v3_.Value = true….

Boolean Value inside the UI, and the script is inside the UI screengui as well

Didn’t work it did the same error.

Now that I realize it a little more, this bug didn’t occur before, it was pertectly fine a day ago, but this happened

looks like a decompiled script, no offense.
why are you using obscure variable names?

local v3_ = script.Parent.IsJumping
local dashingval = script.Parent.IsDashing
v1__uis.InputBegan:Connect(function(input,gp)
	if input.KeyCode == Enum.KeyCode.Space and not v_de then
		v_de = true
		v3_.Value = true -- the issue is this line clearly, v3_.Value isn't a BoolValue instance
		wait(v12_cool)
	    v_de = false
	end
end)
-- if this was your code than you'd know that v3_.Value isn't a BoolValue instance
1 Like

Yeah your right, but I just like this style

heres the full script, ima try your script

local l__plr = game.Players.LocalPlayer
local v_char = l__plr.Character or l__plr.CharacterAdded:Wait(0.2)
local v1__uis = game:GetService("UserInputService")
v_char:WaitForChild("Humanoid")
local v3_ = script.Parent.IsJumping
local dashingval = script.Parent.IsDashing
local v4_sta = script.Parent.STamount
local u15_gu = script.Parent.StaminaShadow.Stamina
-- debounces
local v_de = false
local v_dashde = false
local v6_nde = false
local v9_dashde = false
local v9_de = false
local u_mb1 = false

local v12_cool = 1
local u1_max = 1000
negate = 100
v4_sta.Value = u1_max

local slideAnim = Instance.new("Animation")
slideAnim.AnimationId = "rbxassetid://10954334337"

local keybind = Enum.KeyCode.Q
local canslide = true
local allowed = true


v1__uis.InputBegan:Connect(function(input,gameprocessed)
	if gameprocessed then return end
	--local l2__tool = l__plr.Backpack:FindFirstChild("Rusty_Sword") or v_char:FindFirstChild("Rusty_Sword")
	--if l2__tool:IsDescendantOf(v_char) then
		if input.KeyCode == keybind and canslide == true and allowed == true then
			canslide = false
			local playAnim = v_char.Humanoid:LoadAnimation(slideAnim)
			playAnim:Play()
			local slide = Instance.new("BodyVelocity")
			slide.MaxForce = Vector3.new(1,0,1) * 30000
			slide.Velocity = v_char.HumanoidRootPart.CFrame.lookVector * 50
			slide.Parent = v_char.HumanoidRootPart

			for count = 1, 8 do
				wait(0.1)
				slide.Velocity*= 0.7
			end
			playAnim:Stop()
			slide:Destroy()
			wait(3)
			canslide = true
		end
	--end
end)

--Slashing
--v1__uis.InputBegan:Connect(function(input,gp)
--	if gp then return end
--	if l2__tool:IsDescendantOf(v_char) then
--		if input.UserInputType == Enum.UserInputType.MouseButton1 and not u_mb1 then
--			u_mb1 = true
--			v4_sta.Value = v4_sta.Value - 200
--			local ar_s2 = v4_sta.Value / u1_max
--			print("mb1")
--			u15_gu:TweenSize(UDim2.new(ar_s2 * 1.871,0,2.007,0),Enum.EasingDirection.Out,Enum.EasingStyle.Sine,0.3)
--			wait(1.45) -- dont touch unless ur changing the debounce cooldown of sword tool -felix
--			u_mb1 = false
--		end
--	end
--end)

-- Checking If Jump Mobile
--v1__uis.JumpRequest:Connect(function()
--	v_de = true
--	v3_.Value = true
--	wait(v12_cool)
--	v_de = false
--	v6_nde = true
--	v3_.Value = false
--	wait(v12_cool)
--	v6_nde = false
--end)

v1__uis.InputBegan:Connect(function(input,gp)
	if input.KeyCode == Enum.KeyCode.Space and not v_de then
		v_de = true
		v3_.Value = true
		wait(v12_cool)
	v_de = false
	end
end)


-- Checking If Dash End

v1__uis.InputEnded:Connect(function(input,gp)
	if input.KeyCode == Enum.KeyCode.Space and not v6_nde then
		v6_nde = true
		v3_ = false
		wait(v12_cool)
		v6_nde = false
	end
end)

-- Hurt Anim: 10889503286
-- Value = 0 then give stamina


local debounceTime = script.Parent.JumpTime.Value
local debounce = false
local stamde = false

local Player = game.Players.LocalPlayer
repeat wait() until Player.Character
local Character = Player.Character
local Humanoid = Character.Humanoid
-- Checks if player jumps

Humanoid.Changed:connect(function(changed)
	if changed == "Jump" then
		if Humanoid.Jump and debounce then
			Humanoid.Jump = false
		elseif Humanoid.Jump and not debounce then
			debounce = true
			wait(1)
			debounce = false
		end
	end
end)


v4_sta:GetPropertyChangedSignal("Value"):Connect(function()
	if v4_sta.Value == 0 then
		while true do
			task.wait(0)
			v_char:FindFirstChild("Humanoid").JumpPower = 0
			negate = 0
			task.wait(1)
			negate = 0
			--game.StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Backpack, false) -- hides backpack on exhaust
			allowed = false
			v_char:FindFirstChild("Humanoid").JumpPower = 0
			v4_sta.Value = v4_sta.Value + 100
			local ar_2 = v4_sta.Value / u1_max
			u15_gu:TweenSize(UDim2.new(ar_2,0,1,0),Enum.EasingDirection.Out,Enum.EasingStyle.Sine,0.3)
			v_char:FindFirstChild("Humanoid").WalkSpeed = 12
			if v4_sta.Value >= 500 then
				v_char:FindFirstChild("Humanoid").WalkSpeed = 16
			end
			if v_char:FindFirstChild("Humanoid").Health == 0 then
				--game.StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Backpack, true)
			end
			if v4_sta.Value >= 1000 then
				negate = 100
				v_char:FindFirstChild("Humanoid").JumpPower = 50
				--game.StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Backpack, true)
				allowed = true
				break;
			end
		end
	end
end)

-- Checking what changed

dashingval:GetPropertyChangedSignal("Value"):Connect(function()
	if not v9_dashde then
		v9_dashde = true
		if v4_sta.Value ~= 0 then
			if v_dashde.Value == true then
				v4_sta.Value = v4_sta.Value - 100
				local ar_2 = v4_sta.Value / u1_max
				print("on")
				u15_gu:TweenSize(UDim2.new(ar_2,0,1,0),Enum.EasingDirection.Out,Enum.EasingStyle.Sine,0.3) 
			end
		end
		if dashingval.Value ~= true then
			print("off")
		end
		wait(0)
		v9_de = false
	end
end)

v3_:GetPropertyChangedSignal("Value"):Connect(function()
	if not v9_de then
		v9_de = true
		if v4_sta.Value ~= 0 then
			if v3_.Value == true then
				v4_sta.Value = v4_sta.Value - negate
				local ar_2 = v4_sta.Value / u1_max
				print("on")
				u15_gu:TweenSize(UDim2.new(ar_2,0,1,0),Enum.EasingDirection.Out,Enum.EasingStyle.Sine,0.3)
			end
		end
		if v3_.Value ~= true then
			print("off")
		end
		wait(0)
		v9_de = false
	end
end)

it is very much a boolean value
Screen Shot 2022-09-19 at 4.36.24 PM

also this was never a problem, it occured randomly and now every .Value is a error

i definetly did define the variable boolean

If it’s a boolvalue than maybe it’s not assigned, it’s a nil value.
do a print(typeof(v3_)) following its assignment

It first prints Instance,

Then it prints boolean and errors out.

I tried adding wait() but it didn’t work but that figured out the problem

maybe try
if typeof(v3_) == “Instance” then print(v3_.ClassName) end
it should say BoolValue

if typeof(v3_) == "Instance" then
   print(v3_.ClassName)
   print(v3_:IsA("BoolValue"))
end
1 Like

Figured it out, I used your print(typeof(v3_) and print(v3_) and apparently, in inputended, you cant use v3_ but you have to use v3_.Value, but in InputBegan you can use v3_ = false. Thank you