2011-03-23 5 views
0

여기 내 GamePlay.as 는 내가이 오류가

package com.work.scripts 
{ 
    import flash.display.Stage; 
    import flash.events.Event; 
    import flash.utils.Timer; 
    import flash.events.TimerEvent; 

    import com.work.scripts.player.Player; 

    public class GamePlay 
    { 
     private var player:Player; 
     private var stageRef:Stage; 

     //timers 
     private var gameDelay:Timer = new Timer(500, 1); 

     public function GamePlay(stageRef:Stage) 
     { 
      this.stageRef = stageRef; 

      //player variables 
      player = new Player(); 

      player.x = 400; 
      player.y = 500; 
      // 

      gameDelay.addEventListener(TimerEvent.TIMER_COMPLETE, StartGame, false, 0, true); 
      gameDelay.start(); 
     } 

     private function StartGame(e:TimerEvent):void 
     { 
      stageRef.addChild(player); 

      stageRef.addEventListener(Event.ENTER_FRAME, MainGameLoop, false, 0, true); 
     } 

     private function MainGameLoop(e:Event):void 
     { 
      player.Movement(); 
     } 
    } 
} 

내 클래스 내 게임 플레이 클래스 내에서 Player.as

package com.work.scripts.player 
{ 
    import flash.display.MovieClip; 
    import flash.events.Event; 

    import scripts.utils.Bounds; 

    public class Player extends MovieClip 
    { 
     private var bounds:Bounds = new Bounds(); 

     public function Player() 
     { 

     } 

     public function Movement():void 
     { 
      startDrag(true, bounds.playArea); 
     } 
    } 
} 

를 클래스 함수를 호출하는 데 문제가 있어요

TypeError: Error #1006: Movement is not a function. 
    at com.socialplay.scripts::GamePlay/MainGameLoop() 

GamePlay.as의 모든 내 객체에 대해 이동 함수를 사용해야한다는 것을 의미합니까? 그들은 공개적으로 수업을합니다.

답변

0

코드가 괜찮습니다. 방금 두 개의 클래스를 새 프로젝트에 복사하고 Player.Movement()을 모든 프레임에 맞게 호출 할 수있었습니다. 이 오류가 계속 발생합니까?

+0

그래, Player.as 클래스가 라이브러리의 개체에 연결된 Player.as와 같지 않음이 드러납니다. 나는 바보가 여기에, 당신의 대답을 받아 들일 것 같아이 닫을 수 있습니다. – RamenNoodles