2012-02-18 3 views
0

먼저 플래시 개발에 완전히 익숙하지만 OOP는 아니라고 말하게합니다. 나의 임무는 실시간으로 (게임 루프를 사용하는 것을 의미 함) 객체를 지향하는 방식으로 플래시 게임을 만드는 것이다. 나는 가이드를 온라인으로 따라 왔으며 기초는 가지고 있다고 생각하지만 내 플레이어 스프라이트가 나타나지 않습니다.플레이어 스프라이트가 나타나지 않음

이미지를 플래시로 가져온 다음 Player이라는 심볼로 변환 했으므로 이제는 무비 클립입니다. ActionScript 용으로 내 보내서 클래스 com.Player을 호출했습니다.

또한 내 문서 클래스를 com.Engine (내 게임 루프를 갖고 다른 클래스에 메서드를 호출 할 계획입니다)로 설정했습니다.

그런 다음 .fla과 같은 디렉토리에 com이라는 디렉토리를 만들었습니다. 이 디렉토리 안에서, 나는 Engine.asPlayer.as, 여기에 그들 모두에 대한 코드의 제작 :

package com { 
    import flash.display.MovieClip; 
    import flash.display.Stage; 

    public class Engine extends MovieClip { 
     public function Engine() { 
      // Create a player instance 
      var player:Player = new Player(); 
      stage.addChild(player); 
      player.x = stage.stageWidth/2; 
      player.y = stage.stageHeight/2; 

     } 
    } 
} 

- I, 즉 플레이어를 확인해야합니다 알고에 따르면

package com { 
    import flash.display.MovieClip; 

    public class Player extends MovieClip { 
     public function Player() { 

     } 
    } 
} 

의 중심에 표시 내가 그것을 실행할 때 화면,하지만 그렇지 않습니다. 나는 trace("hello world")을 사용하여 Engine 클래스와 생성자가 호출되고, 그 결과를 얻는다는 것을 확인했다. 또한 동일한 메소드를 사용하여 클래스의 생성자가 호출되고 있다는 것을 알고 있습니다. 나는 왜 플레이어가 화면에 나타나지 않는지 모르겠다.

Player 기호 (정확한 용어는?)를 내 라이브러리에서 스테이지로 드래그하면 플레이어 스프라이트가 표시되어 이미지가 첨부되었음을 알 수 있습니다.

누구에게 잘못 될 수 있는지 알고 있습니까? 미리 감사드립니다 :)

+0

추가되어 있는지 확인하십시오, "이다 ActionScript에 내보내기 "가 선택되어 있고" 클래스 "필드에"com.Player "가 보이십니까? – rid

+0

예 및 예 :) 기본 클래스가 없지만 중요합니까? –

+0

기본 클래스는'flash.display.MovieClip'이어야합니다. – rid

답변

0

플레이어 스프라이트에 뭔가가 있습니까? 클래스 있는지 확인하는

공용 클래스 플레이어가 PlayerSpriteNameThatIsInYourFla

또는 당신이 플레이어 클래스의 그래픽을 그리려고한다 확장 : 당신이 FLA에 파일이나 뭔가 스프라이트를 만든 경우 그렇게 그 이름에서 확장해야 실제로 보여주는 :

또한
public class Player extends MovieClip() 
{ 
    this.graphics.beginFill(0x00FF00); 
    this.graphics.drawRect(0,0,100,100); 
    this.graphics.endFill(); 
} 

하는 당신이 바로 라이브러리에서 플레이어의 기호를 클릭하고 "속성 ..."에 가면 모든 정확한 수입 :

관련 문제