Flash的Alpha颜色值

时间:2013-09-13 10:35:15

标签: java alpha

在我的Java游戏中,我有一个名为update()的方法,每秒调用约60次。

有了这个,我每次调用时都会为颜色的alpha值加3。但是,我希望它继续添加,然后当它达到255时,开始减去,所以颜色闪烁。我怎么能做到这一点?

编辑: 我刚刚找到了解决方案。

int alpha = 0;
int alphaB = -1;

if(alpha == 255) { // check alpha doesn't exceed limit
    alpha = 250;
} else if(alpha == 0) { // check alpha doesn't go below 0
    alpha = 5;
} else {
    if(alphaB < alpha) {
        alpha += 10;
        alphaB += 10;
    } else if(alphaB > alpha) {
        alpha -= 10;
        alphaB -= 10;
    }
}

1 个答案:

答案 0 :(得分:0)

使用long保留计数器,取模数,您不必担心溢出,因为它会增加每秒60,并且您的代码需要在溢出之前运行292471208678年。

long alphacntr = 0;
....
public void update(){
alphacntr += 3;
int alpha = alphacntr%256;
....
}