Hey! I made a egg hatching system with a tutorial, now there’s a bug.
- What’s the bug?
The egg dont show up and the pet dont either. But the pet adds to inventory so i dont know why this happened!
Video:
robloxapp-20220815-1400190.wmv (474.1 KB)
Script:
local Player = game.Players.LocalPlayer
local RS = game.ReplicatedStorage
local TS = game:GetService("TweenService")
local UIS = game:GetService("UserInputService")
local MS = game:GetService("MarketplaceService")
function rotateEgg(Egg, Rot, NumberTime)
local TI = TweenInfo.new(NumberTime)
local Goal = {CFrame = CFrame.Angles(0,0,math.rad(Rot))}
local Tween = TS:Create(Egg.PrimaryPart, TI, Goal)
Tween:Play()
end
function eggAnimation(Egg, Result)
local FrameClone = Player.PlayerGui.UIelements.HatchFrame:Clone()
local Folder = RS.Pets.Models:FindFirstChild(Result)
local Type
for i,v in pairs(Egg["Pets"]) do
if v.Name == Result then
Type = v.Type
end
end
local PetClone = Folder:FindFirstChild(Type):Clone()
local EggClone = workspace.Eggs:FindFirstChild(script.Parent.Parent.CurrentTarget.Value).EggModel:Clone()
local Rarity = Folder.Settings.Rarity.Value
local RarityColor = RS.Pets.Rarities:FindFirstChild(Rarity).Color.Value
local Camera = Instance.new("Camera", FrameClone)
local tweenInfo = TweenInfo.new(.35, Enum.EasingStyle.Quad)
local EggDelay = .1
game.Lighting.Blur.Size = 26
FrameClone.CurrentCamera = Camera
FrameClone.Parent = Player.PlayerGui.EggPreview
EggClone.Parent = FrameClone
EggClone:SetPrimaryPartCFrame(CFrame.new(0,0,0) - Vector3.new(0,10,0))
Camera.CFrame = (EggClone.PrimaryPart.CFrame + Vector3.new(0,10,0)):ToWorldSpace(CFrame.new(0,0,5.5))
local bringEgg = TS:Create(EggClone.PrimaryPart, tweenInfo, {Position = EggClone.PrimaryPart.Position + Vector3.new(0,10,0)})
bringEgg:Play()
wait(.35)
for i = 1,7 do
rotateEgg(EggClone, 40, EggDelay)
wait(EggDelay)
rotateEgg(EggClone, -40, EggDelay)
wait(EggDelay)
EggDelay = EggDelay - .00005
end
-- 2.78
rotateEgg(EggClone, 0, EggDelay)
wait(EggDelay)
FrameClone.FlashEffect1:TweenSize(UDim2.new(1.5,0,1.5,2), "Out", "Linear", .2)
spawn(function()
for i = 0,1,.1 do
FrameClone.FlashEffect1.ImageTransparency = i
wait(.05)
end
end)
wait(.2)
PetClone.Parent = FrameClone
PetClone:SetPrimaryPartCFrame(CFrame.new(0,0,0) * CFrame.Angles(0, math.rad(200), 0))
EggClone:Destroy()
FrameClone.PetName1.Text = Result
FrameClone.PetRarity1.Text = Rarity
FrameClone.PetRarity1.TextColor3 = RarityColor
wait(1)
for i = 1,10 do
game.Lighting.Blur.Size = game.Lighting.Blur.Size - 2.6
wait(.05)
end
FrameClone:TweenPosition(UDim2.new(0,0,1,0), "Out", "Quad", .2)
wait(.2)
FrameClone:Destroy()
end
function eggRequest()
local Egg = require(RS.Pets.Eggs)[script.Parent.Parent.CurrentTarget.Value]
if Egg ~= nil then
if script.Parent.Parent.CurrentTarget.Value ~= "None" then
if (Player.Character.HumanoidRootPart.Position - workspace.Eggs:FindFirstChild(script.Parent.Parent.CurrentTarget.Value).UIanchor.Position).Magnitude <= 10 then
local Result, Message = RS.RemoteEvents.EggOpened:InvokeServer(script.Parent.Parent.CurrentTarget.Value, "Single")
if Message == nil and Result ~= "Error" and Result ~= nil then
eggAnimation(Egg, Result)
else
if Message ~= nil then
if Message ~= "Robux Purchase" then
print("Error, ".. Message)
else
local ProductID = Egg["ProductID"]
if ProductID ~= nil then
MS:PromptProductPurchase(Player, ProductID)
end
end
end
end
end
end
end
end
RS.RemoteEvents.EggOpened.OnClientInvoke = eggAnimation
script.Parent.MouseButton1Click:Connect(function()
eggRequest()
end)
UIS.InputBegan:connect(function(input,gameProcessed)
if input.UserInputType == Enum.UserInputType.Keyboard then
if input.KeyCode == Enum.KeyCode.E then
if UIS:GetFocusedTextBox() == nil then
eggRequest()
end
end
end
end)
I really appreciate help <3