I have a script that brings an error that says Unable to cast value to object...Someone help???
local Player = game.Players.LocalPlayer
Mouse = Player:GetMouse()
local equipped = false
local primary = Player.PlayerData.Inventory.PrimaryTool.Value
local secondary = Player.PlayerData.Inventory.SecondaryTool.Value
print(primary.." "..secondary)
Mouse.KeyDown:connect(function(Key)
if(Key:lower() == "1") then
if equipped == false then
Player.Character.Humanoid:EquipTool(primary)
equipped = true
print("equipped primary")
elseif equipped == true then
Player.Character.Humanoid:UnequipTools()
equipped = false
print("unequipped primary")
end
end
if(Key:lower() == "2") then
if equipped == false then
Player.Character.Humanoid:EquipTool(secondary)
equipped = true
print("equipped secondary")
elseif equipped == true then
Player.Character.Humanoid:UnequipTools()
equipped = false
print("unequipped secondary")
end
end
end)

5 comments
Don't think it's possible to convert a string to an 'object name' type since an object name isn't a type. Need more specific information to help your problem.
Is the
PrimaryToolanObjectValue?No the primary tool is a string value
let me update this with more of my script
Have you tried
Player.PlaayerData.Inventory[PrimaryTool.Value]?