0% found this document useful (0 votes)
50 views2 pages

Script de Uppercut para Um Jogo Feito No Roblox Studio

This document outlines a script for a character's uppercut move in a game, detailing the animation, sound effects, and damage mechanics involved. It includes functionality for stunning the target, creating a hitbox, and applying knockback effects based on the hit status. Additionally, it manages camera shake effects and handles the interaction with enemy characters during the attack.

Uploaded by

joaogala09
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)
50 views2 pages

Script de Uppercut para Um Jogo Feito No Roblox Studio

This document outlines a script for a character's uppercut move in a game, detailing the animation, sound effects, and damage mechanics involved. It includes functionality for stunning the target, creating a hitbox, and applying knockback effects based on the hit status. Additionally, it manages camera shake effects and handles the interaction with enemy characters during the attack.

Uploaded by

joaogala09
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
You are on page 1/ 2

['Uppercut'] = function(Player: Player, Tool: Tool)

local Character: Model = Player.Character


local HumRP:BasePart = Character.HumanoidRootPart

local animTrack = AnimationService:getAnimationTrack(Character,


Assets.Animations.Moves.Saitama.Uppercut.User)
animTrack:Play()
local AnimTrackEvents = AnimationEvents.new(animTrack)
StunHandler:Stun(Character,1.11,false,0,0,false)
task.delay(0.6, function()
TS:Create(HumRP, TweenInfo.new(.4, Enum.EasingStyle.Sine,
Enum.EasingDirection.Out), { Position = HumRP.Position + Vector3.new(0, 9,
0) }):Play()
wait(0.5)
HumRP.Anchored = false
end)
SoundsModule:PlaySound(MoveSounds.Saitama.Uppercut.Swing,
Character)

AnimTrackEvents:AddEvent('Hit', { 0.50 }, function()


local Hit = false
local Hitbox = HitboxHandler.new()
Hitbox.Instance = HumRP
Hitbox.Size = Vector3.new(1,1,1) * 7
Hitbox.Offset = CFrame.new(0,0,-Hitbox.Size.Z/2)
Hitbox.onTouch = function(EnemyCharacter)
if EnemyCharacter == Character or
iFramesService:HasiFrame(EnemyCharacter, Tool.Name) then return end

local EnemyHumanoid: Humanoid =


EnemyCharacter.Humanoid

local HitInfo = DamageHandler:TakeDamage(Character,


EnemyHumanoid, 3.5, nil, nil, false, true, true, true, false, nil)

if HitInfo.Countered == true or Hit == true then


return end

AnimationService:stopAll(EnemyCharacter)

Hit = true

ReplicateEffects_Set:FireClient(Player,
'ShakeCamera', { Magnitude = 3, Roughness = 20, FadeInTime = 0, FadeOutTime
= .25 })

SoundsModule:PlaySound(MoveSounds.Saitama.Uppercut.Hit, HumRP, 1, 1)

-- Animations --

local HitInfo = DamageHandler:TakeDamage(Character,


EnemyHumanoid, 17, nil, nil, true, false)

local knockBack = 75
if HitInfo.Finisher == true then
knockBack *= 10
SoundsModule:PlaySound(MoveSounds.Saitama.Uppercut.Finisher, Character)
end

local rgdlr = nil


if EnemyHumanoid.Health - 3.5 <= 0 then

ReplicateEffects_Set:FireAllClients('TorsoTrail', { Char = EnemyCharacter })

ReplicateEffects_Set:FireClient(Player,
'ShakeCamera', { Magnitude = 2, Roughness = 20, FadeInTime = 0, FadeOutTime =
1.5 })

rgdlr = Character

else
ReplicateEffects_Set:FireClient(Player,
'ShakeCamera', { Preset = 'Explosion' })
end

KnockbackModule:Knockback(EnemyCharacter,
HumRP.CFrame.LookVector * 175, Character)
NewKnockback:makeEnemyFaceCharacter(EnemyCharacter,
Character)
NewKnockback:Knockback(EnemyCharacter,
{ KnockbackType = 'Velocity', MaxForce = Vector3.new(1,1,1) * math.huge, Velocity =
Vector3.new(HumRP.CFrame.LookVector.X * 70, knockBack, HumRP.CFrame.LookVector.Z *
70) })

end
Hitbox:Once()
Hitbox:Destroy()

end)
AnimTrackEvents:Play()
end,

You might also like