嗨,我一直试图让这个系统根据火力的数量来确定发射子弹的数量。
所以我创建了一个 switch 语句,它将允许它采用以前的子弹创建点并随着火力的增加添加新的点。问题是我不知道如何计算未使用的数字。我尝试使用默认值,但后来我意识到,因为我把它放在顶部,它会通过更高的火力子弹升级而没有达到那个数字。
有没有办法让它在选择值时执行某些操作?(请记住,我确实希望仍然使用原始子弹升级)我能想到的唯一其他方法是嵌套许多不同的 if 或 else 语句。那会是这样吗
我的代码:
switch(firePower){
case 30:
for(int i = -4; i <=4; i++){
Bullet a = new Bullet((int)playerx,(int)playery+i,-i);
bullet.add(a);
}
case 15:
for(int i = -2; i <=2; i++){
Bullet a = new Bullet((int)playerx,(int)playery+i,-i);
bullet.add(a);
}
case 4:
Bullet h = new Bullet((int)playerx, (int)playery-10, 0);
Bullet i = new Bullet((int)playerx, (int)playery-12, 0);
bullet.add(h);
bullet.add(i);
case 3:
Bullet f = new Bullet((int)playerx, (int)playery-6, 0);
Bullet g = new Bullet((int)playerx, (int)playery-8, 0);
bullet.add(f);
bullet.add(g);
case 2:
Bullet d = new Bullet((int)playerx, (int)playery+4, 0);
Bullet e = new Bullet((int)playerx, (int)playery-4, 0);
bullet.add(d);
bullet.add(e);
case 1:
Bullet b = new Bullet((int)playerx, (int)playery+2, 0);
Bullet c = new Bullet((int)playerx, (int)playery-2, 0);
bullet.add(b);
bullet.add(c);
case 0:
Bullet a = new Bullet((int)playerx, (int)playery, 0);
bullet.add(a);
break;
}