--여기까지


local ser = game:GetService("Debris") --오브젝트 삭제 관련 서비스
local skill = game.ReplicatedStorage.Skill:FindFirstChild(skillName) --스킬 찾기
local Cooldown = true
local DamageCool = false

script.Parent.SkillEvent.OnServerEvent:Connect(function(plr, X,Y ,Z, Target) --플레이어가 스킬을 클릭하면
	if Cooldown == true and Target ~= nil and not Target:FindFirstChild("Humanoid") then --조건이 맞으면
		Cooldown = false

		local clone = skill:Clone() --스킬 복사
		clone.Parent = game.Workspace.SkillPart --스킬 적용
		clone.Position = Vector3.new(X, (Y + 100), Z) --스킬 위치를 플레이어가 터치한 자리에
		
		clone.Touched:Connect(function(hit) --다른 플레이어가 스킬에 닿이면
			local human = hit.Parent:FindFirstChild("Humanoid") --휴머노이드 찾기
			local human2 = hit.Parent.Parent:FindFirstChild("Humanoid") --휴머노이드 찾기
			
			if human ~= nil and hit.Parent then --조건이 맞다면
				if hit.Parent.Name == script.Parent.Parent.Name and DamageCool == false then return	end --자신은 데미지 안먹힘 

				if human and DamageCool == false then --해당 조건이 맞으면

					DamageCool = true
					human:TakeDamage(Damage) --데미지 입히기
					wait(DamageCoolTime) --스킬 데미지 쿨타임 기다리기
					DamageCool = false

				elseif human2 and DamageCool == false then

					DamageCool = true
					human2:TakeDamage(Damage) --데미지 입히기
					wait(DamageCoolTime) --스킬 데미지 쿨타임 기다리기
					DamageCool = false
				end
			end 
		end) --끝
		
		script.Parent.Handle:FindFirstChild(Sound):Play() --오디오 틀기
		
		wait(1) --1초 기다림
		
		local bomb = game.ReplicatedStorage.Skill.Explosion:Clone() --폭팔 이펙트 복사
		bomb.Parent = game.Workspace.SkillPart --이펙트 적용
		bomb.Position = Vector3.new(clone.Position.X, clone.Position.Y, clone.Position.Z) --이펙트 위치 지정
		
		script.Parent.Handle:FindFirstChild(Sound2):Play() --오디오 틀기
		script.Parent.SkillEvent:FireClient(plr) --메세지 보내기(화면 흔들림 효과)

		ser:AddItem(bomb, 1) --1초뒤에 이펙트 삭제

		wait(CoolTime) --스킬 쿨타임 기다리기
		Cooldown = true
	end
end) --끝
