본문 바로가기
🎮 게임메이커/👶 초보자를 위한 게임메이커 강좌

하나도 모르는 초보자를 위한 게임메이커 강좌(4)

by 제로데이 2022. 8. 8.

안녕하세요.

제로데이입니다.

 

이번 시간에 자동 벽 생성과 플레이어 벽 충돌 시 사망처리를 만들어보겠습니다.

 

 

화면 밖에 나간 벽 제거하기

자동 벽 생성을 만들기 전에 화면 밖으로 나간 벽을 제거하는 먼저 작업을 하겠습니다.

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()
: 게임을 다시 실행시킵니다.

 

 

 

이제 게임을 실행시켜봅시다

 

기둥들도 자동으로 생성되고 충돌하면 게임이 재시작 되는 것도 확인하실 수 있습니다!

 

 

마치며

이번 '하나도 모르는 초보자를 위한 게임메이커 강좌'는 이 강좌로 끝납니다.

게임을 따라 만드는 것은 실력 향상에 많은 도움을 주니 다른 여러 게임들도 따라 만들어 보시길 바라겠습니다.

수고 많이 하셨습니다!

 

내가 게임을 통해 전하고 싶은 건, '살면서 느끼는 감정'이다.

-데이비드 케이지-

댓글