객체 스프라이트 설정 함수 설명
object_set_sprite 함수는 특정 객체의 스프라이트 인덱스를 설정하는 데 사용됩니다. 이 함수를 사용하면 스프라이트 인덱스가 변경된 후 생성되는 모든 인스턴스가 새로운 스프라이트 인덱스를 사용하게 됩니다. 그러나 이미 방에 있는 인스턴스는 영향을 받지 않을 수 있습니다. 이 함수는 인스턴스 함수가 아니므로 주의해야 합니다! 개별 인스턴스의 스프라이트 인덱스는 sprite_index 변수를 사용하여 설정할 수 있으며, 이를 통해 동일한 객체에서 생성된 10개의 인스턴스가 모두 다른 스프라이트를 가질 수 있습니다. 객체의 스프라이트 인덱스를 이 함수를 사용하여 변경하더라도, 현재 방에 있는 모든 인스턴스는 원래 상태를 유지하고, 함수 호출 이후에 생성된 인스턴스만 새로운 스프라이트 인덱스를 사용하게 됩니다.
문법
object_set_sprite(index, spr);
인수 설명
| 인수 | 유형 | 설명 |
|---|---|---|
| index | 객체 자산 | 변경할 객체의 인덱스 |
| spr | 스프라이트 자산 | 객체에 할당할 스프라이트 |
반환값
N/A
예제 코드
아래 코드는 현재 실행 중인 인스턴스가 있는 방에 따라 "obj_Player" 객체의 스프라이트 인덱스를 다르게 설정합니다. 그런 다음 "obj_Player"의 인스턴스를 생성합니다.
switch (room) {
case rm_start:
object_set_sprite(obj_Player, spr_uniform);
break;
case rm_middle:
object_set_sprite(obj_Player, spr_swimsuit);
break;
case rm_end:
object_set_sprite(obj_Player, spr_casual);
break;
}
instance_create_layer(32, 32, "Instances", obj_Player);
활용 및 응용 예제
- 레벨에 따라 캐릭터 스프라이트 변경하기
- 각 레벨에 맞는 스프라이트를 설정하여 플레이어의 외형을 변화시킬 수 있습니다.
- 상황에 따른 스프라이트 변경
- 특정 이벤트(예: 아이템 획득, 상태 변화)에 따라 스프라이트를 변경하여 시각적으로 피드백을 줄 수 있습니다.
- 다양한 적 캐릭터 스프라이트 설정
- 적 캐릭터의 스프라이트를 레벨에 따라 다르게 설정하여 게임의 다양성을 높일 수 있습니다.
- 스프라이트 애니메이션 전환
- 특정 조건(예: 공격, 방어)에 따라 스프라이트를 전환하여 애니메이션 효과를 줄 수 있습니다.
- UI 요소와의 연동
- UI 요소와 연동하여 플레이어의 상태에 따라 스프라이트를 변경할 수 있습니다.
이와 같은 다양한 활용 방법을 통해 게임의 시각적 요소를 풍부하게 만들 수 있습니다.