AS3을 처음 사용하므로 바보 같은 질문이 있으면 용서해주세요.AS3 : else 문을 어떻게 단축 할 수 있습니까?
if else 문을 작성하려고하는데 꽤 길지만 필요한 항목의 1/5에 불과합니다. 나는이 패턴을 확실히 보았고, 루프를 작성하고 싶다.
하지만 머리를 감쌀 수없는 것 같습니다. 누군가 나를 도울 수 있습니까?
if(all_mc.x<-1 && all_mc.x>-panelWidth+1) {
mcPosX = 0;
} else if(all_mc.x<-panelWidth-1 && all_mc.x>-panelWidth*2+1) {
mcPosX = -panelWidth;
} else if(all_mc.x<-panelWidth*2-1 && all_mc.x>-panelWidth*3+1) {
mcPosX = -panelWidth*2;
} else if(all_mc.x<-panelWidth*3-1 && all_mc.x>-panelWidth*4+1) {
mcPosX = -panelWidth*3;
} else if(all_mc.x<-panelWidth*4-1 && all_mc.x>-panelWidth*5+1) {
mcPosX = -panelWidth*4;
} else if(all_mc.x<-panelWidth*5-1 && all_mc.x>-panelWidth*6+1) {
mcPosX = -panelWidth*5;
} else if(all_mc.x<-panelWidth*6-1 && all_mc.x>-panelWidth*7+1) {
mcPosX = -panelWidth*6;
} else if(all_mc.x<-panelWidth*7-1 && all_mc.x>-panelWidth*8+1) {
mcPosX = -panelWidth*7;
} else if(all_mc.x<-panelWidth*8-1 && all_mc.x>-panelWidth*9+1) {
mcPosX = -panelWidth*8;
} else if(all_mc.x<-panelWidth*9-1 && all_mc.x>-panelWidth*10+1) {
mcPosX = -panelWidth*9;
} else if(all_mc.x<-panelWidth*10-1 && all_mc.x>-panelWidth*11+1) {
mcPosX = -panelWidth*10;
} else if(all_mc.x<-panelWidth*11-1 && all_mc.x>-panelWidth*12+1) {
mcPosX = -panelWidth*11;
} else if(all_mc.x<-panelWidth*12-1 && all_mc.x>-panelWidth*13+1) {
mcPosX = -panelWidth*12;
} else if(all_mc.x<-panelWidth*13-1 && all_mc.x>-panelWidth*14+1) {
mcPosX = -panelWidth*13;
} else if(all_mc.x<-panelWidth*14-1 && all_mc.x>-panelWidth*15+1) {
mcPosX = -panelWidth*14;
} else if(all_mc.x<-panelWidth*15-1 && all_mc.x>-panelWidth*16+1) {
mcPosX = -panelWidth*15;
} else if(all_mc.x<-panelWidth*16-1 && all_mc.x>-panelWidth*17+1) {
mcPosX = -panelWidth*16;
} else if(all_mc.x<-panelWidth*17-1 && all_mc.x>-panelWidth*18+1) {
mcPosX = -panelWidth*17;
} else if(all_mc.x<-panelWidth*18-1 && all_mc.x>-panelWidth*19+1) {
mcPosX = -panelWidth*18;
} else if(all_mc.x<-panelWidth*19-1 && all_mc.x>-panelWidth*20+1) {
mcPosX = -panelWidth*19;
}
//Tween all_mc to position
var toRightTween:TweenLite = new TweenLite(all_mc,0.5, {x:mcPosX});
mcPosX
= -panelWidth * 200!
안녕하세요. 도움을 주셔서 감사합니다. 내 코드 끝에는 트윈이 있습니다. 기본적으로'all_mc'의 위치를 감지하여 가장 가까운'panelWidth'에 트위닝하려고합니다. 귀하의 코드를 시도했을 때 항상 0으로 트위닝 된 것 같습니다. 혼란스러운 경우 사과드립니다. – muudless
이 답변을 편집했습니다. 이것이 도움이 될 것이라고 생각합니다. 그러나 당신의 "ifelse"가 작동한다면, 이것은 또한 작동해야합니다. – ymutlu