실습 하기 전에 영상 참고해서 맵도 대충 컨셉 잡고 꾸미고, 캐릭터도 꾸며뒀다 ㅎㅎ 긔여워
RigidbodyComponent
의 SetForce(Vector2(x, y))
→ 원하는 방향으로 힘 가할 수 있음
→ LeftAlt 키를 눌러 KeydownEvent 발생 시 SetForce 함수로 중력을 조절하면 점프 시 밑으로 떨어지지 않고 둥둥 뜨게 할 수 있음
DoongDoongJump {
property:
[sync]
string Mode = "AvoidObstacle"
Function:
Entity Event Handler:
HandleKeyDownEvent(KeyDownEvent event) {
-- Parameters
local key = event.key
local player = _UserService.LocalPlayer
local rigidbody = player.RigidbodyComponent
local controller = player.PlayerControllerComponent
--------------------------------------------------------
-- Left Alt, 즉 점프를 눌렀을 경우 방향 맞춰 공중 도약할 수 있도록 하는 이벤트 처리
if self.Mode == "AvoidObstacle" then -- 장애물 피하기 모드일 때만 동작
-- CameraComponent.Damping은 카메라 반응 속도 ...
-- 짧게 낮춰서 플레이어를 빠르게 따라갈 수 있도록 함
player.CameraComponent.Damping.x = 0.1
player.CameraComponent.Damping.y = 0.1
-- 점프 키가 눌렸을 경우엔 SetForce로 도약 이벤트 처리
if key == KeyboardKey.LeftAlt then
rigidbody:SetForce( Vector2( 3 * controller.LookDirectionX , 6 )) -- 플레이어가 바라보는 방향 그대로 사용
end
end
}
}
CameraComponent.Damping
→ 카메라 반응 속도 조절 PlayerControllerComponent.LookDirectionX
→ 좌우 바라보는 방향