[英]Modulus between positive and negative number
我正在使用 EaselJS/CreateJS 開發一個簡單的游戲,其中一部分需要以選取框的方式在屏幕上為精靈設置動畫。
http://jsfiddle.net/gRoberts/af6xr8u4/
從上面可以看出,下面的代碼計算了從0到舞台寬度+圖標寬度的x位置。
icon.x = ((icon.x + w)-deltaS*50) % w;
這使它從屏幕開始,出現,然后一旦達到 0,再次啟動。
有沒有辦法將這個計算調整到超過 0 到圖標的寬度,所以它會是 -128(圖標寬度)到 448(舞台 + 圖標寬度)?
謝謝 :)
icon.x = -icon.width + (((icon.x + icon.width + w) - deltaS * 50) % w)
我試過這個值,
icon.x = -icon.tileW + ((icon.x + w + 2 * icon.tileW) - deltaS * 50) % (w + icon.tileW);
因為負偏移將其移動到正確的位置,並且作為模數的附加值提供了移動的空間。 此外,您需要兩倍的寬度,因為在開始和結束時都需要這些值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.