인스턴스 변수 가져오기
이 문서에서는 GameMaker의 인스턴스 변수 가져오기 기능에 대해 설명합니다. 이 기능을 사용하면 모든 객체의 인스턴스에서 중요한 정보를 저장하는 여러 내장 변수를 가져올 수 있습니다. 인스턴스 변수에 대한 정보를 이해하면 게임 개발 시 유용합니다.
인스턴스 변수 목록
다음은 사용할 수 있는 인스턴스 변수 목록입니다.
| 변수 이름 | 설명 |
|---|---|
| X 좌표 | 방 안에서 x 축을 따라 현재 위치 |
| Y 좌표 | 방 안에서 y 축을 따라 현재 위치 |
| 방향 | 인스턴스의 이동 방향 (기본값: 0, 오른쪽: 0°, 위쪽: 90°, 왼쪽: 180°, 아래쪽: 270°) |
| 속도 | 인스턴스가 움직이는 속도 (픽셀/프레임 단위) |
| 수평 속도 | 인스턴스의 수평 속도 (픽셀/프레임 단위) |
| 수직 속도 | 인스턴스의 수직 속도 (픽셀/프레임 단위) |
| 가시성 | 가시성 토글 변수 (기본값: true, 객체 편집기에서 설정하면 false로 만들어 보이지 않게 할 수 있음) |
| 지속성 | 지속성 토글 변수 (기본값: false, 객체 편집기에서 설정하면 true로 만들어 방을 넘어설 수 있음) |
| 레이어 | 인스턴스가 할당된 레이어 |
| 깊이 | 레이어에 할당된 깊이 값 |
| 스프라이트 | 인스턴스에 할당된 스프라이트 리소스 |
| 이미지 인덱스 | 인스턴스에 할당된 스프라이트의 이미지 인덱스 |
| 이미지 각도 | 인스턴스가 설정될 각도 (기본값: 0) |
| 이미지 알파 | 인스턴스의 알파 값 (0-1, 0은 완전 투명, 1은 불투명) |
| 이미지 혼합 | 인스턴스 스프라이트와 혼합될 색상 (기본값: 흰색) |
| 이미지 속도 | 인스턴스의 애니메이션 속도 |
| 순서 포함 여부 | 인스턴스가 현재 순서에 포함되어 있는지 여부 (true/false) |
| 수평 스케일 | 인스턴스 스프라이트가 그려질 수평 스케일 |
| 수직 스케일 | 인스턴스 스프라이트가 그려질 수직 스케일 |
| 마스크 | 인스턴스의 마스크 인덱스 (기본값: -1) |
| 마찰 | 인스턴스의 이동을 느리게 하는 마찰 값 |
| 중력 | 인스턴스에 적용되는 중력 (기본값: 0) |
| 중력 방향 | 중력이 0보다 클 때의 이동 방향 (기본값: 270) |
| 점수 | 점수 변수 설정 |
| 생명 | 생명 변수 설정 |
| 건강 | 건강 변수 설정 |
코드 예제
다음은 특정 인스턴스 변수 값을 가져오고 사용하는 예제 코드입니다.
// 인스턴스의 이전 x/y 위치를 가져옵니다.
var previous_x = x;
var previous_y = y;
// 현재 x/y 위치를 가져옵니다.
var current_x = other.x;
var current_y = other.y;
// x/y 위치 비교
||
|---|
// 위치가 변경되면 스프라이트 인덱스 변경
sprite_index = spr_new_sprite;
image_index = 0; // 이미지 인덱스를 0으로 설정
}
결론
인스턴스 변수 접근은 GameMaker에서 중요한 기능입니다. 인스턴스의 속성을 제어함으로써 게임의 행동을 세밀하게 조정할 수 있습니다. 필요에 따라 다양한 변수를 가져와 활용해 보세요.
이외에도 추가적으로 다루고 싶은 내용을 알려주시면 더욱 심화된 내용으로 설명드리겠습니다.