> 백엔드 개발 > 파이썬 튜토리얼 > 파이게임 애니메이션 스프라이트 시트

파이게임 애니메이션 스프라이트 시트

WBOY
풀어 주다: 2024-02-12 08:12:04
앞으로
704명이 탐색했습니다.

파이게임 애니메이션 스프라이트 시트

질문 내용

스프라이트 시트를 사용하여 파이게임에서 하향식 RPG를 만들고 싶습니다.

예를 들어, 스페이스바를 눌러 공격하면 공격 애니메이션이 실행된 다음 정상으로 돌아갈 수 있기를 원합니다

으아아아

위 코드는 제가 가지고 있는 코드입니다. 스페이스바를 한 번 누르면 애니메이션이 진행된 후 중지되지만, 스페이스바를 두 번 누르면 프로그래밍 방식 때문에 반복됩니다.

애니메이션 관련 도움이 필요합니다. 감사합니다


정답


문제는 스페이스를 두 번째로 눌렀을 때 다음 호출로 인해 발생합니다.

으아아아

이렇게 하면 "이전" 및 "현재" 상태가 "공격"으로 설정됩니다. 결과적으로 animate_attack() 메소드에서 상태가 재설정되면, "공격"으로 유지됩니다:

으아아아

빠른 수정으로 아직 설정되지 않은 경우에만 상태를 변경하세요.

으아아아

더 나은 수정으로 상태를 캡슐화해야 합니다. 이렇게 하면 플레이어 클래스만 자체 상태를 처리할 수 있습니다. 예를 들면 다음과 같습니다.

으아아아

이렇게 하면 클래스 외부의 상태를 알 필요가 없습니다.

으아아아

위 내용은 파이게임 애니메이션 스프라이트 시트의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:stackoverflow.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿