对于爆炸特效的消除有个非常简单的想法,给爆炸类设置一个bool检测是否爆炸完成,初始为false在爆炸特效4图片索引处检测,如果索引为4(所有图片播放完成)那么将bool改为true
public bool isboom=false;
if(index==4)
{
isboom = true;
}
if (index == 4)//如果播放完成那么重复播放,防止索引超出界限
{
jishu = -1;
}
jishu++;//每运行一次计数器加一
index = (jishu - 1) / boomspeed;//将计数器和速度计算的结果设置成索引
然后在对象设置类中做检测将bool值为true的对象挑拣出来消除掉,具体消除方式参考子弹消除
private static List<Boom>xiaohuiboomlist=new List<Boom>();//放置需要消除的爆炸对象
private static void xiaohuiboom()//销毁爆炸特效方法
{
foreach(Boom boom in boomlist)
{
if(boom.isboom==true)
{
xiaohuiboomlist.Add(boom);
}
}
foreach(Boom boom in xiaohuiboomlist)
{
boomlist.Remove(boom);
}
}
这样子弹就消除掉了