local chr = owner.Character
local root = chr.HumanoidRootPart
local hum = chr.Humanoid
chr:findFirstChild'Health':Destroy()
hum.MaxHealth = 7000
hum.Health = 7000
hum.WalkSpeed = 36
local desc = Instance.new("HumanoidDescription")
desc.Shirt = 5151872516
desc.Pants = 5170686244
desc.HeadColor = Color3.fromRGB(13, 105, 172)
desc.TorsoColor = Color3.fromRGB(13, 105, 172)
desc.RightArmColor = Color3.fromRGB(13, 105, 172)
desc.LeftArmColor = Color3.fromRGB(13, 105, 172)
desc.RightLegColor = Color3.fromRGB(13, 105, 172)
desc.LeftLegColor = Color3.fromRGB(13, 105, 172)
hum:ApplyDescription(desc)
chr.Head.Transparency = 1
chr.Head.face:Destroy()
table.foreach(chr:children(),function(_,v)
if v.ClassName == "Part" then
v.Size = v.Size * 1.25
end
end)
size = chr.Torso.Size.Z
local fakehead = Instance.new("Part")
fakehead.Size = Vector3.new(2 * size,1 * size,1 * size)
fakehead.Massless = true
fakehead.CanCollide = false
fakehead.Anchored = false
fakehead.Parent = chr
local fakeheadweld = Instance.new("Weld")
fakeheadweld.Part0 = fakehead
fakeheadweld.Part1 = chr.Head
fakeheadweld.C0 = CFrame.new(0,-.4 * size,0) * CFrame.Angles(0,-math.rad(25),0)
fakeheadweld.Parent = fakehead
local fakeheadmesh = Instance.new("SpecialMesh")
fakeheadmesh.MeshId = "rbxassetid://3242347943"
fakeheadmesh.TextureId = "rbxassetid://3055156478"
fakeheadmesh.Scale = Vector3.new(1 * size,1 * size,1 * size)
fakeheadmesh.Parent = fakehead
local racket = Instance.new("Part")
racket.Size = Vector3.new(2 * size,1 * size,1 * size)
racket.Massless = true
racket.CanCollide = false
racket.Anchored = false
racket.Transparency = 1
racket.Parent = chr
local racketweld = Instance.new("Weld")
racketweld.Part0 = racket
racketweld.Part1 = chr:findFirstChild'Right Arm'
racketweld.C0 = CFrame.new(0,-1.5 * size,1 * size) * CFrame.Angles(math.rad(90),0,0)
racketweld.Parent = racket
local racketmesh = Instance.new("SpecialMesh")
racketmesh.MeshId = "rbxassetid://717279569"
racketmesh.TextureId = "rbxassetid://717279680"
racketmesh.Scale = Vector3.new(2.5 * size,2.5 * size,2.5 * size)
racketmesh.Parent = racket
function joint(p0,p1,c0x,c0y,c0z,c1x,c1y,c1z,name)
local w = Instance.new("Weld")
w.Part0 = p0
w.Part1 = p1
w.C0 = CFrame.new(c0x,c0y,c0z)
w.C1 = CFrame.new(c1x,c1y,c1z)
w.Name = name
w.Parent = p0
return w
end
NK = joint(chr.Torso,chr.Head,0,1 * size,0,0,-1/2 * size,0,'Neck')
RJ = joint(root,chr.Torso,0,0,0,0,0,0,'RootJoint')
RS = joint(chr.Torso,chr:findFirstChild('Right Arm'),1.5 * size,0.5 * size,0,0,0.5 * size,0,'Right Shoulder')
LS = joint(chr.Torso,chr:findFirstChild('Left Arm'),-1.5 * size,0.5 * size,0,0,0.5 * size,0,'Left Shoulder')
RH = joint(chr.Torso,chr:findFirstChild('Right Leg'),0.5 * size,-1 * size,0,0,1 * size,0,'Right Hip')
LH = joint(chr.Torso,chr:findFirstChild('Left Leg'),-0.5 * size,-1 * size,0,0,1 * size,0,'Left Hip')
t = tick()
RSC0 = RS.C0
LSC0 = LS.C0
RHC0 = RH.C0
LHC0 = LH.C0
RJC0 = RJ.C0
NKC0 = NK.C0
local theme = Instance.new("Sound")
theme.SoundId = "rbxassetid://5378867055"
theme.Volume = 1.25
theme.Looped = true
theme.Parent = root
theme:Play()
local healthgui = Instance.new("BillboardGui")
healthgui.Adornee = root
healthgui.Name = "healthbar"
healthgui.Size = UDim2.new(3,0,2.5,0)
healthgui.StudsOffset = Vector3.new(-3,5,0)
healthgui.Parent = root
local damagebar = Instance.new("Frame")
damagebar.Size = UDim2.new(3,0,.5,0)
damagebar.BackgroundColor3 = Color3.fromRGB(255,47,47)
damagebar.BorderColor3 = Color3.fromRGB(163,60,65)
damagebar.Parent = healthgui
local healthbar = Instance.new("Frame")
healthbar.Size = UDim2.new(hum.Health / hum.MaxHealth,0,1,0)
healthbar.BackgroundColor3 = Color3.fromRGB(99,254,147)
healthbar.BorderColor3 = Color3.fromRGB(58,138,97)
healthbar.Parent = damagebar
local namegui = Instance.new("BillboardGui")
namegui.Adornee = root
namegui.Name = "nametext"
namegui.Size = UDim2.new(2.5,0,1.5,0)
namegui.StudsOffset = Vector3.new(-1.75,7.5,0)
namegui.Parent = root
local nametext = Instance.new("TextBox")
nametext.Size = UDim2.new(2.5,0,1.5,0)
nametext.BackgroundTransparency = 1
nametext.TextStrokeTransparency = 0
nametext.TextScaled = true
nametext.TextWrapped = true
nametext.Font = "Arcade"
nametext.TextColor3 = Color3.new(1,1,1)
nametext.TextStrokeColor3 = Color3.new()
nametext.Text = "John Bomb"
nametext.Parent = namegui
local healthtext = Instance.new("TextBox")
healthtext.Size = UDim2.new(1.5,0,.5,0)
healthtext.BackgroundTransparency = 1
healthtext.TextStrokeTransparency = 0
healthtext.TextScaled = true
healthtext.TextWrapped = true
healthtext.Font = "Arcade"
healthtext.TextColor3 = Color3.new(1,1,1)
healthtext.TextStrokeColor3 = Color3.new()
healthtext.Text = hum.Health
healthtext.TextXAlignment = "Left"
healthtext.Parent = healthgui
local chatgui = Instance.new("BillboardGui")
chatgui.Adornee = root
chatgui.Name = "nametext"
chatgui.Size = UDim2.new(10,0,4,0)
chatgui.StudsOffset = Vector3.new(0,3,0)
chatgui.Parent = root
local chatbase = Instance.new("Frame")
chatbase.Size = UDim2.new(1,0,0.75,0)
chatbase.BackgroundColor3 = Color3.fromRGB(35,35,35)
chatbase.BorderSizePixel = 0
chatbase.Position = UDim2.new(0,0,.5,0)
chatbase.BackgroundTransparency = 1
chatbase.Parent = chatgui
local johnimage = Instance.new("ImageLabel")
johnimage.Size = UDim2.new(.25,0,.625,0)
johnimage.BackgroundTransparency = 1
johnimage.BorderSizePixel = 0
johnimage.Position = UDim2.new(.025,0,.575,0)
johnimage.Image = "rbxassetid://5637804418"
johnimage.ZIndex = 2
johnimage.ImageTransparency = 1
johnimage.Parent = chatgui
local johnimagebackground = Instance.new("Frame")
johnimagebackground.Size = UDim2.new(.265,0,0.65,0)
johnimagebackground.BackgroundColor3 = Color3.fromRGB(35,35,35)
johnimagebackground.BorderSizePixel = 0
johnimagebackground.Position = UDim2.new(.0175,0,.55,0)
johnimagebackground.ZIndex = 1
johnimagebackground.BackgroundTransparency = 1
johnimagebackground.Parent = chatgui
local chatnametext = Instance.new("TextBox")
chatnametext.Size = UDim2.new(.5,0,.2,0)
chatnametext.BackgroundTransparency = 1
chatnametext.TextStrokeTransparency = 1
chatnametext.TextScaled = true
chatnametext.TextWrapped = true
chatnametext.Font = "Arcade"
chatnametext.TextColor3 = Color3.new(1,1,1)
chatnametext.TextStrokeColor3 = Color3.new()
chatnametext.Text = "- JOHN BOMB -"
chatnametext.Position = UDim2.new(.3,0,.5,0)
chatnametext.TextTransparency = 1
chatnametext.Parent = chatgui
local chattext = Instance.new("TextBox")
chattext.Size = UDim2.new(.6,0,.5,0)
chattext.BackgroundTransparency = 1
chattext.TextStrokeTransparency = 1
chattext.TextScaled = true
chattext.TextWrapped = true
chattext.Font = "Arcade"
chattext.TextColor3 = Color3.new(1,1,1)
chattext.TextStrokeColor3 = Color3.new()
chattext.Text = "John Bomb here, the NEW CEO of BTHG. Don't worry about redmiint8, FuzzyDimonds, or the rest of the devs."
chattext.Position = UDim2.new(.3,0,.65,0)
chattext.TextTransparency = 1
chattext.TextXAlignment = "Left"
chattext.Parent = chatgui
function Tween(p,g,i)
game:service'TweenService':Create(p,i,g):Play()
end
local t = tick()
local action,exactVel,vel,animMove = '',0,0,true
local throwing = false
local exploding = false
local ragemode = false
local swinging = false
local bombexplosionsounds = {}
local bombexplosionsoundparts = {}
local bombexplosionnumber = 1
for i = 1,6 do
local bombexplosionsound = Instance.new("Sound")
bombexplosionsound.SoundId = "rbxassetid://315775189"
bombexplosionsound.Volume = 10
local bombexplosionsoundpart = Instance.new("WedgePart")
bombexplosionsoundpart.Size = Vector3.new(0,0,0)
bombexplosionsoundpart.Anchored = true
bombexplosionsoundpart.CanCollide = false
bombexplosionsoundpart.Transparency = 1
table.insert(bombexplosionsounds,bombexplosionsound)
table.insert(bombexplosionsoundparts,bombexplosionsoundpart)
end
local chatSounds = {}
for i = 1,6 do
local sound = Instance.new("Sound")
sound.Parent = nil
sound.SoundId = "rbxassetid://5638094432"
sound.Volume = 2
table.insert(chatSounds,sound)
end
local chatSoundsNumber = 1
local bombsSounds = {}
for i = 1,6 do
local sound = Instance.new("Sound")
sound.Parent = nil
sound.SoundId = "rbxassetid://5930842913"
sound.Volume = 10
table.insert(bombsSounds,sound)
end
local bombsSoundsnumber = 1
hum.BreakJointsOnDeath = false
function throwbomb()
hum.WalkSpeed = 36
bombexplosionnumber = bombexplosionnumber + 1
if bombexplosionnumber > 6 then
bombexplosionnumber = 1
end
bombsSoundsnumber = bombsSoundsnumber + 1
if bombsSoundsnumber > 6 then
bombsSoundsnumber = 1
end
animMove = false
throwing = true
local bombschoice = bombsSounds[bombsSoundsnumber]
bombschoice.Parent = root
bombschoice:Play()
local bomb = Instance.new("FlagStand")
bomb.Size = Vector3.new(1.3,1.9,1.3)
bomb.CanCollide = false
bomb.Massless = true
bomb.Name = "Bomb"
bomb.Parent = script
local bombweld = Instance.new("Weld")
bombweld.Part0 = chr:findFirstChild('Left Arm')
bombweld.Part1 = bomb
bombweld.C0 = CFrame.new(0,-1 * size,-.185 * size) * CFrame.Angles(-math.rad(90),math.rad(25),0)
bombweld.Parent = bomb
game:service'Debris':AddItem(bomb,1.7)
game:service'Debris':AddItem(bombweld,.2)
local bombmesh = Instance.new("SpecialMesh")
bombmesh.MeshId = "rbxassetid://3242347943"
bombmesh.TextureId = "rbxassetid://3055156478"
bombmesh.Parent = bomb
action = 'ThrowA'
wait(.2)
bomb.CanCollide = true
local bv = Instance.new("BodyVelocity")
bv.Velocity = root.CFrame.LookVector * 60
bv.Parent = bomb
game:service'Debris':AddItem(bv,.1)
action = 'ThrowB'
wait(.3)
hum.WalkSpeed = 36
animMove = true
throwing = false
wait(1.2)
local bombexplosionsoundpartchoice = bombexplosionsoundparts[bombexplosionnumber]
bombexplosionsoundpartchoice.Parent = script
local bombexplosion = Instance.new("Part")
bombexplosion.Size = Vector3.new(3,3,3)
bombexplosion.BrickColor = BrickColor.new("Bright orange")
bombexplosion.Material = "Neon"
bombexplosion.CanCollide = false
bombexplosion.Massless = true
bombexplosion.Anchored = true
bombexplosion.Position = bomb.Position
bombexplosionsoundpartchoice.Position = bombexplosion.Position
bombexplosion.Parent = script
local bombexplosionmesh = Instance.new("SpecialMesh")
bombexplosionmesh.MeshType = "Sphere"
bombexplosionmesh.Parent = bombexplosion
local bombexplosionchoice = bombexplosionsounds[bombexplosionnumber]
bombexplosionchoice.Parent = bombexplosionsoundpartchoice
bombexplosionchoice:Play()
Tween(bombexplosion,{Size = Vector3.new(35,35,35),Transparency = 1},TweenInfo.new(.75,Enum.EasingStyle.Circular))
local touched = {}
bombexplosion.Touched:connect(function(hit)
local hithum = hit.Parent:FindFirstChildOfClass("Humanoid") or hit.Parent.Parent:FindFirstChildOfClass("Humanoid")
if hithum and hithum ~= hum then
local h = true
table.foreach(touched,function(_,v)
if v == hithum then
h = false
end
end)
if h then
hithum:TakeDamage(1)
end
end
end)
game:service'Debris':AddItem(bombexplosion,.75)
wait(bombexplosionchoice.TimeLength)
bombexplosionsoundpartchoice.Parent = nil
bombexplosionchoice.Parent = nil
bombschoice.Parent = nil
end
function headexplode()
bombexplosionnumber = bombexplosionnumber + 1
if bombexplosionnumber > 6 then
bombexplosionnumber = 1
end
animMove = false
exploding = true
action = 'ExplodeA'
wait(.4)
action = 'ExplodeB'
Tween(fakehead,{Transparency = 1},TweenInfo.new(.5,Enum.EasingStyle.Circular))
local bombexplosionsoundpartchoice = bombexplosionsoundparts[bombexplosionnumber]
bombexplosionsoundpartchoice.Parent = script
local bombexplosion = Instance.new("Part")
bombexplosion.Size = Vector3.new(3,3,3)
bombexplosion.BrickColor = BrickColor.new("Bright orange")
bombexplosion.Material = "Neon"
bombexplosion.CanCollide = false
bombexplosion.Massless = true
bombexplosion.Anchored = true
bombexplosion.Position = fakehead.Position
bombexplosionsoundpartchoice.Position = bombexplosion.Position
bombexplosion.Parent = script
local bombexplosionmesh = Instance.new("SpecialMesh")
bombexplosionmesh.MeshType = "Sphere"
bombexplosionmesh.Parent = bombexplosion
local bombexplosionchoice = bombexplosionsounds[bombexplosionnumber]
bombexplosionchoice.Parent = bombexplosionsoundpartchoice
bombexplosionchoice:Play()
Tween(bombexplosion,{Size = Vector3.new(35,35,35),Transparency = 1},TweenInfo.new(.75,Enum.EasingStyle.Circular))
local touched = {}
bombexplosion.Touched:connect(function(hit)
local hithum = hit.Parent:FindFirstChildOfClass("Humanoid") or hit.Parent.Parent:FindFirstChildOfClass("Humanoid")
if hithum and hithum ~= hum then
local h = true
table.foreach(touched,function(_,v)
if v == hithum then
h = false
end
end)
if h then
hithum:TakeDamage(1)
end
end
end)
game:service'Debris':AddItem(bombexplosion,.75)
coroutine.wrap(function()
wait(.5)
Tween(fakehead,{Transparency = 0},TweenInfo.new(1.25,Enum.EasingStyle.Circular))
end)()
coroutine.wrap(function()
wait(bombexplosionchoice.TimeLength)
bombexplosionsoundpartchoice.Parent = nil
bombexplosionchoice.Parent = nil
end)()
wait(.25)
animMove = true
hum.WalkSpeed = 36
exploding = false
end
local touched = {}
racket.Touched:connect(function(hit)
local hithum = hit.Parent:FindFirstChildOfClass("Humanoid") or hit.Parent.Parent:FindFirstChildOfClass("Humanoid")
if hithum and hithum ~= hum and swinging == true then
local h = true
table.foreach(touched,function(_,v)
if v == hithum then
h = false
end
end)
if h then
hithum:TakeDamage(20)
end
end
end)
function swingracket()
racket.Transparency = 0
animMove = false
swinging = true
action = 'SwingA'
wait(.2)
action = 'SwingB'
wait(.2)
touched = {}
racket.Transparency = 1
animMove = true
swinging = false
end
local talkid = 0
function chat(text)
talkid = talkid + 1
local storedid = talkid
local skip = false
Tween(healthgui,{StudsOffset = Vector3.new(-3,7,0)},TweenInfo.new(.75,Enum.EasingStyle.Back))
Tween(namegui,{StudsOffset = Vector3.new(-1.75,9.5,0)},TweenInfo.new(.75,Enum.EasingStyle.Back))
Tween(chatgui,{StudsOffset = Vector3.new(0,6.5,0)},TweenInfo.new(.75,Enum.EasingStyle.Back))
Tween(johnimage,{ImageTransparency = 0},TweenInfo.new(.75,Enum.EasingStyle.Sine))
Tween(johnimagebackground,{BackgroundTransparency = 0},TweenInfo.new(.75,Enum.EasingStyle.Sine))
Tween(chatbase,{BackgroundTransparency = .5},TweenInfo.new(.75,Enum.EasingStyle.Sine))
Tween(chatnametext,{TextTransparency = 0,TextStrokeTransparency = 0},TweenInfo.new(.75,Enum.EasingStyle.Sine))
Tween(chattext,{TextTransparency = 0,TextStrokeTransparency = 0},TweenInfo.new(.75,Enum.EasingStyle.Sine))
local msg = text
if string.sub(msg,1,3) == "/e " then
msg = string.sub(msg,4,string.len(msg))
end
for i = 1,string.len(msg) do
if storedid ~= talkid then
skip = true
break
end
chatSoundsNumber = chatSoundsNumber + 1
if chatSoundsNumber > 6 then
chatSoundsNumber = 1
end
local talkingsoundchoice = chatSounds[chatSoundsNumber]
talkingsoundchoice.Parent = root
coroutine.wrap(function()
wait(talkingsoundchoice.TimeLength)
talkingsoundchoice.Parent = nil
end)()
chattext.Text = string.sub(msg,1,i)
if string.sub(msg,i,i) ~= " " then
talkingsoundchoice:Play()
end
wait(.05)
end
wait(3)
if not skip and storedid == talkid then
Tween(healthgui,{StudsOffset = Vector3.new(-3,5,0)},TweenInfo.new(.75,Enum.EasingStyle.Back))
Tween(namegui,{StudsOffset = Vector3.new(-1.75,7.5,0)},TweenInfo.new(.75,Enum.EasingStyle.Back))
Tween(chatgui,{StudsOffset = Vector3.new(0,4.5,0)},TweenInfo.new(.75,Enum.EasingStyle.Back))
Tween(johnimage,{ImageTransparency = 1},TweenInfo.new(.75,Enum.EasingStyle.Sine))
Tween(johnimagebackground,{BackgroundTransparency = 1},TweenInfo.new(.75,Enum.EasingStyle.Sine))
Tween(chatbase,{BackgroundTransparency = 1},TweenInfo.new(.75,Enum.EasingStyle.Sine))
Tween(chatnametext,{TextTransparency = 1,TextStrokeTransparency = 1},TweenInfo.new(.75,Enum.EasingStyle.Sine))
Tween(chattext,{TextTransparency = 1,TextStrokeTransparency = 1},TweenInfo.new(.75,Enum.EasingStyle.Sine))
end
end
owner.Chatted:connect(chat)
function Death()
dead = true
local oldPos = CFrame.new()
oldPos = root.CFrame
owner:LoadCharacter()
chr = owner.Character
root = owner.Character:FindFirstChild("HumanoidRootPart")
root.CFrame = oldPos
hum = chr.Humanoid
chr:findFirstChild'Health':Destroy()
hum.MaxHealth = 7000
hum.Health = 7000
desc = Instance.new("HumanoidDescription")
desc.Shirt = 5151872516
desc.Pants = 5170686244
desc.HeadColor = Color3.fromRGB(13, 105, 172)
desc.TorsoColor = Color3.fromRGB(13, 105, 172)
desc.RightArmColor = Color3.fromRGB(13, 105, 172)
desc.LeftArmColor = Color3.fromRGB(13, 105, 172)
desc.RightLegColor = Color3.fromRGB(13, 105, 172)
desc.LeftLegColor = Color3.fromRGB(13, 105, 172)
hum:ApplyDescription(desc)
chr.Head.Transparency = 1
chr.Head.face:Destroy()
table.foreach(chr:children(),function(_,v)
if v.ClassName == "Part" then
v.Size = v.Size * 1.25
end
end)
size = chr.Torso.Size.Z
local fakehead = Instance.new("Part")
fakehead.Size = Vector3.new(2 * size,1 * size,1 * size)
fakehead.Massless = true
fakehead.CanCollide = false
fakehead.Anchored = false
fakehead.Color = Color3.fromRGB(13, 105, 172)
fakehead.Parent = owner.Character
local fakeheadweld = Instance.new("Weld")
fakeheadweld.Part0 = fakehead
fakeheadweld.Part1 = chr.Head
fakeheadweld.C0 = CFrame.new(0,-.35 * size,0) * CFrame.Angles(0,-math.rad(25),0)
fakeheadweld.Parent = fakehead
local fakeheadmesh = Instance.new("SpecialMesh")
fakeheadmesh.MeshId = "rbxassetid://3242347943"
fakeheadmesh.TextureId = "rbxassetid://3055156478"
fakeheadmesh.Scale = Vector3.new(1 * size,1 * size,1 * size)
fakeheadmesh.Parent = fakehead
function joint(p0,p1,c0x,c0y,c0z,c1x,c1y,c1z,name)
local w = Instance.new("Weld")
w.Part0 = p0
w.Part1 = p1
w.C0 = CFrame.new(c0x,c0y,c0z)
w.C1 = CFrame.new(c1x,c1y,c1z)
w.Name = name
w.Parent = p0
return w
end
NK = joint(chr.Torso,chr.Head,0,1 * size,0,0,-1/2 * size,0,'Neck')
RJ = joint(root,chr.Torso,0,0,0,0,0,0,'RootJoint')
RS = joint(chr.Torso,chr:findFirstChild('Right Arm'),1.5 * size,0.5 * size,0,0,0.5 * size,0,'Right Shoulder')
LS = joint(chr.Torso,chr:findFirstChild('Left Arm'),-1.5 * size,0.5 * size,0,0,0.5 * size,0,'Left Shoulder')
RH = joint(chr.Torso,chr:findFirstChild('Right Leg'),0.5 * size,-1 * size,0,0,1 * size,0,'Right Hip')
LH = joint(chr.Torso,chr:findFirstChild('Left Leg'),-0.5 * size,-1 * size,0,0,1 * size,0,'Left Hip')
t = tick()
RSC0 = RS.C0
LSC0 = LS.C0
RHC0 = RH.C0
LHC0 = LH.C0
RJC0 = RJ.C0
NKC0 = NK.C0
themetime = theme.TimePosition
theme = Instance.new("Sound")
theme.SoundId = "rbxassetid://5341713393"
theme.Volume = 1.25
theme.TimePosition = themetime
theme.Parent = root
theme:Play()
healthgui = Instance.new("BillboardGui")
healthgui.Adornee = root
healthgui.Name = "healthbar"
healthgui.Size = UDim2.new(3,0,2.5,0)
healthgui.StudsOffset = Vector3.new(-3,5,0)
healthgui.Parent = root
damagebar = Instance.new("Frame")
damagebar.Size = UDim2.new(3,0,.5,0)
damagebar.BackgroundColor3 = Color3.fromRGB(255,47,47)
damagebar.BorderColor3 = Color3.fromRGB(163,60,65)
damagebar.Position = UDim2.new(0,0,0,0)
damagebar.Parent = healthgui
healthbar = Instance.new("Frame")
healthbar.Size = UDim2.new(hum.Health / hum.MaxHealth,0,1,0)
healthbar.BackgroundColor3 = Color3.fromRGB(99,254,147)
healthbar.BorderColor3 = Color3.fromRGB(58,138,97)
healthbar.Parent = damagebar
namegui = Instance.new("BillboardGui")
namegui.Adornee = root
namegui.Name = "nametext"
namegui.Size = UDim2.new(2.5,0,1.5,0)
namegui.StudsOffset = Vector3.new(-1.75,7.5,0)
namegui.Parent = root
local nametext = Instance.new("TextBox")
nametext.Size = UDim2.new(2.5,0,1.5,0)
nametext.BackgroundTransparency = 1
nametext.TextStrokeTransparency = 0
nametext.TextScaled = true
nametext.TextWrapped = true
nametext.Font = "Arcade"
nametext.TextColor3 = Color3.new(1,1,1)
nametext.TextStrokeColor3 = Color3.new()
nametext.Text = "John Bomb"
nametext.Parent = namegui
local healthtext = Instance.new("TextBox")
healthtext.Size = UDim2.new(1.5,0,.5,0)
healthtext.BackgroundTransparency = 1
healthtext.TextStrokeTransparency = 0
healthtext.TextScaled = true
healthtext.TextWrapped = true
healthtext.Font = "Arcade"
healthtext.TextColor3 = Color3.new(1,1,1)
healthtext.TextStrokeColor3 = Color3.new()
healthtext.Text = "0"
healthtext.TextXAlignment = "Left"
healthtext.Parent = healthgui
chatgui = Instance.new("BillboardGui")
chatgui.Adornee = root
chatgui.Name = "nametext"
chatgui.Size = UDim2.new(10,0,4,0)
chatgui.StudsOffset = Vector3.new(0,3,0)
chatgui.Parent = root
chatbase = Instance.new("Frame")
chatbase.Size = UDim2.new(1,0,0.75,0)
chatbase.BackgroundColor3 = Color3.fromRGB(35,35,35)
chatbase.BorderSizePixel = 0
chatbase.Position = UDim2.new(0,0,.5,0)
chatbase.BackgroundTransparency = 1
chatbase.Parent = chatgui
johnimage = Instance.new("ImageLabel")
johnimage.Size = UDim2.new(.25,0,.625,0)
johnimage.BackgroundTransparency = 1
johnimage.BorderSizePixel = 0
johnimage.Position = UDim2.new(.025,0,.575,0)
johnimage.Image = "rbxassetid://5637804418"
johnimage.ZIndex = 2
johnimage.ImageTransparency = 1
johnimage.Parent = chatgui
johnimagebackground = Instance.new("Frame")
johnimagebackground.Size = UDim2.new(.265,0,0.65,0)
johnimagebackground.BackgroundColor3 = Color3.fromRGB(35,35,35)
johnimagebackground.BorderSizePixel = 0
johnimagebackground.Position = UDim2.new(.0175,0,.55,0)
johnimagebackground.ZIndex = 1
johnimagebackground.BackgroundTransparency = 1
johnimagebackground.Parent = chatgui
chatnametext = Instance.new("TextBox")
chatnametext.Size = UDim2.new(.5,0,.2,0)
chatnametext.BackgroundTransparency = 1
chatnametext.TextStrokeTransparency = 1
chatnametext.TextScaled = true
chatnametext.TextWrapped = true
chatnametext.Font = "Arcade"
chatnametext.TextColor3 = Color3.new(1,1,1)
chatnametext.TextStrokeColor3 = Color3.new()
chatnametext.Text = "- JOHN BOMB -"
chatnametext.Position = UDim2.new(.3,0,.5,0)
chatnametext.TextTransparency = 1
chatnametext.Parent = chatgui
chattext = Instance.new("TextBox")
chattext.Size = UDim2.new(.6,0,.5,0)
chattext.BackgroundTransparency = 1
chattext.TextStrokeTransparency = 1
chattext.TextScaled = true
chattext.TextWrapped = true
chattext.Font = "Arcade"
chattext.TextColor3 = Color3.new(1,1,1)
chattext.TextStrokeColor3 = Color3.new()
chattext.Text = ''
chattext.Position = UDim2.new(.3,0,.65,0)
chattext.TextTransparency = 1
chattext.TextXAlignment = "Left"
chattext.Parent = chatgui
hum.BreakJointsOnDeath = false
hum.Died:connect(function()
Death()
end)
dead = true
animMove = false
action = 'Death1'
wait(.0625)
action = 'Death2'
wait(.0625)
action = 'Death3'
wait(.0625)
action = 'Death4'
wait(.2)
action = 'Death5'
wait(.009)
action = 'Death6'
wait(.009)
action = 'Death7'
wait(.4)
action = 'Death8'
wait(.075)
action = 'Death9'
wait(.05)
action = 'Death10'
wait(.05)
action = 'Death11'
wait(.05)
action = 'Death12'
wait(.05)
action = 'Death13'
wait(.05)
action = 'Death14'
wait(.025)
action = 'Death15'
wait(.025)
action = 'Death16'
Tween(theme,{Volume = 0},TweenInfo.new(1,Enum.EasingStyle.Sine))
wait(1)
chat("NO!! It can't end like this!! I can't end like this!!... At least... I'm going out with a bang...")
end
function rage()
if dead == false then
ragemode = true
Tween(theme,{Volume = 0},TweenInfo.new(0.5,Enum.EasingStyle.Sine))
wait(.5)
theme:Stop()
theme.SoundId = "rbxassetid://5341713393"
theme.Volume = 1.25
wait(.25)
chat("Alright... I've really enjoyed our time here, but I've got games to destroy!")
theme:Play()
end
end
game:service'RunService'.Heartbeat:connect(function()
t=t+0.5
size = chr.Torso.Size.Z
if hum.Health < 2500 and ragemode == false then
rage()
end
healthbar.Size = UDim2.new(hum.Health / hum.MaxHealth,0,1,0)
healthtext.Text = math.floor(hum.Health)
local tv = (root.Velocity*Vector3.new(1,0,1)).Magnitude
local onfloor = workspace:FindPartOnRay(Ray.new(root.Position,CFrame.new(root.Position,root.Position-Vector3.new(0,1 * size,0)).lookVector*4),chr)
exactVel = CFrame.new(root.CFrame:vectorToObjectSpace(root.Velocity))
vel = Vector3.new(math.clamp(exactVel.x,-16,16),math.clamp(exactVel.y,-16,16),math.clamp(exactVel.z,-16,16))
if animMove then
if hum:GetState() ~= Enum.HumanoidStateType.Climbing then
if not hum.Sit then
if root.Velocity.Y > .1 then
if onfloor == nil then
action = 'Jump'
end
elseif root.Velocity.Y < -.1 then
if onfloor == nil then
action = 'Fall'
end
else
if tv > .1 then
if tv < 34 then
action = 'Walk'
elseif tv > 34 then
action = 'Run'
end
elseif tv < .1 then
action = 'Idle'
end
end
else
action = 'Sit'
end
else
if math.abs(root.Velocity.Y) > .1 then
action = 'Climb'
else
action = 'Where is the funny!!!!!'
end
end
end
if action == 'Idle' then
RJ.C0 = RJ.C0:Lerp(RJC0 * CFrame.new(0,math.cos(t/10.5)/15 * size,0) * CFrame.Angles(0,-math.rad(20),0),.3)
NK.C0 = NK.C0:Lerp(NKC0 * CFrame.Angles(math.cos(t/12)/12,math.rad(20),math.cos(t/12)/12),.3)
RS.C0 = RS.C0:Lerp(RSC0 * CFrame.Angles(math.cos(t/9)/6,math.rad(5),-math.cos(t/9)/6),.3)
LS.C0 = LS.C0:Lerp(LSC0 * CFrame.Angles(math.cos(t/9)/6,-math.rad(5),math.cos(t/9)/6),.3)
RH.C0 = RH.C0:Lerp(RHC0 * CFrame.new(0,-math.cos(t/10.5)/15 * size,0) * CFrame.Angles(0,-math.rad(15) + -math.sin(t/10.5)/18,0),.3)
LH.C0 = LH.C0:Lerp(LHC0 * CFrame.new(0,-math.cos(t/10.5)/15 * size,0) * CFrame.Angles(0,math.rad(15) + math.sin(t/10.5)/18,0),.3)
elseif action == 'Walk' then
RJ.C0 = RJ.C0:Lerp(RJC0 * CFrame.new(0,math.cos(t/1.5)/10 * size,0) * CFrame.Angles(math.rad(5) + math.sin(t/1.5)/20 + (vel.z/84),0,(-vel.x/84)),.3)
NK.C0 = NK.C0:Lerp(NKC0 * CFrame.Angles(0,(-vel.x/48),0),.3)
RS.C0 = RS.C0:Lerp(RSC0 * CFrame.Angles((-vel.x/36) + -math.sin(t/3)/2 * (-vel.z/12),-math.sin(t/3)/2 * (-vel.z/12),-math.sin(t/3)/4 * (vel.x/12)),.3)
LS.C0 = LS.C0:Lerp(LSC0 * CFrame.Angles((vel.x/36) + math.sin(t/3)/2 * (-vel.z/12),-math.sin(t/3)/2 * (-vel.z/12),math.sin(t/3)/4 * (vel.x/12)),.3)
RH.C0 = RH.C0:Lerp(RHC0 * CFrame.new(0,math.cos(t/3)/5 * size,-math.sin(t/3)/8 * (-vel.z/12) * size) * CFrame.Angles(math.sin(t/3)/2 * (-vel.z/12),0,math.rad(3) + math.sin(t/3)/2 * (vel.x/12)),.3)
LH.C0 = LH.C0:Lerp(LHC0 * CFrame.new(0,-math.cos(t/3)/5 * size,math.sin(t/3)/8 * (-vel.z/12) * size) * CFrame.Angles(-math.sin(t/3)/2 * (-vel.z/12),0,-math.rad(3) + -math.sin(t/3)/2 * (vel.x/12)),.3)
elseif action == 'Run' then
RJ.C0 = RJ.C0:Lerp(RJC0 * CFrame.new(0,math.cos(t/1.25)/10 * size,0) * CFrame.Angles(math.sin(t/1.25)/10 + (vel.z/60),-math.sin(t/2.5)/10,(-vel.x/60) + -math.sin(t/2.5)/25),.3)
NK.C0 = NK.C0:Lerp(NKC0 * CFrame.Angles((-vel.z/72),(-vel.x/60) + math.sin(t/2.5)/10,0),.3)
RS.C0 = RS.C0:Lerp(RSC0 * CFrame.Angles(math.rad(30) + -math.sin(t/2.5)/2 * (-vel.z/12),math.sin(t/2.5)/2 * (vel.z/12),math.rad(15) + -math.sin(t/2.5)/3 * (vel.x/12)),.1)
LS.C0 = LS.C0:Lerp(LSC0 * CFrame.Angles(math.rad(30) + math.sin(t/2.5)/2 * (-vel.z/12),math.sin(t/2.5)/2 * (vel.z/12),-math.rad(15) + math.sin(t/2.5)/3 * (vel.x/12)),.1)
RH.C0 = RH.C0:Lerp(RHC0 * CFrame.new(0,math.cos(t/2.5)/3 * size,-.1 + -math.cos(t/2.5)/3) * CFrame.Angles(math.sin(t/2.5)/2 * (-vel.z/12),0,math.rad(5) + math.sin(t/2.5)/2 * (vel.x/12)),.3)
LH.C0 = LH.C0:Lerp(LHC0 * CFrame.new(0,-math.cos(t/2.5)/3 * size,-.1 + math.cos(t/2.5)/3) * CFrame.Angles(-math.sin(t/2.5)/2 * (-vel.z/12),0,-math.rad(5) + -math.sin(t/2.5)/2 * (vel.x/12)),.3)
elseif action == 'Jump' then
RJ.C0 = RJ.C0:Lerp(RJC0 * CFrame.Angles(math.rad(10),0,0),.5)
NK.C0 = NK.C0:Lerp(NKC0 * CFrame.Angles(-math.rad(15),0,0),.5)
RS.C0 = RS.C0:Lerp(RSC0 * CFrame.Angles(-math.rad(20) + -math.cos(t/3)/5,0,math.rad(10) + -math.sin(t/3)/5),.1)
LS.C0 = LS.C0:Lerp(LSC0 * CFrame.Angles(-math.rad(20) + -math.cos(t/3)/5,0,-math.rad(10) + math.sin(t/3)/5),.1)
RH.C0 = RH.C0:Lerp(RHC0 * CFrame.new(0,.5 * size,-.3 * size) * CFrame.Angles(-math.rad(10) + math.sin(t/3)/12.5,-math.rad(7),math.rad(2) + math.cos(t/3)/17.5),.2)
LH.C0 = LH.C0:Lerp(LHC0 * CFrame.new(0,0,-.1 * size) * CFrame.Angles(-math.rad(25) + math.cos(t/3)/12.5,math.rad(5),-math.rad(5) + math.cos(t/3)/12.5),.2)
elseif action == 'Fall' then
RJ.C0 = RJ.C0:Lerp(RJC0 * CFrame.Angles(-math.rad(5),0,0),.5)
NK.C0 = NK.C0:Lerp(NKC0 * CFrame.Angles(-math.rad(10),0,0),.5)
RS.C0 = RS.C0:Lerp(RSC0 * CFrame.new(0,.25 * size,0) * CFrame.Angles(0,0,math.rad(40) + -math.sin(t/3)/25),.1)
LS.C0 = LS.C0:Lerp(LSC0 * CFrame.new(0,.25 * size,0) * CFrame.Angles(0,0,-math.rad(40) + math.sin(t/3)/25),.1)
RH.C0 = RH.C0:Lerp(RHC0 * CFrame.new(0,.5 * size,-.3 * size) * CFrame.Angles(math.rad(5) + math.sin(t/3)/25,-math.rad(7),math.rad(2) + math.cos(t/3)/30),.2)
LH.C0 = LH.C0:Lerp(LHC0 * CFrame.new(0,0,-.1 * size) * CFrame.Angles(-math.rad(25) + math.cos(t/3)/25,math.rad(5),-math.rad(5) + math.cos(t/3)/25),.2)
elseif action == 'Sit' then
RJ.C0 = RJ.C0:Lerp(RJC0 * CFrame.Angles(math.rad(5),0,0),.5)
NK.C0 = NK.C0:Lerp(NKC0 * CFrame.Angles(-math.rad(2),0,0),.5)
RS.C0 = RS.C0:Lerp(RSC0 * CFrame.new(-.15,.25 * size,.25 * size) * CFrame.Angles(-math.rad(160),math.rad(15),-math.rad(45)),.1)
LS.C0 = LS.C0:Lerp(LSC0 * CFrame.new(.15,.25 * size,.25 * size) * CFrame.Angles(-math.rad(160),-math.rad(15),math.rad(45)),.1)
RH.C0 = RH.C0:Lerp(RHC0 * CFrame.new(.5 * size,.35 * size,-.75 * size) * CFrame.Angles(math.rad(70),0,-math.rad(75)),.5)
LH.C0 = LH.C0:Lerp(LHC0 * CFrame.Angles(math.rad(65),0,0),.5)
elseif action == 'Climb' then
RJ.C0 = RJ.C0:Lerp(RJC0 * CFrame.new(0,0,.2 * size) * CFrame.Angles(math.rad(10),0,math.sin(t/3)/10),.3)
NK.C0 = NK.C0:Lerp(NKC0 * CFrame.Angles(math.rad(45),0,0),.3)
RS.C0 = RS.C0:Lerp(RSC0 * CFrame.new(0,-math.cos(t/3)/2 * size,0) * CFrame.Angles(math.rad(135) + -math.cos(t/3)/2,0,math.rad(10) + -math.sin(t/3)/5),.3)
LS.C0 = LS.C0:Lerp(LSC0 * CFrame.new(0,math.cos(t/3)/2 * size,0) * CFrame.Angles(math.rad(135) + math.cos(t/3)/2,0,-math.rad(10) + math.sin(t/3)/5),.3)
RH.C0 = RH.C0:Lerp(RHC0 * CFrame.new(0,.5 + math.cos(t/3)/2 * size,-.2 * size) * CFrame.Angles(math.cos(t/3)/2,-math.rad(5),math.rad(10) + -math.cos(t/3)/10),.3)
LH.C0 = LH.C0:Lerp(LHC0 * CFrame.new(0,.5 + -math.cos(t/3)/2 * size,-.2 * size) * CFrame.Angles(-math.cos(t/3)/2,math.rad(5),-math.rad(10) + math.cos(t/3)/10),.3)
elseif action == 'ThrowA' then
RJ.C0 = RJ.C0:Lerp(RJC0 * CFrame.Angles(math.rad(5),0,math.rad(5)),.5)
NK.C0 = NK.C0:Lerp(NKC0 * CFrame.Angles(math.rad(15),math.rad(10),0),.2)
RS.C0 = RS.C0:Lerp(RSC0 * CFrame.Angles(math.rad(85),math.rad(10),math.rad(5)),.2)
LS.C0 = LS.C0:Lerp(LSC0 * CFrame.new(0,.35 * size,0) * CFrame.Angles(math.rad(195),-math.rad(10),-math.rad(15)),.2)
RH.C0 = RH.C0:Lerp(RHC0 * CFrame.new(0,.35 * size,-.3 * size) * CFrame.Angles(-math.rad(10),0,math.rad(5)),.3)
LH.C0 = LH.C0:Lerp(LHC0 * CFrame.Angles(-math.rad(5),0,-math.rad(5)),.3)
elseif action == 'ThrowB' then
RJ.C0 = RJ.C0:Lerp(RJC0 * CFrame.new(0,-.2 * size,0) * CFrame.Angles(-math.rad(15),0,0),.5)
NK.C0 = NK.C0:Lerp(NKC0 * CFrame.Angles(math.rad(15),0,0),.3)
RS.C0 = RS.C0:Lerp(RSC0 * CFrame.Angles(-math.rad(15),-math.rad(10),math.rad(15)),.3)
LS.C0 = LS.C0:Lerp(LSC0 * CFrame.new(.75 * size,0,-.75 * size) * CFrame.Angles(math.rad(25),math.rad(15),math.rad(65)),.4)
RH.C0 = RH.C0:Lerp(RHC0 * CFrame.Angles(-math.rad(35),0,math.rad(5)),.3)
LH.C0 = LH.C0:Lerp(LHC0 * CFrame.new(0,.2 * size,0) * CFrame.Angles(math.rad(10),0,0),.3)
elseif action == 'ExplodeA' then
RJ.C0 = RJ.C0:Lerp(RJC0,.5)
NK.C0 = NK.C0:Lerp(NKC0 * CFrame.Angles(0,0,math.rad(15)),.3)
RS.C0 = RS.C0:Lerp(RSC0 * CFrame.Angles(math.rad(180),0,math.rad(25)),.5)
LS.C0 = LS.C0:Lerp(LSC0 * CFrame.Angles(0,0,-math.rad(15)),.3)
RH.C0 = RH.C0:Lerp(RHC0,.3)
LH.C0 = LH.C0:Lerp(LHC0,.3)
elseif action == 'ExplodeB' then
RJ.C0 = RJ.C0:Lerp(RJC0,.5)
NK.C0 = NK.C0:Lerp(NKC0,.3)
RS.C0 = RS.C0:Lerp(RSC0 * CFrame.Angles(math.rad(180),0,-math.rad(25)),.5)
LS.C0 = LS.C0:Lerp(LSC0 * CFrame.Angles(0,0,-math.rad(25)),.4)
RH.C0 = RH.C0:Lerp(RHC0,.3)
LH.C0 = LH.C0:Lerp(LHC0,.3)
elseif action == 'SwingA' then
RJ.C0 = RJ.C0:Lerp(RJC0 * CFrame.Angles(0,math.rad(35),0),.3)
NK.C0 = NK.C0:Lerp(NKC0 * CFrame.Angles(0,-math.rad(35),0),.3)
RS.C0 = RS.C0:Lerp(RSC0 * CFrame.new(-.5,0,-.5) * CFrame.Angles(math.rad(45),math.rad(15),-math.rad(65)),.3)
LS.C0 = LS.C0:Lerp(LSC0 * CFrame.Angles(-math.rad(10),math.rad(5),-math.rad(15)),.4)
RH.C0 = RH.C0:Lerp(RHC0 * CFrame.Angles(0,0,-math.rad(3)),.3)
LH.C0 = LH.C0:Lerp(LHC0 * CFrame.Angles(0,0,-math.rad(10)),.3)
elseif action == 'SwingB' then
RJ.C0 = RJ.C0:Lerp(RJC0 * CFrame.Angles(0,-math.rad(15),0),.5)
NK.C0 = NK.C0:Lerp(NKC0 * CFrame.Angles(0,math.rad(10),0),.5)
RS.C0 = RS.C0:Lerp(RSC0 * CFrame.Angles(math.rad(55),math.rad(10),math.rad(15)),.5)
LS.C0 = LS.C0:Lerp(LSC0 * CFrame.Angles(-math.rad(25),math.rad(15),-math.rad(25)),.4)
RH.C0 = RH.C0:Lerp(RHC0 * CFrame.Angles(0,-math.rad(5),0),.4)
LH.C0 = LH.C0:Lerp(LHC0 * CFrame.Angles(-math.rad(15),math.rad(3),-math.rad(5)),.4)
end
throwbomb()
end)
hum.Died:connect(function()
Death()
end)
local remote = Instance.new('RemoteEvent')
remote.Name = "Keybinds"
remote.Parent = NLS([[local event = script:findFirstChild'Keybinds'
local mouse = owner:GetMouse()
mouse.Button1Down:connect(function()
event:FireServer("mouse")
end)
mouse.KeyDown:connect(function(key)
event:FireServer(key)
end)]],owner.PlayerGui)
remote.OnServerEvent:connect(function(plr,key)
if key == "mouse" then
throwbomb()
elseif key == "x" then
headexplode()
elseif key == "z" then
swingracket()
end
end)