사용자가 게임을 할 수 있도록 farmville 게임 자습서로 게임 자습서를 만드는 법. 나는 최근에 그 actionscript 3에 의해 그 사용자를위한 게임 자습서의 종류를 만드는데 참여하고있다, 나에게 가이드를 줄 수 있습니까? 어떤 도움을 주셔서 감사합니다 ~플래시 게임의 게임 자습서를 만드는 방법은 무엇입니까?
1
A
답변
0
이것을하는 일반적인 방법은 Observer 디자인 패턴과 유사한 시스템을 사용하는 많은 게임들이 사용하는 "성과 시스템"과 비슷합니다. 일종의 데이터 패킷을 수신하는 기능과 함께 전체적으로 액세스 가능한 수신기 개체를 설정할 수 있습니다.
그러면 자습서 정보가 표시되어야하는 모든 기능이이 수신자 객체에 메시지를 보내고 조치를 수행했음을 알립니다.
예를 들어, 플레이어에게 "10 개의 나무를 잘라내십시오"라고 알리는 메시지 상자가 있다고 가정 해보십시오. 그런 다음 그들은 "나무를 잘라"작업을 수행 할 때 다음 TutorialMessage(var Action:String, var Parameter:object):void
같은 기능으로 리시버 개체가 기능은 수신기 객체의 메시징 기능 Receiver.TutorialMessage("TreeChoppedDown", 1)
에 대한 호출을 포함 할 것)합니다 (chopDownTree의 끝낼 수 있습니다 (즉, 1 나무 아래로 잘게).
그러면 리시버는 행동의 본질을 결정하기 위해 대대적 인 스위치 케이스를 실행하고 논리를 기반으로 해석 할 것입니다. 이 경우 매개 변수의 값을 일부 카운터 변수에 추가하고 10에 도달하면 다음 자습서 메시지를 표시합니다.
관련 문제
- 1. 안드로이드 지원 플래시 게임
- 2. 플래시 게임의 점수 (PTS)
- 3. 게임의 프리미엄 버전과 무료 버전을 게임 센터에 게시하는 방법은 무엇입니까?
- 4. 내 인공 지능을위한 기존 플래시 게임의 인터페이스는 무엇입니까?
- 5. 플래시 게임 개발 시작
- 6. 도보 게임 및 파이 게임의 타이밍
- 7. 게임 루프 용 타이머를 만드는 방법은 무엇입니까?
- 8. 이 게임의 이름은 무엇입니까?
- 9. 파이썬으로 플래시 애니메이션을 만드는 방법은 무엇입니까?
- 10. AS3에서만 플래시 프리 로더를 만드는 방법은 무엇입니까?
- 11. 비디오 게임 모드를 설치하는 방법은 무엇입니까?
- 12. 플래시 게임 속도가 느려짐
- 13. 플래시 게임 데이터 저장
- 14. 플래시 게임/as3
- 15. 플래시 게임 개발 AS3
- 16. 플래시 게임 엔진
- 17. 플래시 게임 도움말
- 18. Actionscript 3에서 게임 타이머를 만드는 가장 좋은 방법은 무엇입니까?
- 19. 플래시 게임의 모든 프로세스를 일시 중지하십시오.
- 20. 다른 PC에서 속도 (게임의 프레임 속도)를 동일하게 만드는 방법은 무엇입니까?
- 21. Mips에서 - 인쇄 게임의 보드
- 22. 플래시 AS3 게임 - 텍스트가 아닌 그래픽이있는
- 23. iOS 게임의 스크립팅 언어
- 24. 간단한 게임의 코드를 레이아웃하는 방법은 무엇입니까?
- 25. 3D 게임의 구조를 구성하는 방법은 무엇입니까?
- 26. 플래시 라이트를 사용하여 iphone 게임
- 27. 플래시 (게임)에서 데이터 긁기
- 28. 플래시 As3 게임 : 클래스 질문
- 29. VB를 통한 플래시 게임 확대
- 30. DirectX 게임 장면에서 플래시 재생
감사합니다. Jordaan Mylonas. 강제 행동은 어때? 클릭 만 허용하는 방법이 있습니까? 예상대로 사용자가 자습서를 끝내기 위해 시퀀스를 따르도록하고 싶습니다. 누구나 단서가 있습니까? – user686866
너무 희한하지 않습니다. 작업 권한을 처리하는 전역 적으로 액세스 가능한 개체를 설정합니다. 일반적인 경기 상황 하에서는 게임의 규칙 내에서 모든 행동을 허용합니다. 튜토리얼에서는 훨씬 더 엄격합니다. 'CanPerform (Action : String) : bool' 함수를 제공하고, 게임 상태에 영향을주는 액션이 발생할 때마다 블록인지 여부를 검사합니다. 즉, if (Ruleset.CanPerform ("KillSomeDude")) {KillADude();}' –