all 키워드에 대한 설명 및 활용 예제
개요
all 키워드는 GameMaker에서 함수가 모든 활성 인스턴스에 적용되거나 확인된다는 것을 나타내기 위해 사용됩니다. 비활성 인스턴스는 확인되거나 접근되지 않습니다. all을 사용하여 포인트 방법으로 다른 인스턴스의 변수를 접근하거나 설정할 수는 없지만, with와 함께 사용할 수 있습니다.
예제 코드
다음의 코드는 방 안에 있는 모든 인스턴스의 속도를 0으로 설정합니다.
with (all) {
speed = 0;
}
활용 예시
all을 사용하여 방 안의 모든 인스턴스를 타겟팅 하거나 확인할 수 있습니다. 몇 가지 활용 예시는 다음과 같습니다.
| 목적 | 코드 예시 |
|---|---|
| 마우스 위치에 인스턴스 확인 | gml<br>inst = instance_position(mouse_x, mouse_y, all);<br> |
| 선을 따라 충돌 확인 | gml<br>if collision_line(x, y, mouse_x, mouse_y, all, false, true) {}<br> |
| 모든 인스턴스를 동작 계획 그리드에 추가 | gml<br>mp_grid_add_instances(grid, all, false);<br> |
코드 설명
- 인스턴스 확인:
instance_position함수는 마우스 좌표에 위치한 모든 활성 인스턴스를 확인합니다. - 충돌 확인:
collision_line함수는 지정된 선을 따라 모든 활성 인스턴스를 확인하여 충돌 여부를 판단합니다. - 그리드 추가:
mp_grid_add_instances함수는 모든 인스턴스를 특정 그리드에 추가하여 동작을 계획하는 데 사용됩니다.
결론
all 키워드는 게임 개발 시 다양한 상황에서 유용하게 사용될 수 있으며, 종종 원하는 효과를 달성하기 위해 필요한 코드 양을 줄여 줄 수 있습니다. all을 활용하여 코드의 효율성을 높일 수 있습니다.