Menu
CoddyTech

체크포인트

Coddy Lua 여정의 Roblox 게임 스크립팅 섹션에 포함된 레슨. 24개 중 22번째.

플레이어가 쓰러지면 Roblox는 5초(Players.RespawnTime)를 기다린 후 SpawnLocation에 새로운 캐릭터를 생성합니다. 장소에 SpawnLocation이 여러 개 있으면 Roblox는 무작위로 하나를 선택하므로 체크포인트가 실수로 시작 지점이 될 수 있습니다.

모든 플레이어에게는 RespawnLocation 속성이 있습니다. 이 속성을 SpawnLocation으로 설정하면 해당 플레이어는 항상 그곳에서 다시 생성됩니다. 장애물 코스에서는 이 속성을 두 번 사용합니다. 플레이어가 참가할 때는 시작 지점을 가리키고, 체크포인트에 도달하면 해당 체크포인트로 변경합니다.

local Players = game:GetService("Players")
local camp = workspace.Camp
camp.Touched:Connect(function(hit)
	local player = Players:GetPlayerFromCharacter(hit.Parent)
	if player then
		player.RespawnLocation = camp
	end
end)

RespawnLocation은 각 플레이어에게 속하므로, 한 플레이어가 야영지에 도달해도 다른 플레이어의 위치는 바뀌지 않습니다.

challenge icon

챌린지

중급

회색 패드는 workspace.Start이고, 빛나는 파란색 패드는 체크포인트입니다(둘 다 SpawnLocation입니다). 이 스크립트는 체크포인트 안에 있습니다.

  1. 플레이어가 참가하면 해당 플레이어의 RespawnLocation을 workspace.Start로 설정합니다.
  2. 플레이어가 체크포인트에 닿으면 해당 플레이어의 RespawnLocation을 체크포인트로 설정하고, 체크포인트를 초록색으로 바꿉니다: Color3.fromRGB(0, 255, 0).

Play를 누르고, 체크포인트를 밟은 다음, 가장 먼 쪽 끝의 용암 속으로 걸어 들어가세요. 체크포인트에서 다시 나타나야 합니다. 그런 다음 Check를 누르세요.

직접 해보기

local Players = game:GetService("Players")
local checkpoint = script.Parent

Players.PlayerAdded:Connect(function(player)
	-- 모든 플레이어를 workspace.Start에서 시작하게 합니다
end)

checkpoint.Touched:Connect(function(hit)
	local player = Players:GetPlayerFromCharacter(hit.Parent)
	if player then
		-- 이제부터 이 플레이어가 여기서 다시 생성되게 합니다

		-- 체크포인트를 녹색으로 바꿉니다
	end
end)
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

Roblox 게임 스크립팅의 모든 레슨

직접 연습해 보세요: 온라인 Lua 컴파일러