room_next 함수 설명
room_next 함수는 입력된 방의 다음 방의 인덱스를 가져오는 기능을 제공합니다. 이 함수를 사용하여 현재 방의 인덱스를 얻고, 그 다음 방을 찾을 수 있습니다. 만약 입력한 방 뒤에 방이 없다면 -1이 반환됩니다. 이 함수는 room_add() 또는 room_duplicate()를 사용하여 동적으로 추가된 방은 인식하지 않습니다.
문법
room_next(numb);
인수 설명
| 인수 | 유형 | 설명 |
|---|---|---|
| numb | 정수 | 다음 방을 가져올 방의 인덱스 |
반환 값
- 방 자산의 인덱스
- 다음 방이 없으면 -1 반환
예제
다음 코드는 다음 방이 존재하는지 확인하고, 존재할 경우 그 방으로 이동합니다.
if (room_next(room) != -1) {
room_goto_next();
}
활용 예제
- 게임 레벨 전환
- 각 레벨이 방으로 구성된 게임에서, 현재 레벨의 다음 레벨로 전환할 때 사용할 수 있습니다.
gml if (room_next(room) != -1) { room_goto_next(); } - 스테이지 클리어 후 다음 스테이지로 이동
- 플레이어가 스테이지를 클리어했을 때 다음 스테이지로 이동하는 로직에 활용할 수 있습니다.
gml if (room_next(current_stage) != -1) { room_goto_next(); } - 연속적인 컷신
- 컷신이 여러 방으로 나뉘어 있을 때, 현재 컷신이 끝난 후 다음 컷신으로 자동으로 넘어가게 할 수 있습니다.
gml if (room_next(cutscene_room) != -1) { room_goto_next(); } - 게임 종료 후 메인 메뉴로 돌아가기
- 게임이 종료된 후 메인 메뉴로 돌아갈 때, 다음 방이 메인 메뉴 방인 경우에 사용할 수 있습니다.
gml if (room_next(game_over_room) != -1) { room_goto_next(); } - 특정 조건에서 다음 방으로 이동
- 특정 조건이 충족되었을 때만 다음 방으로 이동하도록 설정할 수 있습니다.
gml if (player_score >= target_score && room_next(current_room) != -1) { room_goto_next(); }