当我反复更新 FlxSprite 的 alpha 以使其淡出时,我发生了一些奇怪的事情。而不是需要 150 秒才能完全淡出(我实际上想要 15 秒),它可能会在 2 秒内淡出。我尝试追踪实际的 alpha 值,当 alpha 值在 0.95 左右(95% 的不透明度,即略微透明)时,精灵是不可见的。
有谁知道我怎样才能让 alpha 在 Flixel 中正常工作?
override public function update():void {
lifespan += FlxG.elapsed;
if (lifespan > 3) {
alpha = (1 - ((lifespan - 3) / 150)); // <--- this line
}
if (alpha < 0.01) {
State.s.remove(this, true);
}
super.update();
}