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

How to convert a string value into an object name?

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

0

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.

0

Is the PrimaryTool an ObjectValue?

0

No the primary tool is a string value

0

let me update this with more of my script

0

Have you tried Player.PlaayerData.Inventory[PrimaryTool.Value]?

1 answer

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