인스턴스 변수 설정 (Set Instance Variable)
이 액션을 사용하면 기본 제공 변수를 설정할 수 있습니다. 모든 객체의 모든 인스턴스는 현재 x/y 위치, 속도, 방향, 가시성 및 기타 여러 가지 정보를 저장하기 위해 이미 생성된 여러 변수를 가지고 있습니다.
## 사용 가능한 인스턴스 변수 목록
|변수명|설명|
|---|---|
|X 좌표|방(Room) 내에서 x축을 따라 위치|
|Y 좌표|방(Room) 내에서 y축을 따라 위치|
|방향|인스턴스의 이동 방향 (기본값 0 - 오른쪽 0°, 위쪽 90°, 왼쪽 180°, 아래쪽 270°)|
|속도|인스턴스가 이동하는 속도 (게임 프레임당 픽셀)|
|수평 속도|인스턴스의 수평 속도 (게임 프레임당 픽셀)|
|수직 속도|인스턴스의 수직 속도 (게임 프레임당 픽셀)|
|가시성|가시성 토글 변수 (기본값 true, 다른 설정이 없으면 false로 설정하여 보이지 않게 함)|
|지속성|지속성 토글 변수 (기본값 false, 다른 설정이 없으면 true로 설정해서 지속됨)|
|레이어|인스턴스에 할당된 레이어|
|깊이|레이어에 할당된 깊이 값|
|스프라이트|인스턴스에 할당된 스프라이트|
|이미지 인덱스|할당된 스프라이트의 이미지 인덱스|
|이미지 각도|인스턴스가 설정될 각도 (기본값 0)|
|이미지 알파|인스턴스의 알파 값 (0이면 완전 투명, 1이면 완전 불투명)|
|이미지 블렌드|인스턴스 스프라이트와 혼합할 색상 (기본값 흰색)|
|이미지 속도|인스턴스의 애니메이션 속도|
|수평 스케일|인스턴스 스프라이트가 그려질 수평 스케일|
|수직 스케일|인스턴스 스프라이트가 그려질 수직 스케일|
|마스크|인스턴스의 마스크 인덱스 (기본값 -1)|
|마찰|각 게임 프레임에서 인스턴스를 느리게 하기 위해 사용할 마찰|
|중력|인스턴스의 중력 방향으로 작용하는 변하지 않는 힘 (기본값 0)|
|중력 방향|중력이 greater than 0일 때 이동 방향 설정 (기본값 270)|
|점수|점수 변수 설정|
|생명|생명 변수 설정|
|체력|체력 변수 설정|
## 변수 설정 방법
1. 설정할 기본 제공 변수를 선택합니다.
2. 선택한 변수에 대한 값을 설정합니다. 사용할 값은 선택한 변수에 따라 다릅니다 (기본값 및 범위 참조).
추가로, 액션 옆의 플러스 아이콘을 클릭하여 동일한 액션에서 설정할 추가 변수를 선택하고 값을 제공합니다.
### 액션 문법 예시
```gml
// 이전 x/y 위치의 값을 가져와 현재 x/y 위치와 비교합니다.
// 값이 다르면 인스턴스의 스프라이트 인덱스가 변경되고 이미지 인덱스가 0으로 설정됩니다.
||
|---|
sprite_index = new_sprite;
image_index = 0;
}
활용 및 응용 예제
예제 1: 이동하는 객체 설정
// 인스턴스의 속도를 설정
speed = 5; // 픽셀 프레임당 5픽셀 이동
예제 2: 플레이어 생명 설정
// 플레이어 객체의 생명을 설정
lives = 3; // 초기 생명은 3
예제 3: 중력 효과 적용
// 중력을 적용하여 인스턴스의 속도를 증가시킵니다
gravity = 9.81; // 중력 값을 9.81로 설정
결론
이 문서는 인스턴스 변수 설정에 대한 기본 정보를 제공하며, 다양한 변수를 활용하여 게임 내에서 객체의 동작을 제어할 수 있습니다. ```