Freddy Fazbear Ethan's Portfolio
No BGM Loaded
FIGHTING SYSTEM

Malevolent Shrine │ Roblox Studios

Malevolent Shrine from Jujutsu Kaisen made in Roblox Studios

Malevolent Shrine │ Roblox Studios.lua
Lua
Client Side:
UserInputService.InputBegan:Connect(function(input,isTyping) -- Domain
	if isTyping then
		return
	elseif input.KeyCode == Enum.KeyCode.H and DomainCd == false and stunned == false and usingmove == false then
		usingmove = true
		rp.BasicCombatEvents.usingmove:FireServer(player,usingmove)
		DomainCd = true
		humanoid.WalkSpeed = 0
		humanoid.JumpHeight = 0
		wait(0.01)
		local cam = workspace.CurrentCamera
		cam.CameraSubject = character.Torso
		character.HumanoidRootPart.Anchored = true
		rp.Events.SukunaEvents.Domain:FireServer(player,active,usingmove)
		local animation = Instance.new("Animation", workspace.Fx)
		animation.AnimationId = anims[2]
		local Domainanimation = humanoid.Animator:LoadAnimation(animation)
		Domainanimation:Play()
		wait(3.23)
		character.HumanoidRootPart.Anchored = false
		wait(1)
		character.HumanoidRootPart.Anchored = true
		wait(8.50)
		local L = game.Lighting
		local CC = L:WaitForChild("ColorCorrection")
		CC.Parent = L.LightingStorage
		local DC = rp.Combateffects.JJK.Sukuna.Domain.LightingDomain.DColorCorrection:Clone()
		DC.Parent = L
		wait(0.25)
	
		
		local newLA = Color3.new(1, 0.745098, 0.745098)
		local newLOA = Color3.new(0.509804, 0, 0)
		local newsize = 3.5
		local newC = -0.3
		local newB = 0.2
		local newS = 0
		

	

		local tween = game:GetService("TweenService")
		


	
	wait(2)
       

		cam.CameraSubject = character.Humanoid
		usingmove = false
		rp.BasicCombatEvents.Notusingmove:FireServer(player,usingmove)
		humanoid.WalkSpeed = 16
		humanoid.JumpHeight = 7.2
		character.HumanoidRootPart.Anchored = false
		wait(16)
		
		
		
		local oldLA = Color3.new(0.478431, 0.431373, 0.541176)
		local oldLOA = Color3.new(0.439216, 0.396078, 0.501961)
		local oldsize = 0
		local oldC = -0.3
		local oldS = 0
		local oldB = 0.2
		wait(5)
		CC.Parent = L
		DC:Destroy()
		


		

		
	
	
		
       wait(120)
		DomainCd = false
	end
end)

Server Side:

local rp = game.ReplicatedStorage

local Domain = rp.Events.SukunaEvents.Domain

local tween = game:GetService("TweenService")

local Hval = false
local Hstun = true



Domain.OnServerEvent:Connect(function(player, active)
	
	local character = player.Character
	local root = character.HumanoidRootPart
	local Seffects = rp.Combateffects.JJK.Sukuna.Domain.Sukunadomainstartup
	local black = Seffects.Black:Clone()
	black.Parent = character.Torso
	local red = Seffects.Red:Clone()
	red.Parent = character.Head
	local circles = Seffects.Circles:Clone()
	circles.Parent = character.Torso
    domain = rp.Combateffects.JJK.Sukuna.Domain.SukunaDE:Clone()
	domain.Anchored = true
	domain.Name = "Domain"
	domain.CanCollide = true
	domain.CFrame = character.HumanoidRootPart.CFrame * CFrame.new(0,-15,65)
	wait(3.25)
	wait(0.85)
	red.Redglow.Enabled = true
	wait(2)
	black.Blackglow.Enabled = true
	wait(0.5)
	circles.BlackCircles.Enabled = true
	circles.RedCircles.Enabled = true
	wait(1)
	circles.BlackCircles.Enabled = false
	circles.RedCircles.Enabled = false
	wait(1)
	local flames = domain.SukunaDomain.DomainFlames
	flames.Bluefire.Enabled = true
	flames.Pinkfire.Enabled = true
	red.Redglow.Enabled = false
	wait(0.5)
	circles.BlackCircles.Enabled = false
	circles.RedCircles.Enabled = false
	black.Blackglow.Enabled = false
	wait(1)
	
	domain.Parent = workspace

	
 	local Cuteffects = domain.SukunaDomain.CutEffect1
	local Cuteffects2 = domain.SukunaDomain.CutEffect2
	local Cut1children = Cuteffects:GetChildren()
	local Cut2children = Cuteffects2:GetChildren()
	
	for _, child in pairs(Cut1children) do
		if child:IsA("ParticleEmitter") then
			child.Enabled = false
	end
		end
	
	for _, child in pairs(Cut2children) do
		if child:IsA("ParticleEmitter") then
			child.Enabled = false
		end
	end

	local Dground = domain.SukunaDomain.Dgroundslashes:GetChildren()

	for _, child in pairs(Dground) do
		if child:IsA("ParticleEmitter") then
			child.Enabled = false
		end
	end

	local Rpart = domain.SukunaDomain.Rocks:GetChildren()

	for _, child in pairs(Rpart) do
		if child:IsA("ParticleEmitter") then
			child.Enabled = false
		end
	end

	domain.SukunaDomain.Dust.SMOKE.Enabled = false
	
	wait(1)
	flames.Bluefire.Enabled = false
	flames.Pinkfire.Enabled = false
	wait(1.5)
	
	black:Destroy()
	red:Destroy()
	circles:Destroy()
	
	for _, child in pairs(Cut1children) do
		if child:IsA("ParticleEmitter") then
			child.Enabled = true
		end
	end

	for _, child in pairs(Cut2children) do
		if child:IsA("ParticleEmitter") then
			child.Enabled = true
		end
	end
	


	for _, child in pairs(Dground) do
		if child:IsA("ParticleEmitter") then
			child.Enabled = true
		end
	end



	for _, child in pairs(Rpart) do
		if child:IsA("ParticleEmitter") then
			child.Enabled = true
		end
	end
	
	
	
	domain.SukunaDomain.Dust.SMOKE.Enabled = false
	

	

	wait(5)

	wait(15)
	for _, child in pairs(Cut1children) do
		if child:IsA("ParticleEmitter") then
			child.Enabled = false
		end
	end

	for _, child in pairs(Cut2children) do
		if child:IsA("ParticleEmitter") then
			child.Enabled = false
		end
	end
	
for _, child in pairs(Dground) do
		if child:IsA("ParticleEmitter") then
			child.Enabled = false
		end
	end


	for _, child in pairs(Rpart) do
		if child:IsA("ParticleEmitter") then
			child.Enabled = false
		end
	end
	

	wait(0.5)
    
	wait(8)
	flames.Bluefire.Enabled = true
	flames.Pinkfire.Enabled = true
	wait(1.5)
	domain.SukunaDomain.Sukunadm:Destroy()
	flames.Bluefire.Enabled = false
	flames.Pinkfire.Enabled = false
	wait(5)
	domain:Destroy()

end)

Domain.OnServerEvent:Connect(function(player, active)
	local character = player.Character
	local root = character.HumanoidRootPart
	wait(15)
	root.CFrame = root.CFrame * CFrame.new(0,35,0)
end)

Domain.OnServerEvent:Connect(function(player, active)
	
	


	task.wait(12.50)
	Hval = true

	
 repeat 
    wait(0.2)
	local hitbox = Instance.new("Part")
	print("hitbox made")
	hitbox.CanCollide = false
	hitbox.Parent = workspace
	hitbox.Name = "DomainHitbox"
	hitbox.Transparency = 1
	hitbox.Material = "ForceField"
	hitbox.Massless = true
	hitbox.Size = Vector3.new(2025.8, 2048, 1999.7)
	hitbox.CanTouch = true
	hitbox.Anchored = true
	hitbox.CFrame = domain.CFrame
    hitbox.Shape = Enum.PartType.Ball

	hitbox.Touched:Connect(function(hit)
		if hit.Parent:FindFirstChild("Humanoid") and hit.Parent.Name ~= player.Character.Name and Hstun == true then
			print("stunhit")

			local Stun = Instance.new("IntValue")
			Stun.Parent = hit.Parent.StatusFolder
			Stun.Name = "Stun"

			hit.Parent.Humanoid:TakeDamage(0.2)

			task.wait(0.1)
			Stun:Destroy()
			task.wait(0.1)
			hitbox:Destroy()
		elseif hit.Parent:FindFirstChild("Humanoid") and hit.Parent.Name ~= player.Character.Name and Hstun == false then
				print("stunhit")

				

				hit.Parent.Humanoid:TakeDamage(0.05)

				task.wait(0.1)
				task.wait(0.1)
				hitbox:Destroy()
		end
	end)
until Hval == false



end)

Domain.OnServerEvent:Connect(function(player, active)

wait(12)

wait(5)
Hstun = false

wait(15)
Hval = false
end)

Description

Malevolent Shrine from Jujutsu Kaisen made in Roblox Studios

Tags

Roblox Studios VFX Scripting Rig Animation