function setPlayerCharacter()
for i, v in pairs(game.Players.LocalPlayer.Character:GetChildren()) do
v:Destroy()
end
for i, v in pairs(game.ReplicatedStorage.StarterCharacter:GetChildren()) do
local c = v:Clone()
c.Parent = game.Players.LocalPlayer.Character
end
task.wait(0.01)
game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = 16
end
function setPlayerCamera()
local cam = game.Workspace.FindPlayerCamera.Camera
cam.CameraType = “Fixed”
cam.CFrame = game.Workspace.FindPlayerCamera.CFrame
cam.CFrame = cam.CFrame - cam.CFrame.LookVector * 10
cam.CFrame = cam.CFrame + cam.CFrame.RightVector * -5
end
function resetCamera()
game.Workspace.FindPlayerCamera.Camera.CameraType = “Custom”
end
function playSound()
local s = Instance.new(“Sound”)
s.SoundId = “rbxassetid://1142136398”
s.Volume = 1
s.Parent = workspace.FindPlayerCamera
s.PlayOnRemove = true
s:Remove()
end
game.Players.LocalPlayer.Character.Humanoid.Died:Connect(function()
setPlayerCharacter()
resetCamera()
playSound()
end)
function onMonsterDied()
game.ReplicatedStorage.Events.MonsterDied:FireServer()
end
function onVictory()
game.ReplicatedStorage.Events.Victory:FireServer()
end
game.Workspace.Player.Humanoid.Died:Connect(function()
onVictory()
end)
function onMonsterHit(hit)
local char = hit.Parent
if char ~= nil then
if not char:IsA(“Hat”) and not char:IsA(“BasePart”) then
onMonsterDied()
end
end
end
function onPlayerHit(hit)
local char = hit.Parent
if char ~= nil then
if not char:IsA(“Hat”) and not char:IsA(“BasePart”) then
char.Humanoid:TakeDamage(5)
end
end
end
game.Workspace.Player.Touched:Connect(function(hit)
onPlayerHit(hit)
end)
game.Workspace.Monster.Touched:Connect(function(hit)
onMonsterHit(hit)
end)
function onMonsterSpawned()
game.ReplicatedStorage.Events.MonsterSpawned:FireServer()
end
function onGameStart()
game.ReplicatedStorage.Events.GameStart:FireServer()
end
function onPlayerDied()
game.ReplicatedStorage.Events.PlayerDied:FireServer()
end
function onGameOver()
game.ReplicatedStorage.Events.GameOver:FireServer()
end
function onPlayerVictory()
game.ReplicatedStorage.Events.PlayerVictory:FireServer()
end
function onPlayerReady()
game.ReplicatedStorage.Events.PlayerReady:FireServer()
end
function onPlayerCantMove()
game.ReplicatedStorage.Events.PlayerCantMove:FireServer()
end
function onPlayerCanMove()
game.ReplicatedStorage.Events.PlayerCanMove:FireServer()
end
function onPlayerGaveUp()
game.ReplicatedStorage.Events.PlayerGaveUp:FireServer()
end
function onMonsterGaveUp()
game.ReplicatedStorage.Events.MonsterGaveUp:FireServer()
end
function onPlayerTeleported()
game.ReplicatedStorage.Events.PlayerTeleported:FireServer()
end
function onPlayerCanTeleport()
game.ReplicatedStorage.Events.PlayerCanTeleport:FireServer()
end
function onPlayerCantTeleport()
game.ReplicatedStorage.Events.PlayerCantTeleport:FireServer()
end
function onPlayerTeleport()
game.ReplicatedStorage.Events.PlayerTeleport:FireServer()
end
function onPlayerLeft()
game.ReplicatedStorage.Events.PlayerLeft:FireServer()
end
function onPlayerJoined()
game.ReplicatedStorage.Events.PlayerJoined:FireServer()
end
function onPlayerIsIt()
game.ReplicatedStorage.Events.Player