Hakari Jackpot Emote (Took 6 hours total to make)

Made in only roblox studio. (Except audio, it is a homemade remix made in capcut)

1 Like

How did you make it look so smooth?

Two different animations, the second one loops until the audio file is finished.

The scripting was quite easy but i had to rewrite it multiple times and the canceling when moving was tricky to figure out.

local oldWalkSpeed = humanoid.WalkSpeed
	gui.Enabled = false
	gui.EmoteBG.Visible = false
	
	local animator = humanoid:FindFirstChildOfClass("Animator")
	local anim2 = Instance.new("Animation")
	gui.Visible = false
	anim2.AnimationId = "Use your own animations, not mine"
	
	local anim1 = Instance.new("Animation")
	gui.Visible = false
	anim1.AnimationId = "Use your own animations, not mine"
	
	local track = animator:LoadAnimation(anim1)
	track.Looped = false
	local track2 = animator:LoadAnimation(anim2)
	track2.Looped = true
	humanoid.WalkSpeed = 0
	local function stopEmote()
		track.Looped = false
		track:Stop()
		track2:Stop()
		game.SoundService.Emote3:Stop()
		humanoid.WalkSpeed = oldWalkSpeed > 0 and oldWalkSpeed or 16
		pcall(function()
			char.Aura:Destroy()
		end)
		gui.EmoteBG.Visible = true
		tweenService:Create(wavebutton, tweenInfo, {ImageTransparency = 0.5}):Play()
		tweenService:Create(wavename, tweenInfo, {TextTransparency = 0.5}):Play()
		tweenService:Create(wavedesc, tweenInfo, {TextTransparency = 0.5}):Play()
	end
	
	track:Play()
	task.wait(4)
	game.SoundService.Emote3:Play()
	track.Stopped:Wait()
	local aura = game.ReplicatedStorage.Aura:Clone()
	aura.Parent = char
	aura.Weld.Part1 = char.HumanoidRootPart
	track2:Play()
	game.SoundService.Emote3.Ended:Wait()
	stopEmote()	


	-- Stop emote if player moves
	local connection
	connection = humanoid.Running:Connect(function(speed)
		if speed > 0 then
			stopEmote()
			connection:Disconnect()
		end
	end)
	
	if connection then connection:Disconnect() end
1 Like