Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local Players = game:GetService("Players")
- local ReplicatedStorage = game:GetService("ReplicatedStorage")
- local RunService = game:GetService("RunService")
- local TweenService = game:GetService("TweenService")
- local UserInputService = game:GetService("UserInputService")
- local TweenGui = require(script.Parent.TweenGui)
- local Module3D = require(ReplicatedStorage.Libs.Module3D)
- local Player = Players.LocalPlayer
- local PlayerGui = Player.PlayerGui
- local OpenButton = PlayerGui:WaitForChild("Main").Right.Chaos
- local Gui = PlayerGui:WaitForChild("ChaoInventory")
- local Frame = Gui.Frame
- local Exit = Frame.Exit
- local PetsEquippedLabel = Frame.PetsEquipped
- local Info = Frame.Info
- local DisplayPet = Info.DisplayPet
- local EquipButton = Info.Equip
- local DeleteButton = Info.Delete
- local PetNameDisplayInfo = Info.PetName
- local Container = Frame.Container
- local SelectedTemplate = nil
- local function OnEquip()
- if SelectedTemplate ~= nil then
- if SelectedTemplate:FindFirstChild("Equipped").Value == false then
- local Result = ReplicatedStorage.Remotes.Chaos.EquipChao:InvokeServer(SelectedTemplate.Name)
- if Result == "Equip" then
- Info.Visible = true
- SelectedTemplate.Checkmark.Visible = true
- SelectedTemplate.LayoutOrder = -1
- EquipButton.Title.Text = "Unequip"
- EquipButton.BackgroundColor3 = Color3.fromRGB(232, 70, 70)
- SelectedTemplate:FindFirstChild("Equipped").Value = true
- elseif Result == "Unequip" then
- SelectedTemplate.Checkmark.Visible = false
- SelectedTemplate.LayoutOrder = 0
- Info.Visible = true
- EquipButton.Title.Text = "Equip"
- EquipButton.BackgroundColor3 = Color3.fromRGB(70, 232, 70)
- SelectedTemplate:FindFirstChild("Equipped").Value = false
- end
- else
- local Result = ReplicatedStorage.Remotes.Chaos.UnequipChao:InvokeServer(SelectedTemplate.Name)
- if Result == true then
- SelectedTemplate.Checkmark.Visible = false
- SelectedTemplate.LayoutOrder = 0
- Info.Visible = true
- EquipButton.Title.Text = "Equip"
- EquipButton.BackgroundColor3 = Color3.fromRGB(70, 232, 70)
- SelectedTemplate:FindFirstChild("Equipped").Value = false
- end
- end
- end
- end
- local function DeletePet()
- if SelectedTemplate ~= nil then
- ReplicatedStorage.Remotes.Chaos.DeleteChao:FireServer(SelectedTemplate.Name)
- SelectedTemplate:Destroy()
- SelectedTemplate = nil
- Info.Visible = false
- end
- end
- local function TemplatePressed(Template)
- SelectedTemplate = Template
- if SelectedTemplate:FindFirstChild("Equipped").Value == true then
- SelectedTemplate.Checkmark.Visible = true
- SelectedTemplate.LayoutOrder = -1
- Info.Visible = true
- EquipButton.Title.Text = "Unequip"
- EquipButton.BackgroundColor3 = Color3.fromRGB(232, 70, 70)
- else
- SelectedTemplate.Checkmark.Visible = false
- SelectedTemplate.LayoutOrder = 0
- Info.Visible = true
- EquipButton.Title.Text = "Equip"
- EquipButton.BackgroundColor3 = Color3.fromRGB(70, 232, 70)
- end
- PetNameDisplayInfo.Text = Template.Name
- for i, v in pairs(DisplayPet:GetChildren()) do
- if v:IsA("ViewportFrame") then
- v:Destroy()
- end
- end
- Info.RingMultiplier.Text = `X{ReplicatedStorage.Chaos:FindFirstChild(Template.Name, true).RingMultiplier.Value}`
- local ChaoModel = Module3D:Attach3D(DisplayPet, ReplicatedStorage.Chaos:FindFirstChild(Template.Name, true):Clone())
- ChaoModel:SetDepthMultiplier(1.2)
- ChaoModel.Camera.FieldOfView = 5
- ChaoModel.Visible = true
- RunService.PreRender:Connect(function()
- ChaoModel:SetCFrame(CFrame.Angles(0, tick() * 2 % (math.pi * 2), 0) * CFrame.Angles(math.rad(-10), 0, 0))
- end)
- end
- _G.NewTemplate = function(ChaoName)
- local NewTemplate = Container.Template:Clone()
- NewTemplate.Name = ChaoName
- NewTemplate.Visible = true
- NewTemplate.Parent = Container
- local ChaoModel = Module3D:Attach3D(NewTemplate.Display, ReplicatedStorage.Chaos:FindFirstChild(ChaoName, true):Clone())
- ChaoModel:SetDepthMultiplier(1.2)
- ChaoModel.Camera.FieldOfView = 5
- ChaoModel.Visible = true
- RunService.PreRender:Connect(function()
- ChaoModel:SetCFrame(CFrame.Angles(0, tick() * 2 % (math.pi * 2), 0) * CFrame.Angles(math.rad(-10), 0, 0))
- end)
- NewTemplate.MouseButton1Click:Connect(function()
- TemplatePressed(NewTemplate)
- end)
- end
- OpenButton.MouseButton1Click:Connect(function()
- if Gui.Enabled == true then
- TweenGui.CloseGui(Gui, Frame)
- else
- TweenGui.OpenGui(Gui, Frame)
- end
- end)
- Exit.MouseButton1Click:Connect(function()
- TweenGui.CloseGui(Gui, Frame)
- end)
- EquipButton.MouseButton1Click:Connect(function()
- OnEquip()
- end)
- DeleteButton.MouseButton1Click:Connect(function()
- DeletePet()
- end)
- task.wait(2)
- for _, Chao in Player:WaitForChild("Chaos"):GetChildren() do
- _G.NewTemplate(Chao.Name)
- end
- while task.wait(0.05) do
- pcall(function()
- PetsEquippedLabel.Text = `{#workspace.PlayerChaos:FindFirstChild(Player.Name):GetChildren()} / {Player.Values.MaxChaosEquipped.Value} Chaos Equipped!`
- end)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement