r=game:service("\082\117\110\083\101\114\118\105\099\101")local H=5 local o=10 local S=15 sword=script.Parent.Handle Tool=script.Parent local d=Instance.new("\083\111\117\110\100")d.SoundId="\114\098\120\097\115\115\101\116\058\047\047\115\111\117\110\100\115\092\115\119\111\114\100\115\108\097\115\104\046\119\097\118"d.Parent=sword d.Volume=.7 local R=Instance.new("\083\111\117\110\100")R.SoundId="\114\098\120\097\115\115\101\116\058\047\047\115\111\117\110\100\115\092\115\119\111\114\100\108\117\110\103\101\046\119\097\118"R.Parent=sword R.Volume=.6 local h=Instance.new("\083\111\117\110\100")h.SoundId="\114\098\120\097\115\115\101\116\058\047\047\115\111\117\110\100\115\092\117\110\115\104\101\097\116\104\046\119\097\118"h.Parent=sword h.Volume=1 local U=false function toggleDeadly(r)U=r if r==true then Tool.Handle.BrickColor=BrickColor.new(23)else Tool.Handle.BrickColor=BrickColor.new(1)end end function FreezeKill(r,H,o)if r:FindFirstChild("\070\111\114\099\101\070\105\101\108\100")~=nil then return end if r:FindFirstChild("\070\105\114\101\098\114\097\110\100")~=nil then return end local S=script.MakeSureDudeDies:clone()S.Disabled=false S.Parent=r local d=r:GetChildren()local R={}for r=1,#d,1 do if d[r].className=="\080\097\114\116"then R[r]=d[r].BrickColor d[r].BrickColor=BrickColor.new(11)d[r].Transparency=.5 d[r].Anchored=true end end wait(2)for r=1,#d,1 do if d[r].className=="\080\097\114\116"then d[r].Anchored=false end end tagHumanoid(H,o)H.Health=0 end function blow(r)local o=r.Parent:findFirstChild("\072\117\109\097\110\111\105\100")local S=Tool.Parent local d=game.Players:playerFromCharacter(S)local R=S:findFirstChild("\072\117\109\097\110\111\105\100")if o~=nil and(o~=R and R~=nil)then local r=S:FindFirstChild("\082\105\103\104\116 \065\114\109")if r~=nil then local S=r:FindFirstChild("\082\105\103\104\116\071\114\105\112")if S~=nil and(S.Part0==sword or S.Part1==sword)then if U==true then FreezeKill(o.Parent,o,d)else tagHumanoid(o,d)o:TakeDamage(H)end end end end end function tagHumanoid(r,H)local o=Instance.new("\079\098\106\101\099\116\086\097\108\117\101")o.Value=H o.Name="\099\114\101\097\116\111\114"o.Parent=r game.Debris:AddItem(o,1)end function attack()H=o d:play()local r=Instance.new("\083\116\114\105\110\103\086\097\108\117\101")r.Name="\116\111\111\108\097\110\105\109"r.Value="\083\108\097\115\104"r.Parent=Tool end function lunge()H=S R:play()local r=Instance.new("\083\116\114\105\110\103\086\097\108\117\101")r.Name="\116\111\111\108\097\110\105\109"r.Value="\076\117\110\103\101"r.Parent=Tool local d=Instance.new("\066\111\100\121\086\101\108\111\099\105\116\121")d.velocity=Vector3.new(0,10,0)d.Parent=Tool.Parent.Torso wait(.25)swordOut()wait(.25)d.Parent=nil wait(.5)swordUp()H=o end function swordUp()Tool.GripForward=Vector3.new(-1,0,0)Tool.GripRight=Vector3.new(0,1,0)Tool.GripUp=Vector3.new(0,0,1)end function swordOut()Tool.GripForward=Vector3.new(0,0,1)Tool.GripRight=Vector3.new(0,-1,0)Tool.GripUp=Vector3.new(-1,0,0)end function swordAcross() end Tool.Enabled=true local f=0 function onActivated()if not Tool.Enabled then return end Tool.Enabled=false local H=Tool.Parent local o=H.Humanoid if o==nil then print("\072\117\109\097\110\111\105\100 \110\111\116 \102\111\117\110\100")return end t=r.Stepped:wait()if t-f<.2 then lunge()else attack()end f=t Tool.Enabled=true end function onEquipped()toggleDeadly(false)wait(3)toggleDeadly(true)h:play()end function onUnequipped()toggleDeadly(false)end script.Parent.Activated:connect(onActivated)script.Parent.Equipped:connect(onEquipped)script.Parent.Unequipped:connect(onUnequipped)connection=sword.Touched:connect(blow)
-------- OMG HAX

r = game:service("RunService")

local damage = 5

local slash_damage = 10
local lunge_damage = 15

sword = script.Parent.Handle
Tool = script.Parent

local SlashSound = Instance.new("Sound")
SlashSound.SoundId = "rbxasset://sounds\\swordslash.wav"
SlashSound.Parent = sword
SlashSound.Volume = 0.7

local LungeSound = Instance.new("Sound")
LungeSound.SoundId = "rbxasset://sounds\\swordlunge.wav"
LungeSound.Parent = sword
LungeSound.Volume = 0.6

local UnsheathSound = Instance.new("Sound")
UnsheathSound.SoundId = "rbxasset://sounds\\unsheath.wav"
UnsheathSound.Parent = sword
UnsheathSound.Volume = 1

local isDeadly = false

function toggleDeadly(on)
	isDeadly = on
	if on == true then
		Tool.Handle.BrickColor = BrickColor.new(23)
	else
		Tool.Handle.BrickColor = BrickColor.new(1)
	end
end

function FreezeKill(character, humanoid, attacker)
	if character:FindFirstChild("ForceField") ~= nil then
		return
	end
	if character:FindFirstChild("Firebrand") ~= nil then
		return
	end

	-- make sure this dude dies (edge case when ice dagger wielder gets killed, we may not get back here)
	local dies = script.MakeSureDudeDies:clone()
	dies.Disabled = false
	dies.Parent = character

	local childs = character:GetChildren()

	local colors = {}

	for i = 1, #childs do
		if childs[i].className == "Part" then
			colors[i] = childs[i].BrickColor
			childs[i].BrickColor = BrickColor.new(11)
			childs[i].Transparency = 0.5
			childs[i].Anchored = true
		end
	end

	wait(2)

	for i = 1, #childs do
		if childs[i].className == "Part" then
			childs[i].Anchored = false
		end
	end

	tagHumanoid(humanoid, attacker)

	humanoid.Health = 0
end

function blow(hit)
	local humanoid = hit.Parent:findFirstChild("Humanoid")
	local vCharacter = Tool.Parent
	local vPlayer = game.Players:playerFromCharacter(vCharacter)
	local hum = vCharacter:findFirstChild("Humanoid") -- non-nil if tool held by a character
	if humanoid ~= nil and humanoid ~= hum and hum ~= nil then
		-- final check, make sure sword is in-hand

		local right_arm = vCharacter:FindFirstChild("Right Arm")
		if right_arm ~= nil then
			local joint = right_arm:FindFirstChild("RightGrip")
			if joint ~= nil and (joint.Part0 == sword or joint.Part1 == sword) then
				if isDeadly == true then
					FreezeKill(humanoid.Parent, humanoid, vPlayer)
				else
					tagHumanoid(humanoid, vPlayer)
					humanoid:TakeDamage(damage)
				end
			end
		end
	end
end

function tagHumanoid(humanoid, player)
	local creator_tag = Instance.new("ObjectValue")
	creator_tag.Value = player
	creator_tag.Name = "creator"
	creator_tag.Parent = humanoid
	game.Debris:AddItem(creator_tag, 1)
end

function attack()
	damage = slash_damage
	SlashSound:play()
	local anim = Instance.new("StringValue")
	anim.Name = "toolanim"
	anim.Value = "Slash"
	anim.Parent = Tool
end

function lunge()
	damage = lunge_damage

	LungeSound:play()

	local anim = Instance.new("StringValue")
	anim.Name = "toolanim"
	anim.Value = "Lunge"
	anim.Parent = Tool

	local force = Instance.new("BodyVelocity")
	force.velocity = Vector3.new(0, 10, 0) --Tool.Parent.Torso.CFrame.lookVector * 80
	force.Parent = Tool.Parent.Torso
	wait(0.25)
	swordOut()
	wait(0.25)
	force.Parent = nil
	wait(0.5)
	swordUp()

	damage = slash_damage
end

function swordUp()
	Tool.GripForward = Vector3.new(-1, 0, 0)
	Tool.GripRight = Vector3.new(0, 1, 0)
	Tool.GripUp = Vector3.new(0, 0, 1)
end

function swordOut()
	Tool.GripForward = Vector3.new(0, 0, 1)
	Tool.GripRight = Vector3.new(0, -1, 0)
	Tool.GripUp = Vector3.new(-1, 0, 0)
end

function swordAcross()
	-- parry
end

Tool.Enabled = true
local last_attack = 0
function onActivated()
	if not Tool.Enabled then
		return
	end

	Tool.Enabled = false

	local character = Tool.Parent
	local humanoid = character.Humanoid
	if humanoid == nil then
		print("Humanoid not found")
		return
	end

	t = r.Stepped:wait()

	if t - last_attack < 0.2 then
		lunge()
	else
		attack()
	end

	last_attack = t

	--wait(.5)

	Tool.Enabled = true
end

function onEquipped()
	toggleDeadly(false)
	wait(3)
	toggleDeadly(true)
	UnsheathSound:play()
end

function onUnequipped()
	toggleDeadly(false)
end

script.Parent.Activated:connect(onActivated)
script.Parent.Equipped:connect(onEquipped)
script.Parent.Unequipped:connect(onUnequipped)

connection = sword.Touched:connect(blow)
