AS3如何缩短这段代码?

时间:2011-06-27 23:54:51

标签: actionscript-3

我正在做一些事情,我在那里有一些大量的代码:

if(contents.x>-199 && contents.x<-1) {
    mcPosX = 0;
} else if(contents.x>-399 && contents.x<-201) {
    mcPosX = -200;
} else if(contents.x>-599 && contents.x<-401) {
    mcPosX = -400;
} else if(contents.x>-799 && contents.x<-601) {
    mcPosX = -600;
} else if(contents.x>-999 && contents.x<-801) {
    mcPosX = -800;
} else if(contents.x>-1199 && contents.x<-1001) {
    mcPosX = -1000;
} else if(contents.x>-1399 && contents.x<-1201) {
    mcPosX = -1200;
} else if(contents.x>-1599 && contents.x<-1401) {
    mcPosX = -1400;
} else if(contents.x>-1799 && contents.x<-1601) {
    mcPosX = -1600;
} else if(contents.x>-1999 && contents.x<-1801) {
    mcPosX = -1800;
} else if(contents.x>-2199 && contents.x<-2001) {
    mcPosX = -2000;
} else if(contents.x>-2399 && contents.x<-2201) {
    mcPosX = -2200;
} else if(contents.x>-2599 && contents.x<-2401) {
    mcPosX = -2400;
} else if(contents.x>-2799 && contents.x<-2601) {
    mcPosX = -2600;
} else if(contents.x>-2999 && contents.x<-2801) {
    mcPosX = -2800;
} else {
    //mcPosX = contents.x;
}

基本上我有一个很长的动画片段(比舞台宽很多),当你拖动它时它会捕捉到某些点,具体取决于屏幕上显示的部分。

我觉得这部分很长,我正在努力提高我的AS3。这可以缩短/改进吗?

1 个答案:

答案 0 :(得分:1)

很难确切地确定你要做什么,但我认为这可能会帮助你朝着正确的方向前进:

mPos.x -= (Math.floor(contents.x / 200) * 200);