2016-11-10 2 views
1

현재 내 선수에게 애니메이션을 적용하여 자신이 숨을 쉬고있는 것처럼 행동하도록 노력하고 있습니다.Game Maker의 스프라이트가 원하는대로 작동하지 않습니다.

if(time mod 60==0){ 
    if(image_index==0){ 
    image_index=1; 
    } 
    else{ 
    image_index=0; 
    } 
} 
time++; 

모든 것은 단계 이벤트에 넣어되고 스프라이트는 심지어 코드에서 사용하지 않은 인덱스 2, 3, 할 때마다 한 단계 그리고도 변화를 변화하고 있습니다.

누구나 몇 가지 아이디어가 있다면 왜 이런 식으로 작동합니까?

답변

0

사용하는 스프라이트에 여러 개의 하위 이미지가 있기 때문입니다. GameMaker는 매 프레임마다 자연스럽게 이미지 인덱스를 반복합니다. 그래서 첫째, 당신은 너무 이상적으로 단지 "sprite_index"변수를 변경 한 후, 당신은 스프라이트 그냥 변경되었을 때이 줄을 실행해야

image_speed = 0; 

실행에서 애니메이션을 중지해야합니다. 변경하지 않으면 생성 코드에서 image_speed를 0으로 설정하면됩니다.

궁금한 점이 있다면 여기에서 대답을 찾았습니다. How to freeze sprite animation on last frame?