int search_smoke(){
for(int i=0;i<SMOKE_MAX;i++){
if(smoke[i].f==0)
return i;
}
return -1;
}
void smoke_enter(){
int i,t;
for(t=0;t<MYMISSILE_MAX;t++){
if(mymissile[t].f==1){
if((i=search_smoke())!=-1){
smoke[i].f=1;
smoke[i].x=mymissile[t].x-15;
smoke[i].y=mymissile[t].y-15;
}
}
}
}
void smoke_calc(){
for(int i=0;i<SMOKE_MAX;i++){
if(smoke[i].f==1){
smoke[i].y+=1;
if(smoke[i].x<FIELD_MIN_X-60||smoke[i].x>FIELD_MAX_X+60||smoke[i].y<FIELD_MIN_Y-60||smoke[i].y>FIELD_MAX_Y+60){
smoke[i].f=0;
}
}
}
}
void effect_main(){
smoke_enter();
smoke_calc();
}
このようにしてミサイルの煙を表現すると
ミサイルが通った瞬間に煙が出てくるのでかぶってしまいます。
そこで1,2フレーム遅らせて表示したいのですが
どうすればいいのでしょう?