안녕하세요.
제로데이입니다.
이번 시간에 자동 벽 생성과 플레이어 벽 충돌 시 사망처리를 만들어보겠습니다.
화면 밖에 나간 벽 제거하기
자동 벽 생성을 만들기 전에 화면 밖으로 나간 벽을 제거하는 먼저 작업을 하겠습니다.
obj_column1 오브젝트의 스텝 이벤트에서
if x < -60 {
instance_destroy()
}
이렇게 작성해 줍시다.
기둥의 x좌표가 -60 보다 작을 경우 기둥을 제거하는 코드입니다.
자동 벽 생성 만들기
obj_player 오브젝트의 생성 이벤트에서 alarm[0] = 60을 작성해 줍니다.
그리고 이벤트 추가 - 알람 - 알람0을 눌러줍니다.
위의 alarm[0] = 60의 뜻은 알람0이벤트를 1초(60) 뒤에 실행한다는 뜻입니다.
알람0 이벤트에 코드를 추가합니다.
var _y = irandom_range(-288,0)
instance_create_layer(1472,_y,"Instances",obj_column2)
instance_create_layer(1472,_y+irandom_range(1056,1120),"Instances",obj_column1)
alarm[0] = 120
var _y = irandom_range(-288,0)
: -288부터 0까지 랜덤 한 정수 숫자를 가져와서 _y에 저장합니다.
instance_create_layer(1472,_y,"Instances",obj_column2)
: 가져온 정수로 obj_column2의 y좌표를 결정합니다.
instance_create_layer(1472,_y+irandom_range(1056,1120),"Instances",obj_column1)
: _y에서 또 1056부터 1120까지 랜덤 한 값을 가져온 뒤 더하고 y좌표를 결정합니다.
alarm[0] = 120
: 기둥을 반복하여 만들기 위해 알람0 이벤트를 120초에 다시 실행시킵니다.
벽 충돌 만들기
벽 충돌을 하면 게임을 다시 시작하게 만들어봅시다.
obj_player의 스텝 이벤트로 갑니다.
스텝 이벤트에서 아래 코드를 추가해 줍니다.
if place_meeting(x,y,obj_column1) {
game_restart()
}
if place_meeting(x,y,obj_column1) {
: 충돌 감지 함수로 obj_column1(2)과 충돌하게 되면 아래 코드가 실행됩니다.
game_restart()
: 게임을 다시 실행시킵니다.
이제 게임을 실행시켜봅시다
기둥들도 자동으로 생성되고 충돌하면 게임이 재시작 되는 것도 확인하실 수 있습니다!
마치며
이번 '하나도 모르는 초보자를 위한 게임메이커 강좌'는 이 강좌로 끝납니다.
게임을 따라 만드는 것은 실력 향상에 많은 도움을 주니 다른 여러 게임들도 따라 만들어 보시길 바라겠습니다.
수고 많이 하셨습니다!
내가 게임을 통해 전하고 싶은 건, '살면서 느끼는 감정'이다.
-데이비드 케이지-
'🎮 게임메이커 > 👶 초보자를 위한 게임메이커 강좌' 카테고리의 다른 글
하나도 모르는 초보자를 위한 게임메이커 강좌(3) (0) | 2022.07.26 |
---|---|
하나도 모르는 초보자를 위한 게임메이커 강좌(2) (0) | 2022.07.24 |
하나도 모르는 초보자를 위한 게임메이커 강좌(1) (0) | 2022.07.21 |
댓글