본문 바로가기

전체 글

(52)
Blaster 제작 : 서버/클라이언트 이벤트 처리(3/3) 상대 플레이어에게 데미지 주기 서버-클라이언트 모델인 로블록스에서 플레이어끼리 데미지를 주기 위해서는 서버의 개입이 필요하다. 즉 블래스터를 발사한 플레이어는 명중되었음을 서버에게 알리고 서버는 명중된 플레이어에게 데미지를 줘야한다. 클라이언트와 서버와의 통신을 위해서 로블록스에서는 RemoteEvent를 사용할 수 있다. 로블록스에서 제공되고 있는 ReplicatedStorage 서비스를 사용하면 서버와 클라이언트 모두에서 접근이 된다. 따라서 ReplicatedStorage 서비스 밑에 RemoteEvent를 만들고 사용한다. ReplicatedStorage 밑에 폴더를 만들고 Events라고 네이밍한다. DamageCharacter 라는 이름으로 RemoteEvent를 만들어서 추가한다. 로컬스크립..
플레이어의 키입력 처리하기 플레이어의 키입력을 원하는 작업에 연결하면 어떨까? 플레이어가 키를 누를 때마다 직관적이고 게임 기능을 훨씬 빠르게 제어할 수 있게 되어서 몰입감을 높이는데 도움을 줄 것이다. 이 포스팅에서는 총(Tool)의 장전(reload)을 특정 키에 바인딩하여 제어 할 수 있는 방법을 알아보겠다. 시작하기 이전 포스팅와 내용이 이어지므로 설정과 소스 코드등을 참고하기 바란다. 2021.05.04 - [로블록스 개발 중급] - Player Tools 사용하기 액션 핸들러(Action Handler) 생성 먼저 플레이어의 키입력을 감지하는 함수가 필요하다. Blaster모델에 ToolController라는 이름으로 로컬스크립트를 추가하자. ToolController에 키 바인딩(키와 함수를 연결)하는 코드를 추가한다..
(로블록스)폭발 이펙트 만들기 폭발은 explosion(로블록스 내 이미 정의된 클래스)의 Explosion.BlastRadius안에 있는 BasePart들에 힘을 가하게 된다. 즉, Explosion.BlastRadius 반경에 있는 (보통 경우)캐릭터들에 포스를 가해서 관절을 끊어 버리고 캐릭터는 죽여 버리게 된다. ForceField에 의해서 보호되고 있는 캐릭터는 물론 살 수 있다. 게임이 실행되는 동안 폭발 이펙트를 발생시키면 곧 자체적으로 Destory되므로 Debris 서비스를 사용하여 리소스를 지울 필요가 없다. 폭발 이펙트(Explosion effects) 휴머노이드는 캐릭터 모델의 목 관절이 부러지면서 폭발로 사망합니다. 포스필드에 의해 보호되는 모든 파트는 폭발로부터 보호되는데 이 말은 파트의 관절이 부러지지 않아..