local module = {}
local ids = {
IdleLoop = "rbxassetid://95141387481787",
HammerSlam = "rbxassetid://132459484858789",
IdleLoopColui = "rbxassetid://95773060754511",
InitColui = "rbxassetid://104889654274600",
HammerSlamColui = "rbxassetid://89102035506225",
}
local rigs = {
Eternity_Devs = script.Parent.Parent.Eternity_Devs_rig,
vitorpvp1337 = script.Parent.Parent.vitorpvp1337_rig,
NominoDev = script.Parent.Parent.NominoDev_rig,
MoonGibbo_Dev = script.Parent.Parent.MoonGibbo_Dev_rig,
WillyFromBelair = script.Parent.Parent.WillyFromBelair_rig,
sir_aureus = script.Parent.Parent.sir_aureus_rig,
collll = script.Parent.Parent.collll_rig
}
function loadAnim(animator:Animator, id:string|number, name:string, looped:boolean, priority:Enum.AnimationPriority):AnimationTrack
local anim = Instance.new("Animation")
anim.Name = name
anim.AnimationId = id
local track = animator:LoadAnimation(anim)
track.Looped = looped
track.Priority = priority
return track
end
local rigSteps = {
{
NowRig = rigs.Eternity_Devs,
NextRig = rigs.vitorpvp1337,
Idle = loadAnim(rigs.Eternity_Devs:FindFirstChild("Animator",true),ids.IdleLoop,"Idle",true,Enum.AnimationPriority.Core),
Hammer_Anim = loadAnim(rigs.Eternity_Devs:FindFirstChild("Animator",true),ids.HammerSlam,"Hammer",false,Enum.AnimationPriority.Action),
},
{
NowRig = rigs.vitorpvp1337,
NextRig = rigs.NominoDev,
Idle = loadAnim(rigs.vitorpvp1337:FindFirstChild("Animator",true),ids.IdleLoop,"Idle",true,Enum.AnimationPriority.Core),
Hammer_Anim = loadAnim(rigs.vitorpvp1337:FindFirstChild("Animator",true),ids.HammerSlam,"Hammer",false,Enum.AnimationPriority.Action),
},
{
NowRig = rigs.NominoDev,
NextRig = rigs.MoonGibbo_Dev,
Idle = loadAnim(rigs.NominoDev:FindFirstChild("Animator",true),ids.IdleLoop,"Idle",true,Enum.AnimationPriority.Core),
Hammer_Anim = loadAnim(rigs.NominoDev:FindFirstChild("Animator",true),ids.HammerSlam,"Hammer",false,Enum.AnimationPriority.Action),
},
{
NowRig = rigs.MoonGibbo_Dev,
NextRig = rigs.WillyFromBelair,
Idle = loadAnim(rigs.MoonGibbo_Dev:FindFirstChild("Animator",true),ids.IdleLoop,"Idle",true,Enum.AnimationPriority.Core),
Hammer_Anim = loadAnim(rigs.MoonGibbo_Dev:FindFirstChild("Animator",true),ids.HammerSlam,"Hammer",false,Enum.AnimationPriority.Action),
},
{
NowRig = rigs.WillyFromBelair,
NextRig = rigs.sir_aureus,
Idle = loadAnim(rigs.WillyFromBelair:FindFirstChild("Animator",true),ids.IdleLoop,"Idle",true,Enum.AnimationPriority.Core),
Hammer_Anim = loadAnim(rigs.WillyFromBelair:FindFirstChild("Animator",true),ids.HammerSlam,"Hammer",false,Enum.AnimationPriority.Action),
},
{
NowRig = rigs.sir_aureus,
NextRig = rigs.collll,
Idle = loadAnim(rigs.sir_aureus:FindFirstChild("Animator",true),ids.IdleLoop,"Idle",true,Enum.AnimationPriority.Core),
Hammer_Anim = loadAnim(rigs.sir_aureus:FindFirstChild("Animator",true),ids.HammerSlam,"Hammer",false,Enum.AnimationPriority.Action),
},
{
NowRig = rigs.collll,
NextRig = nil,
InitClap = loadAnim(rigs.collll:FindFirstChild("Animator",true),ids.InitColui,"Idle",false,Enum.AnimationPriority.Core),
Idle = loadAnim(rigs.collll:FindFirstChild("Animator",true),ids.IdleLoopColui,"Idle",true,Enum.AnimationPriority.Core),
Hammer_Anim = loadAnim(rigs.collll:FindFirstChild("Animator",true),ids.HammerSlamColui,"Hammer",false,Enum.AnimationPriority.Action),
},
}
return {rigSteps = rigSteps, Anims_Ids = ids}
local function doStep(step:steptype)
if step.Idle.IsPlaying then
-- step.Idle.DidLoop:Wait()
end
step.Hammer_Anim:Play()
--step.Idle:Stop()
local HammerModel = step.NowRig:FindFirstChild("Hammer")
step.Hammer_Anim:GetMarkerReachedSignal("ReceiveHammer"):Once(function()
task.spawn(MakeModelVisible, HammerModel, true)
end)
step.Hammer_Anim:GetMarkerReachedSignal("SendHammer"):Once(function()
task.spawn(MakeModelVisible, HammerModel, false)
local nextStep = nil
for _, steptab in ipairs(rigSteps) do
if steptab.NowRig == step.NextRig then
nextStep = steptab
break
end
end
if nextStep then
task.spawn(doStep, nextStep)
end
end)
step.Hammer_Anim.Stopped:Once(function()
--step.Idle:Play(0)
end)
end