弾がそのまま直進した時に進むルートと敵に向かって直進した時に進むルートの
間の角度を求めてホーミングさせようとしています
現在のコードはこんな感じです
bsにはボス・enには敵のポインタが入っていて、ここには異常が無いことをデバッグモードで確認しています
どうして間の角度が正確に出ないのか教えてください
void HomingShot::Move(){
this->cnt++;
float A=0;
if(en!=NULL){
if(en->GetUsed()==FALSE)en=NULL;
}
if(bs!=NULL){
if(bs->GetUsed()==FALSE)bs=NULL;
}
if(bs!=NULL){
pt_t pt0={this->x,this->y};
pt_t pt1={this->x+cos(this->a)*this->sp,this->y+sin(this->a)*this->sp};
pt_t rpt={this->bs->GetX(),this->bs->GetY()};
A=Get_Sita(pt0,pt1,rpt);
this->a+=A;
}else if(en!=NULL){
pt_t pt0={this->x,this->y};
pt_t pt1={this->x+cos(this->a)*this->sp,this->y+sin(this->a)*this->sp};
pt_t rpt={this->en->GetX(),this->en->GetY()};
A=Get_Sita(pt0,pt1,rpt);
this->a+=A;
}else{
//this->UpDateEnemy();
}
this->x+=cos(this->a)*this->sp;
this->y+=sin(this->a)*this->sp;
if(cnt > 120)delete this;
}