sprite_get_nineslice 함수 설명
sprite_get_nineslice 함수는 스프라이트의 Nine Slice 구조체를 반환합니다. 이 구조체는 스프라이트 편집기에서 설정된 모든 Nine Slice 속성을 포함하고 있으며, sprite_set_nineslice() 함수를 사용하여 설정할 수도 있습니다. 이 구조체의 내용은 다음 페이지에서 자세히 설명됩니다. 만약 제공된 스프라이트에 Nine Slice 구조체가 할당되어 있지 않다면, 기본 Nine Slice 속성으로 새 구조체가 생성되어 반환됩니다. 이 구조체의 값을 변경하면 원래 스프라이트의 Nine Slice 속성이 수정되어, 해당 스프라이트로 이루어진 모든 이후의 드로우 호출에 영향을 미칩니다.
문법
sprite_get_nineslice(ind);
인수
| 인수 | 타입 | 설명 |
|---|---|---|
| ind | 정수 | Nine Slice 구조체를 가져올 스프라이트의 인덱스 |
반환값
- Nine Slice 구조체 (스프라이트가 존재하지 않으면 -1 반환)
예제
var _box_nineslice = sprite_get_nineslice(spr_box_0);
_box_nineslice.enabled = true;
_box_nineslice.left = 10;
_box_nineslice.right = 10;
_box_nineslice.top = 10;
_box_nineslice.bottom = 10;
위 코드는 스프라이트에서 Nine Slice 구조체를 가져오고, Nine Slicing을 활성화하며, 가이드 오프셋을 설정합니다.
활용 예제
- Nine Slice 활성화 및 속성 설정
var _sprite_nineslice = sprite_get_nineslice(spr_example);
_sprite_nineslice.enabled = true;
_sprite_nineslice.left = 5;
_sprite_nineslice.right = 5;
_sprite_nineslice.top = 5;
_sprite_nineslice.bottom = 5;
- Nine Slice 비활성화
var _sprite_nineslice = sprite_get_nineslice(spr_example);
_sprite_nineslice.enabled = false;
- Nine Slice 속성 변경 후 드로우 호출
var _sprite_nineslice = sprite_get_nineslice(spr_example);
_sprite_nineslice.enabled = true;
_sprite_nineslice.left = 15;
_sprite_nineslice.right = 15;
draw_sprite(spr_example, 0, x, y);
- 기본 Nine Slice 속성으로 초기화
var _sprite_nineslice = sprite_get_nineslice(spr_example);
_sprite_nineslice.left = 0;
_sprite_nineslice.right = 0;
_sprite_nineslice.top = 0;
_sprite_nineslice.bottom = 0;
- Nine Slice 구조체의 존재 여부 확인
var _sprite_nineslice = sprite_get_nineslice(spr_example);
if (_sprite_nineslice != -1) {
// Nine Slice 구조체가 존재함
}
이 문서에서는 sprite_get_nineslice 함수의 사용법과 다양한 활용 예제를 설명했습니다.