#Need help plsss

187 messages · Page 1 of 1 (latest)

spark crane
#

Can you elaborate more? It's very confusing to understand

cursive flame
#

lol

#

urmm

#

ok

smoky obsidian
#

uh

#

all i see is ykk

cursive flame
#

so i have this morph

#

and theres a mic model in it

#

i want it so then when im in that morph a button shows

#

so then i could hide or show the mic

smoky obsidian
#

make an intvalue in the player called morph or character then do if that value == character do this

tall craterBOT
#

studio** You are now Level 3! **studio

cursive flame
#

huh 😭

smoky obsidian
#

so say

spark crane
smoky obsidian
cursive flame
#

im really bad at lua

#

im gud at modelin only 😭

spark crane
smoky obsidian
#

ig

spark crane
cursive flame
#

could yall enter my game and make it for me pls 😭

tall craterBOT
#

studio** You are now Level 1! **studio

spark crane
smoky obsidian
#

just send a script

smoky obsidian
#

yea then thats veri simple

twin compass
#

is the morph handled by a server or client script ?

#

if it's the server you are gonna need to use a remote event

smoky obsidian
#

local button = game.Players.LocalPlayer.PlayerGui -- put your button

cursive flame
#

its urmm

#

HUH

#

GURL 😭

cursive flame
spark crane
smoky obsidian
#

then just do

local mic = -- ur mic path

button.MouseButton1Click:Connect(function()
if mic.Transperncy == 0 then
mic.Transperency = 1
else
mic.Transperency = 0
end
end

spark crane
#

Nevermind

#

I misunderstood what you said

smoky obsidian
#

oh yea

#

fire a remote

#

so everyone sees the changes

twin compass
#

i don't think morph work properly on the client so yeah handle the morph on server then fire a RemoteEvent to the client so he sees the GUIs

cursive flame
#

wtf just happend 😭

smoky obsidian
#

what is off

#

?

spark crane
#

Same I don't see what's wrong here...

twin compass
cursive flame
#

the bar is gone

#

yk

#

the

#

😭

twin compass
#

properties ?

cursive flame
#

no

#

URMM

#

GURL

#

IML

#

OML

#

MY MIND IS EVERYWHERE RN I caNT THINK

#

nvm its fixed

#

urmm ok

#

so

smoky obsidian
#

what was the provlem

cursive flame
#

what i wanna do is

twin compass
#

can you just send the explorer with the important objects unfolded

#

so i can just write it for you

cursive flame
#

my morphs are in the replicated storage

cursive flame
smoky obsidian
#

wait firstly does the morph work?

#

and do you have the mic tool in the morph

twin compass
#

the button that trigger the morph too, if any, and the GUIs

cursive flame
cursive flame
smoky obsidian
#

yes?

cursive flame
#

the mic is just a model thats in my morph

#

its welded

#

yk

#

but

smoky obsidian
#

that works

cursive flame
#

yes

twin compass
#

is it supposed to be used with left click ? or just the GUI

#

cuz left click wont work if it's a model

smoky obsidian
#

so when you morph do you reset the humanoiddescription?

cursive flame
tall craterBOT
#

studio** You are now Level 2! **studio

smoky obsidian
cursive flame
#

cus what ik is

smoky obsidian
#

rq

twin compass
#

you should clone the model and set player.Character to the new model

cursive flame
twin compass
#

then for the GUI you can use PropertyChangedSignal("Character")

smoky obsidian
#

send 1

cursive flame
#

thats the file

smoky obsidian
#

js send 1 of the morph scripts

cursive flame
#

kk

smoky obsidian
#

i dont like opening files from strangers

twin compass
#

-- 2. Pls parent 'CharacterSelection' to 'ServerScriptService'.
-- 3. pls parent 'CharacterSelection' to 'StarterGui'.
these 2 conflicting

#

it's a rbx file dw

smoky obsidian
#

k

twin compass
#

only work if you import on roblox

twin compass
cursive flame
cursive flame
smoky obsidian
#

character selection the screengui goes to startergui

#

while the script goes to serverscript

cursive flame
#

-- Instructions:
-- 1. Pls parent 'Characters' and 'CharacterEvent' to 'ReplicatedStorage'.
-- 2. Pls parent 'CharacterSelection' to 'ServerScriptService'.
-- 3. pls parent 'CharacterSelection' to 'StarterGui'.
-- Lastly parent your rigs/moprhs to 'Characters'.
-- The others('Model' & 'Part') can be parent to 'Workspace'

twin compass
#

oh hadn't even noticed there was 2 lol

cursive flame
#

and the morph works

#

its just i gotta code for the mic

#

yk

smoky obsidian
#

oh

cursive flame
#

to show or hide

#

thats all loll

smoky obsidian
#

make another remote called visabilityrem or whatever you want

cursive flame
#

kk

twin compass
#

so like when you click on mic the mic dissapear/reappear ?

cursive flame
#

but where do i add that

smoky obsidian
#

repstorage

smoky obsidian
#

WAIT

cursive flame
#

i gtg

#

😭

smoky obsidian
#

oh

cursive flame
#

i have sch tmr

#

urmm

#

is it ok when i come back i do this gurl

twin compass
#

alright i'll try the morph and make a script for ya

cursive flame
#

i rllyy appreciate' yall for helping me

smoky obsidian
#

k

cursive flame
#

byee yalll

#

<3

smoky obsidian
#

bye

#

divine are you gonna add a clickdetector to it?

twin compass
#

to the GUI ?

#

pretty sure they don't need these

smoky obsidian
#

oh

#

didnt they say

#

click the mic?

smoky obsidian
#

if its a gui use rem event and if its a model or part use a clickdetector

twin compass
#

alright it's done, i'll send you the new scripts
also it only work with Billie, if you rename the character it wont work, it wont work with others characters either

#

the character selection script

local Characters = game.ReplicatedStorage:WaitForChild("Characters")

game.ReplicatedStorage:WaitForChild("CharacterEvent").OnServerEvent:Connect(function(player, chosenCharacter)
    if Characters:FindFirstChild(chosenCharacter) then
        local newChar = Characters:FindFirstChild(chosenCharacter):Clone()
        local plrChar = player.Character
        newChar.PrimaryPart = newChar.HumanoidRootPart
        newChar:SetPrimaryPartCFrame(plrChar.PrimaryPart.CFrame)
        newChar.Name = player.Name
        if plrChar:FindFirstChild("Animate") and not newChar:FindFirstChild("Animate") then
            plrChar.Animate:Clone().Parent = newChar
        end
        if plrChar:FindFirstChild("Health") and not newChar:FindFirstChild("Health") then
            plrChar.Health:Clone().Parent = newChar
        end
        player.Character = newChar
        local rootPart = newChar:FindFirstChild("HumanoidRootPart")
        local plrRoot = player.Character:FindFirstChild("HumanoidRootPart")
        if rootPart and plrRoot then
            rootPart.CFrame = plrRoot.CFrame
        end
        newChar.Parent = game.Workspace
        for i, part in pairs(newChar:GetDescendants()) do
            if part:IsA("BasePart") then
                part.Anchored = false
            end
        end
        
        game.ReplicatedStorage:FindFirstChild("HIde/Show mic").OnServerEvent:Connect(function()
            for i, part:Part in newChar:FindFirstChild("SKM5000"):GetChildren() do
                if part.Transparency == 1 then
                    part.Transparency = 0 
                else
                    part.Transparency = 1
                end
            end
        end)
    end
end)
#

the local script is too long i'll divide it in 2

#
for i, character in pairs(Characters:GetChildren()) do
    TotalCharacters += 1
    if TotalCharacters >= 3 then
        script.Parent.Characters.ScrollingEnabled = true
        script.Parent.Characters.ScrollBarImageTransparency = 0
    end
    local CharacterFrame = script.CharacterFrame:Clone()
    CharacterFrame.CharName.Text = character.Name
    local clonecharacter = character:Clone()
    --clonecharacter.WorldPivot = CFrame.new(0, -0.8, -5.5, -0.9, 0, 0.2, 0, 1, 0, -0.2, 0, -0.9)
    clonecharacter.Parent = CharacterFrame
    local RandomColorPart = Instance.new("Part")
    RandomColorPart.BrickColor = BrickColor.Random()
    CharacterFrame.Choose.BackgroundColor3 = RandomColorPart.Color
    RandomColorPart:Destroy()
    if clonecharacter.PrimaryPart then
        clonecharacter:SetPrimaryPartCFrame(CFrame.new(0, -0.8, -5.5, -0.9, 0, 0.2, 0, 1, 0, -0.2, 0, -0.9))
    else
        if clonecharacter:FindFirstChild("HumanoidRootPart") or clonecharacter:FindFirstChild("Torso") then
            if clonecharacter:FindFirstChild("HumanoidRootPart") then
                clonecharacter.HumanoidRootPart.CFrame = CFrame.new(0, -0.8, -5.5, -0.9, 0, 0.2, 0, 1, 0, -0.2, 0, -0.9)
            else
                clonecharacter.Torso.CFrame = CFrame.new(0, -0.8, -5.5, -0.9, 0, 0.2, 0, 1, 0, -0.2, 0, -0.9)
            end
        else
            CharacterFrame.Visible = false
        end
#
    end
    CharacterFrame.Choose.MouseButton1Click:Connect(function()
        if CharacterFrame.Choose.X.Text == "Selected" then
            script.Parent:TweenPosition(UDim2.new(0.228, 0,1, 0), "Out", "Quad", 0.2)
            script.Parent.Characters.CanvasPosition = Vector2.new(0, 0)
            return 
        end
        game.ReplicatedStorage.CharacterEvent:FireServer(character.Name)
        if character.Name == "Billie" then
            task.wait(2.5)
            Player.PlayerGui.Mic.Enabled = true
            Player.PlayerGui.Mic.TextButton.MouseButton1Down:Connect(function()
                game.ReplicatedStorage:FindFirstChild("HIde/Show mic"):FireServer()
            end)
        end
        script.Parent:TweenPosition(UDim2.new(0.228, 0,1, 0), "Out", "Quad", 0.2)
        script.Parent.Characters.CanvasPosition = Vector2.new(0, 0)
        for i, characterfr in pairs(script.Parent.Characters:GetChildren()) do
            if characterfr:IsA("ViewportFrame") then
                characterfr.Choose.X.Text = "Select"
            end
        end
        CharacterFrame.Choose.X.Text = "Selected"
    end)
    CharacterFrame.Parent = script.Parent.Characters
end

script.Parent.ExitButton.MouseButton1Click:Connect(function()
    script.Parent:TweenPosition(UDim2.new(0.228, 0,1, 0), "Out", "Quad", 0.2)
    script.Parent.Characters.CanvasPosition = Vector2.new(0, 0)
end)

script.Parent.Parent.Character.MouseButton1Click:Connect(function()
    if script.Parent.Position == UDim2.new(0.228, 0,0.2, 0) then
        script.Parent:TweenPosition(UDim2.new(0.228, 0,1, 0), "Out", "Quad", 0.2)
    else
        script.Parent:TweenPosition(UDim2.new(0.228, 0,0.2, 0), "Out", "Quad", 0.2)
    end 
end)
#

they follow each others, also, i didn't include the 5 first lines so don't replace these

#

i added a ScreenGUi and a TextButton in StarterGui too, you need to add them or it wont work

twin compass
# cursive flame omgg tyy babess

this all you need, make sure you read my texts correctly so you don't mess it up, you just gonna have to make the ScreenGUI the way you want it to be, and place it where you want

twin compass
#

if there are any bugs tell me

smoky obsidian
#

wowzers

tall craterBOT
#

studio** You are now Level 4! **studio

smoky obsidian
#

thats coal

twin compass
#

not sure i explained well, if you have trouble understanding tag me and i'll explain better

cursive flame
twin compass
#

Send me the place as a file i'll check later

#

At school rn

#

Maybe i just forgot a connection in the new local script

cursive flame
#

oo

twin compass
#

send it again, i can't download it for some reasons

#

it's weird tho, the script that handle morphs isn't one i modified

#

make sure the ShowGuiOnTouch script is this

local part = script.Parent
local Players = game:GetService("Players")
local StarterGui = game:GetService("StarterGui")

local function onTouch(other)
    local character = other.Parent
    local player = Players:GetPlayerFromCharacter(character)
    
    if player then
        local playerGui = player:FindFirstChildOfClass("PlayerGui")
        if playerGui then
            local characterSelectionGui = playerGui:FindFirstChild("CharacterSelection")
            if characterSelectionGui then
                local characterButton = characterSelectionGui:FindFirstChild("Character")
                if characterButton then
                    characterButton.Visible = true
                end
            else
                -- Clone the GUI from StarterGui if it doesn't exist in PlayerGui
                local starterCharacterSelectionGui = StarterGui:FindFirstChild("CharacterSelection")
                if starterCharacterSelectionGui then
                    local clonedGui = starterCharacterSelectionGui:Clone()
                    clonedGui.Parent = playerGui
                    local characterButton = clonedGui:FindFirstChild("Character")
                    if characterButton then
                        characterButton.Visible = true
                    end
                end
            end
        end
    end
end

part.Touched:Connect(onTouch)
#

and the mic ScreenGui object is supposed to be disabled (enabled property = false)

#

@cursive flame

#

NVM it work now

twin compass
#

add this

local Player:Player = game.Players.LocalPlayer
local TweenService = game:GetService("TweenService")
local Marketplace = game:GetService("MarketplaceService")
local Characters = game.ReplicatedStorage:WaitForChild("Characters")
local TotalCharacters = 0

at the top of the local script

#

i also added a RemoteEvent called Hide/Show mic in replicated storage

#

and made a small typo in the local script and CharacterSelection script, press CTRL + F and type "HIde" then change the result to "Hide"

#

the i was a I (capital) but it isn't supposed to be

twin compass
#

i explain like ass

cursive flame
#

loll

#

so.. everything works EXPET

#

its not hiding the mic 😭

cursive flame
tall craterBOT
#

studio** You are now Level 3! **studio

cursive flame
#

TYSM FOR HELPINGG

#

BUT

#

I've just made thiss