0

フラッシュで簡単なゲームを作りました。タイマー、落下オブジェクト、スワイプを使用して制御されるオブジェクトが含まれています。一時停止ボタンですべてのアクティビティを停止し、再生ボタンで再開する方法はありますか。基本的にステージ全体をボタンで一時停止・再生したいです。

4

3 に答える 3

1

自動的に行う方法はありません。ゲーム全体をタイマーに基づいて (アニメーションや物理演算の場合も)、このタイマーを一時停止することができます。しかし、これはゲームの設計段階で考えなければならない機能です。ここで、すべてのムービークリップを一時停止し、リスナーをキャンセルしてENTER_FRAME、タイマーを一時停止するだけでよいと思います。

FlixelFlashPunkなどの多くのゲーム エンジンには、この機能が含まれています。

于 2013-08-26T08:23:49.033 に答える
0

FP 11.8 Beta を使用してもかまわない場合は、すべてのムービークリップを再帰的に停止する機能がネイティブに備わっています。ここでチェックしてください:

http://labs.adobe.com/technologies/flashruntimes/flashplayer/

于 2013-08-26T17:06:37.907 に答える
0

as3 でこれを行う方法は、2 つのタイマーを実行することです。1 つは常に約 500 ミリ秒で実行され、もう 1 つはゲームの速度によって変化するフレームレートで実行されます。何かのようなもの

public var speedControl:int = 15;
public var tick:Timer;

public function timers():void{
    tick = new Timer(1000/speedControl);
    tick.addEventListener(TimerEvent:TIMER,tickd);
    tick.start();
}

public function tickd(t:TimerEvent):void{
    // the timer has ticked
}

public function pause():void{
    tick.stop();
}

public function play():void{
    tick.start();
}

これはもちろんオンザフライで作成された基本的な例ですが、標準のイベント リスナーを使用して一時停止または再生ボタンを呼び出すことができます。ステージ全体がタイマーを使い果たすと、すべて停止します。私は2番目のタイマーを使用していますが、それは機能を停止して開始することはありません。あなたは本当にいくつかのことを常に実行したいのです。

于 2013-08-26T14:48:15.390 に答える