2014-01-14 1 views
0

이것은 아마도 새 질문이지만 클릭 할 때마다 엔티티를 추가하는 프로그램을 만들고 싶다고 가정 해 봅시다.모든 프레임에서 작업하기 (FlashPunk/AS3)

내 예제 코드는 다음과 같습니다

package 
{ 
    import net.flashpunk.World; 
    import net.flashpunk.utils.Input; 

    public class MainWorld extends World 
    { 
     public function MainWorld() 
     { 
      trace("world started"); 
     } 
     override public function update():void 
     { 
      if (Input.mousePressed) add(new blargEntity()); 
     } 
    } 
} 

지금, 세계의 업데이트 기능을 오버라이드 (override)에 명백한 문제가있을 : 세계가 아무것도 업데이트되지 않습니다.

모든 프레임에서 세계에서 작업 할 수있는 방법이 있습니까?

+1

당신이 요구하는 것을 이해하기 정말 어렵습니다. 기본 클래스 "World"에서 함수 "update"를 호출하는 방법을 묻는 중입니까? 그렇다면 super.update()를 호출하십시오. –

+0

매 프레임마다 super.update()가 실행됩니까? 내 진짜 질문은 마우스를 누르거나 필요한 기능을 재정의하지 않고 모든 프레임을 어떻게 세계적인 수준으로 체크 할 수 있는지입니다. 혼란을 드려 죄송합니다. –

+1

'update' 함수가 정상적으로 프레임 당 한번 실행된다면,'super.update()'는 의도 한대로 동작하게하여 오버라이드 된'update()'함수에 새로운 기능을 추가 할 수 있습니다. 그래서 네,'super.update()'를 추가하고 살펴 봅니다. – Vesper

답변

1

당신은과 같이() 호출 super.update을 추가해야합니다 :

override public function update():void 
    { 
     if (Input.mousePressed) add(new blargEntity()); 
     super.update(); 
    }