tried using humanoid:EquipTool(Tool) but it doesnt work
i tried making right grip artifically and it wont work
tried welding manually but wont work either
Try putting WorldModel instance in a ViewportFrame as a parent of your character
Can you send the script you are using to try and do this
i already am
with normal models you cant even add basic accessories
but in both cases, giving the humanoid a tool has the same effects
local Rig:WorldModel = --this part isnt important
local Tool = --this part isnt important
Rig:FindFirstChild("Humanoid"):EquipTool(Tool)
Why are you type checking the Rig as a WorldModel
im not
i just wanted to show you that im using a world modeel instead of a normal model for the rig
Alright. Anyways I experimented a little with this and yes running Humanoid:EquipTool() on a Rig inside a ViewportFrame doesn’t work.
Instead of trying to equip the tool to the Rig after it’s parented under the ViewportFrame, use a version of the Rig that already has the tool parented to it instead. This worked for me
actually nvm i cant clone to rig to workspace then put it in viewport frame back cuz then it would dissepear for a few seconds which would look pretty off
What do you mean ‘‘a few seconds’’? The entire process should take miliseconds to process.
And also the Rig can just have the tool already equipped from the very start no?
try detecting when your player is character equips a tool then clone a tool to the viewport frame character
the rigs appearence changes depending on the player’s character
its basically a showcase of you
(its for a custom inventory system where a rig copies your character and whatever you have on your equipped slots the rig will have on himself to give you an idea of what it will look like)
I have done something kinda similar to this before, and I just opted to entirely delete and clone a new character model everytime since you can’t directly handle the tools of a viewport frame character.
Here is the code I used, you can probably take something from it:
local localplayer = game.Players.LocalPlayer
local Character = localplayer.Character or localplayer.CharacterAdded:Wait()
local WorldModel = script.Parent.ViewportFrame.WorldModel
local function UpdateViewportCharacter()
for _, child in WorldModel:GetChildren() do
if child:IsA('Model') then
child:Destroy()
end
end
local NewChar = Character:Clone()
for _, descendant in NewChar:GetDescendants() do
if descendant:IsA('BaseScript') and descendant.Name~='Animate' then
descendant:Destroy()--Clear scripts except for animation script
end
end
NewChar.Parent = WorldModel
NewChar.PrimaryPart = NewChar.HumanoidRootPart
WorldModel.PrimaryPart = NewChar.HumanoidRootPart
local Position = Vector3.new(0,2,0)
local Orientation = Vector3.new(5,0,0)
WorldModel.PrimaryPart.CFrame = CFrame.new(Position) * CFrame.Angles(math.rad(Orientation.X),math.rad(Orientation.Y),math.rad(Orientation.Z))
end
script.Parent:GetPropertyChangedSignal('Visible'):Connect(function()
if script.Parent.Visible then
UpdateViewportCharacter()
end
end)
UpdateViewportCharacter()
Was able to make my own solution,
creating a weld and setting Part0 to right arm and setting part1 to Handle (tool’s handle)
then setting C0.Position to 0,-1,0 and its rotation to -90,0,0
then setting C1 to Tool.Grip fully recreates the “RightGrip” that appears when you equip a tool
you can use this to crate an artifical weld which should make the humanoid handle the tool
i will test this now and i will mark it as solution if it does actually work
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.