0% found this document useful (0 votes)
347 views13 pages

Roblox Animal Management Script

The document is a Lua script for a game that utilizes various services and modules from Roblox, including handling animal models, animations, and player interactions. It defines functions for managing animal collections, displaying information, and handling events related to purchasing and claiming in-game resources. The script also includes logic for updating the game state based on player actions and server time.

Uploaded by

nikoklub123
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
347 views13 pages

Roblox Animal Management Script

The document is a Lua script for a game that utilizes various services and modules from Roblox, including handling animal models, animations, and player interactions. It defines functions for managing animal collections, displaying information, and handling events related to purchasing and claiming in-game resources. The script also includes logic for updating the game state based on player actions and server time.

Uploaded by

nikoklub123
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd

local v1 = game:GetService("ReplicatedStorage")

local u2 = game:GetService("RunService")
local u3 = game:GetService("Players")
local v4 = v1:WaitForChild("Packages")
local u5 = require([Link])
local u6 = require([Link])
local u7 = require([Link])
local v8 = require([Link])
local u9 = require([Link])
v1:WaitForChild("Classes")
local u10 = require([Link])
local v11 = v1:WaitForChild("Utils")
local u12 = require([Link])
local u13 = require([Link])
local u14 = v1:WaitForChild("Models").Animals
local v15 = v1:WaitForChild("Shared")
local u16 = require([Link])
local u17 = v1:WaitForChild("Overheads").AnimalOverhead
local u18 = v1:WaitForChild("Animations").Animals
local v19 = v1:WaitForChild("Datas")
require([Link])
local u20 = require([Link])
local u21 = require([Link])
local u22 = require([Link])
local u23 = require([Link])
local v24 = v1:WaitForChild("Shared")
local u25 = require([Link])
local u26 = v8:RemoteEvent("ShopService/Purchase")
local u27 = [Link]
local u28 = v8:RemoteEvent("PlotService/Sell")
local u29 = v8:RemoteEvent("PlotService/ClaimCoins")
local u30 = v8:RemoteEvent("4c777288-dc38-4743-8bec-dacb742d72ec")
local u31 = v8:RemoteEvent("df94755a-d5aa-4a80-9ff2-2e4fbdbec6e9")
local u32 = v8:RemoteEvent("PlotService/ToggleFriends")
local u33 = [Link]
local u34 = {}
u34.__index = u34
local function u72(u35) --[[Anonymous function at line 83]]
--[[
Upvalues:
[1] = u6
[2] = u14
[3] = u16
[4] = u18
[5] = u20
[6] = u21
[7] = u17
[8] = u13
[9] = u27
[10] = u22
[11] = u9
[12] = u10
[13] = u28
[14] = u33
[15] = u30
[16] = u23
--]]
local u36 = [Link]:Get("AnimalList") or {}
local function v56(p37) --[[Anonymous function at line 109]]
--[[
Upvalues:
[1] = u35
[2] = u36
[3] = u6
[4] = u14
[5] = u16
[6] = u18
[7] = u20
[8] = u21
[9] = u17
[10] = u13
[11] = u27
[12] = u22
[13] = u9
--]]
if not [Link][p37] and u36[p37] then
local v38 = u36[p37]
if typeof(v38) == "table" then
if [Link][p37] == nil then
[Link][p37] = [Link]()
end
local u39 = u14[u36[p37].Index]:Clone()
for _, v40 in u39:GetDescendants() do
if v40:IsA("BasePart") then
[Link] = false
[Link] = false
[Link] = false
[Link] = true
elseif v40:IsA("ParticleEmitter") then
v40:GetAttribute("ParticleType")
end
end
local v41 = u36[p37].Mutation
if v41 then
u16:ApplyMutation(u39, u36[p37].Index, v41)
end
[Link] = true
[Link] = workspace

u39:PivotTo([Link]:FindFirstChild(p37).[Link]:GetPivot())
local v42 = u39:FindFirstChildOfClass("AnimationController") or
[Link]("AnimationController", u39)
local v43 = v42:FindFirstChildOfClass("Animator") or
[Link]("Animator", v42)
local v44 = u18:FindFirstChild(u36[p37].Index)
if v44 then
v44 = v44:FindFirstChild("Idle")
end
if v44 and v43 then
local v45 = v43:LoadAnimation(v44)
[Link] = true
v45:Play()
end
local v46 = [Link]("Attachment",
[Link]:FindFirstChild(p37).[Link])
local v47 = u39:GetExtentsSize()
[Link] = [Link](0, v47.Y * 0.75, 0)
local v48 = u20[u36[p37].Index]
local v49 = u21[[Link]]
local u50 = u17:Clone()
[Link] = [Link]
[Link] =
("$%*/s"):format((u13:ToString(u16:GetGeneration(u36[p37].Index, u36[p37].Mutation,
nil))))
[Link] = ("$
%*"):format((u13:ToString(u16:GetPrice(u36[p37].Index, u27))))
[Link] = [Link]
[Link].TextColor3 = u21[[Link]].Color
if v41 then
local v51 = u22[v41]
[Link] = [Link]
[Link].TextColor3 = [Link]
end
[Link] = v41 ~= nil
if u21[[Link]].StrokeColor then
[Link] = u21[[Link]].StrokeColor
end
[Link] = v46
if [Link] then
[Link][p37] = [Link]([Link],
[Link], 0.5)
end
[Link][p37]:Add([Link]:OnChanged(("AnimalList.
%*.Steal"):format(p37), function(p52) --[[Anonymous function at line 182]]
--[[
Upvalues:
[1] = u39
[2] = u50
--]]
for _, v53 in u39:GetDescendants() do
if v53:IsA("BasePart") then
local v54 = v53:GetAttribute("DefaultTransparency")
if v54 == nil then
v54 = [Link]
v53:SetAttribute("DefaultTransparency", v54)
end
if p52 == true and [Link] < 1 then
[Link] = 0.5
else
[Link] = v54
end
end
end
for _, v55 in u50:GetChildren() do
if v55:IsA("TextLabel") then
if not v55:GetAttribute("DefaultState") then
v55:SetAttribute("DefaultState", [Link])
end
if p52 == true then
if [Link] == "Stolen" then
[Link] = true
else
[Link] = false
end
elseif [Link] == "Stolen" then
[Link] = false
else
[Link] = v55:GetAttribute("DefaultState")
end
end
end
end, true))
[Link][p37] = v46
[Link][p37] = u39
end
end
end
local function v61(p57) --[[Anonymous function at line 228]]
--[[
Upvalues:
[1] = u36
[2] = u20
[3] = u16
[4] = u27
[5] = u35
[6] = u13
--]]
local v58 = u36[p57]
local _ = u20[[Link]]
local v59 = workspace:GetServerTimeNow() - [Link]
local v60 = [Link](v59) * u16:GetGeneration([Link], [Link],
u27)

[Link]:FindFirstChild(p57).[Link] =
("Collect <br/><font color=\"#73ff00\">$%*</font>"):format((u13:ToString(v60)))
if [Link] then

[Link]:FindFirstChild(p57).[Link] =
("(Offline Cash: <font
color=\"#73ff00\">$%*</font>)"):format((u13:ToString([Link] *
u16:GetGeneration([Link], [Link], u27))))
end

[Link]:FindFirstChild(p57).[Link]
= [Link] ~= nil
[Link]:FindFirstChild(p57).[Link]
= true
end
local function v67(u62) --[[Anonymous function at line 241]]
--[[
Upvalues:
[1] = u36
[2] = u35
[3] = u10
[4] = u27
[5] = u28
[6] = u33
[7] = u30
--]]
local v63 = u36[u62]
local v64 = [Link]
local v65 = [Link]:FindFirstChild(u62).[Link]
if [Link][u62] then
if [Link][u62].AnimalIndex == v64 then
return
end
[Link][u62]:Destroy()
[Link][u62] = [Link](u62, v64, [Link])
else
[Link][u62] = [Link](u62, v64, [Link])
end
local v66 = [Link][u62]
if u35:GetOwner() == u27 and v66:GetState() ~= "Owner" then
v66:SetState("Owner", function() --[[Anonymous function at line 260]]
--[[
Upvalues:
[1] = u28
[2] = u62
--]]
u28:FireServer(u62)
end)
return
elseif [Link] == true and v66:GetState() ~= "Stealing" then
v66:SetState("Stealing")
elseif v66:GetState() ~= "Steal" then
v66:SetState("Steal", function() --[[Anonymous function at line 266]]
--[[
Upvalues:
[1] = u33
[2] = u30
[3] = u35
[4] = u62
--]]
u33(u30, workspace:GetServerTimeNow() + 248, "4387907b-47ba-4711-
a39f-db5c57ff11f2", [Link], u62)
u30:FireServer(workspace:GetServerTimeNow() + 248, "2bfdbfa6-2f00-
421d-bec4-2b7bf75c3480", [Link], u62)
end)
end
end
local function v69(p68) --[[Anonymous function at line 87]]
--[[
Upvalues:
[1] = u35
--]]
if [Link][p68] then
[Link][p68]:Destroy()
[Link][p68] = nil
end
if [Link][p68] then
[Link][p68]:Destroy()
[Link][p68] = nil
end
if [Link][p68] then
[Link][p68]:Destroy()
[Link][p68] = nil
end
if [Link][p68] then
[Link][p68]:Destroy()
[Link][p68] = nil
end
if [Link][p68] then
[Link][p68]:Clean()
end
end
for v70 = 1, u23[[Link]:GetAttribute("Tier")].MaxAnimals do
local v71 = u36[v70]
if v71 == "Empty" or v71 == nil then
v69(v70)

[Link]:FindFirstChild(v70).[Link] = false
elseif v71 and typeof(v71) == "table" then
v56(v70)
v61(v70)
v67(v70)
else
v69(v70)

[Link]:FindFirstChild(v70).[Link] = false
end
end
end
local function u80(p73) --[[Anonymous function at line 316]]
--[[
Upvalues:
[1] = u12
--]]
p73:GetOwner()
local v74
if [Link]:Get("BlockEndTime") == nil then
v74 = false
else
local v75 = [Link]:Get("BlockEndTime") - workspace:GetServerTimeNow()
local v76 = [Link](v75)
local v77 = [Link](v76, 0, (1 / 0))
for _, v78 in [Link]:GetChildren() do
[Link] = u12:C(v77)
end
v74 = true
end
for _, v79 in [Link]:GetChildren() do
[Link] = not v74
[Link] = v74
[Link] = v74
end
end
local function u88(p81) --[[Anonymous function at line 340]]
--[[
Upvalues:
[1] = u12
--]]
if [Link]:Get("BlockEndTime") == nil then
p81:GetOwner()
local v82
if [Link]:Get("BlockedDelayTime") == nil then
v82 = false
else
local v83 = [Link]:Get("BlockedDelayTime") -
workspace:GetServerTimeNow()
local v84 = [Link](v83)
local v85 = [Link](v84, 0, (1 / 0))
for _, v86 in [Link]:GetChildren() do
[Link] = u12:C(v85)
end
v82 = true
end
for _, v87 in [Link]:GetChildren() do
[Link] = not v82
[Link] = v82
[Link] = v82
end
end
end
local function u92(p89) --[[Anonymous function at line 368]]
--[[
Upvalues:
[1] = u27
--]]
if p89:GetOwner() ~= u27 then
local v90 = [Link]:Get("BlockEndTime") ~= nil
for _, v91 in [Link]:GetChildren() do
[Link] = v90
end
end
end
local function u100(p93) --[[Anonymous function at line 384]]
--[[
Upvalues:
[1] = u27
[2] = u25
--]]
if [Link] then
if [Link] then
local v94 = [Link]:Get("BlockEndTime") ~= nil
local v95
if p93:GetOwner() == u27 then
v95 = false
else
local v96 = p93:GetOwner()
if v96 and v94 == true then
local v97 = u25:GetInGameFriends(u27)
v95 = (not [Link](v97, v96) or
[Link]:Get("FriendsAllowed") ~= true) and true or false
else
v95 = false
end
end
local v98 = [Link]:WaitForChild("LaserHitbox", 5)
if v98 then
for _, v99 in v98:GetChildren() do
[Link] = v95
end
end
else
return
end
else
return
end
end
function [Link](p101) --[[Anonymous function at line 426]]
return [Link]:Get("Owner")
end
function [Link](p102) --[[Anonymous function at line 430]]
return [Link]
end
function [Link](p103) --[[Anonymous function at line 434]]
return [Link]
end
function [Link](u104) --[[Anonymous function at line 438]]
--[[
Upvalues:
[1] = u34
[2] = u6
[3] = u5
[4] = u23
[5] = u27
[6] = u2
[7] = u33
[8] = u31
[9] = u3
[10] = u29
[11] = u7
[12] = u80
[13] = u92
[14] = u72
[15] = u88
[16] = u100
[17] = u26
[18] = u25
[19] = u32
--]]
local v105 = u34
local u106 = setmetatable({}, v105)
[Link] = [Link]
[Link] = u104
[Link] = [Link]()
[Link] = [Link]()
[Link]:Add([Link], "Destroy")
[Link] = {}
[Link] = {}
[Link] = {}
[Link] = {}
[Link] = {}
[Link] = {}
[Link] = u5:Wait([Link])
local function u117() --[[Anonymous function at line 455]]
--[[
Upvalues:
[1] = u106
--]]
for v107, v108 in [Link] do
v108:Destroy()
[Link][v107] = nil
end
for v109, v110 in [Link] do
v110:Destroy()
[Link][v109] = nil
end
for v111, v112 in [Link] do
v112:Destroy()
[Link][v111] = nil
end
for v113, v114 in [Link] do
v114:Destroy()
[Link][v113] = nil
end
for v115, v116 in [Link] do
v116:Destroy()
[Link][v115] = nil
end
end
local function v137() --[[Anonymous function at line 480]]
--[[
Upvalues:
[1] = u106
[2] = u117
[3] = u23
[4] = u104
[5] = u27
[6] = u2
[7] = u33
[8] = u31
[9] = u3
[10] = u29
[11] = u7
[12] = u80
[13] = u92
[14] = u72
[15] = u88
[16] = u100
[17] = u26
[18] = u25
[19] = u32
--]]
[Link]:Clean()
u117()
for u118 = 1, u23[u104:GetAttribute("Tier")].MaxAnimals do
if u106:GetOwner() == u27 then
local v119 = {}
for _, v120 in [Link]:GetChildren() do
if [Link] == "DeliveryHitbox" then
[Link](v119, v120)
end
end
local u121 = [Link]()
[Link] = v119
[Link] = [Link]
[Link] = 1
local u122 = 0
[Link]:Add([Link]:Connect(function(p123) --
[[Anonymous function at line 503]]
--[[
Upvalues:
[1] = u122
[2] = u27
[3] = u121
[4] = u33
[5] = u31
--]]
u122 = u122 + p123
if u122 < 0.05 then
return
else
u122 = 0
if u27:GetAttribute("Stealing") then
local v124 = [Link]
if v124 then
local v125 = v124:GetPivot().Position
if #workspace:GetPartBoundsInBox([Link](v125),
[Link](4, 4, 2), u121) > 0 then
u33(u31, "87fde5d4-f1bd-4efc-a7bb-
089d2e0e74a2")
u31:FireServer("87fde5d4-f1bd-4efc-a7bb-
089d2e0e74a2")
end
else
return
end
else
return
end
end
end))
local v126 = [Link]:FindFirstChild(u118)
if v126 then
v126 = [Link]
end
[Link]:Add([Link]:Connect(function(p127) --
[[Anonymous function at line 548]]
--[[
Upvalues:
[1] = u3
[2] = u27
[3] = u106
[4] = u29
[5] = u118
--]]
if [Link] == "HumanoidRootPart" then
local v128 = u3:GetPlayerFromCharacter([Link])
if v128 then
if v128 == u27 then
if v128 == u106:GetOwner() then
u29:FireServer(u118)
end
end
else
return
end
else
return
end
end))
end
end
[Link] = [Link](1)
[Link]:Add([Link], "Destroy")
[Link]:Add([Link]:Connect(function() --
[[Anonymous function at line 564]]
--[[
Upvalues:
[1] = u80
[2] = u106
[3] = u92
[4] = u72
[5] = u88
--]]
u80(u106)
u92(u106)
u72(u106)
u88(u106)
end))
[Link]:StartNow()
[Link]:Add([Link]:OnChanged("BlockEndTime", function()
--[[Anonymous function at line 572]]
--[[
Upvalues:
[1] = u80
[2] = u106
[3] = u92
[4] = u88
[5] = u100
--]]
u80(u106)
u92(u106)
u88(u106)
u100(u106)
end, true))
[Link]:Add([Link]:OnChanged("BlockedDelayTime",
function() --[[Anonymous function at line 579]]
--[[
Upvalues:
[1] = u80
[2] = u106
[3] = u88
[4] = u100
--]]
u80(u106)
u88(u106)
u100(u106)
end, true))
[Link]:Add([Link]:OnChanged("AnimalList", function(_) --
[[Anonymous function at line 585]]
--[[
Upvalues:
[1] = u72
[2] = u106
--]]
u72(u106)
end, true))
for _, v129 in [Link]:GetChildren() do

[Link]:Add([Link]:Connect(function(p130) --
[[Anonymous function at line 591]]
--[[
Upvalues:
[1] = u106
[2] = u26
--]]
if p130 and p130:IsA("Player") then
if u106:GetOwner() == p130 then
return
end
local v131 = u106:GetOwner().UserId
if [Link]:Get("BlockEndTime") ~= nil then
u26:FireServer(3301638537, v131)
end
end
end))

[Link]:Add([Link]:Connect(function(p132) --
[[Anonymous function at line 603]]
--[[
Upvalues:
[1] = u106
[2] = u26
[3] = u100
--]]

[Link]:Add([Link]:Connect(function(p133) --
[[Anonymous function at line 604]]
--[[
Upvalues:
[1] = u106
[2] = u26
--]]
if p133 and p133:IsA("Player") then
if u106:GetOwner() == p133 then
return
end
local v134 = u106:GetOwner().UserId
if [Link]:Get("BlockEndTime") ~= nil then
u26:FireServer(3301638537, v134)
end
end
end))
u100(u106)
end))
end
local u135 = [Link]
[Link]:Add([Link]:OnChanged("FriendsAllowed",
function(p136) --[[Anonymous function at line 621]]
--[[
Upvalues:
[1] = u135
[2] = u106
[3] = u100
--]]
[Link] = p136 == true and "Disallow Friends" or "Allow
Friends"
[Link] = p136 ==
true and "rbxassetid://110507824065923" or "rbxassetid://110783679426495"
u100(u106)
end, true))
[Link]:Add([Link]:Connect(function() --
[[Anonymous function at line 627]]
--[[
Upvalues:
[1] = u100
[2] = u106
--]]
u100(u106)
end))
[Link]:Add([Link]:Connect(function() --[[Anonymous
function at line 631]]
--[[
Upvalues:
[1] = u106
[2] = u27
[3] = u32
--]]
if u106:GetOwner() == u27 then
u32:FireServer()
end
end))
[Link] = u106:GetOwner() == u27
end
[Link]:Add([Link]:OnChanged("Owner", v137, true))

[Link]:Add([Link]:GetAttributeChangedSignal("Tier"):Connect(v137))
return u106
end
function [Link](p138) --[[Anonymous function at line 650]]
for v139, v140 in [Link] do
v140:Destroy()
[Link][v139] = nil
end
for v141, v142 in [Link] do
v142:Destroy()
[Link][v141] = nil
end
for v143, v144 in [Link] do
v144:Destroy()
[Link][v143] = nil
end
for v145, v146 in [Link] do
v146:Destroy()
[Link][v145] = nil
end
for v147, v148 in [Link] do
v148:Destroy()
[Link][v147] = nil
end
[Link]:Destroy()
end
return u34

You might also like