#define functions
int main(){
int movex=getLocal("movex");
int movey=getLocal("movey");
int life=getLocal("life");
int explode=getLocal("explode");
setLocal("life",life+1);
setX(getX()+movex);
setY(getY()+movey);
if(explode>0)
explode(life,explode);
while(getCollidedCount()>0&&explode==0){
if(collidedType()==1){
int s=collidedWith();
String type=getLocal(s,"type");
if(type!="mine"&&type!="player"&&type!="bullet"){
messageSprite(s,"damage",10);
setLocal("explode",life);
}
}
nextCollided();
}
if(life>35&&explode==0){
setLocal("explode",life);
}
if(getMessageCount()>0){
if(getFlag()=="explode"){
setLocal("movex",0);
setLocal("movey",0);
setLocal("explode",life);
setFrame(2);
}
nextMessage();
}
}
int explode(int life,int explodestart){
if(life<explodestart+3){
playSound(61);
setFrame(2);
}else if(life<explodestart+6){
setFrame(3);
}else if(life<explodestart+9){
setFrame(4);
}else if(life<explodestart+12){
setFrame(5);
}else if(life<explodestart+15){
setFrame(6);
}else if(life<explodestart+18){
setFrame(7);
}else {
destroySprite();
}
}