2012-01-19 11 views
0

間隔で動的コンテンツを追加する際に問題があります。コンテンツは画面に追加されていますが、X位置とトゥイーンは完全にシンクから外れているようです。AS3:奇妙な時間に動的に追加されたコンテンツが追加される

以下は、間隔が100ミリ秒の場合のスクリーンショットです。アプリケーションは200ミリ秒で動作する必要があります(エラーは明瞭ではありませんが、行はまだ時々刻々と閉じており、おおよそ4番目ごとです)。

Error

分かるように、位置決めの間に明確な相違があります。それは少数のために残っています、そして変更、そして再び変化し、そしてそれはそれがどんなものに戻って最後に戻っています。ここで

このセクションを制御する私のコードです:

function XYZ(){ 
Score = 90 
var timeBefore = Score 

if(timeBefore <= 2.4){ 
    timeBefore = 2.5 
    Score = "2.5" 
} 
else if(timeBefore > 75){ 
    timeBefore = 2.5 
    Score = "2.5" 
} 

trace(timeBefore) 
var signInterval:uint = setInterval (addThis, 100); 
var finishInterval:uint = setInterval (checkThis, timeBefore*200); 
MCArray.push(signInterval), MCArray.push(finishInterval) 
} 

function addThis(){ 
    trace("Adding this!") 
    timeElap++ 
    var floorNum:sign = new sign 
    //floorNum.visible = false 
    floorNum.y = 325 
    floorNum.x = 0 - floorNum.width 
    floorNum.dtf_num.text = timeElap+"" 
    addChildAt(floorNum, 1) 
    trace(stage.stageWidth+floorNum.width) 
    trace(floorNum.width) 
    TweenMax.to(floorNum, 1.5, {x:stage.stageWidth+floorNum.width, ease:Linear.easeNone}) 
    floorSigns.push(floorNum) 
} 

この現象が発生する原因となっているものについての任意のアイデアをお持ちの方は?

注:200ミリ秒と300ミリ秒で発生しますが、それほど顕著ではありません。

答えて

1

setInterval()およびsetTimer()はそれほど正確ではありません。彼らは、せいぜい、あなたが機能を実行したい時のAVMを示唆しています。 Here is a articleはJavaScriptについてですが、actionscriptにも適用されます。

アーキテクチャと、問題に近づいている方法を変更する必要があります。 ENTER_FRAMEハンドラを作成してから、getTimer()を使用して、どれだけの時間が経過したか、作成/配置およびスケジュールを設定する必要があるかどうかを判断します。

関連する問題