8方向
Re:8方向
弾の移動でしょうか?
それとも、自機の移動でしょうか?
一応、両方書きます。
まず、自機の移動から書きます。
キーが押されている角度を求めます。int KeyAngle();//キーの押された角度を求める関数を作る
その後、#define RAD (3.14159265/180)と定義して、
x+=cos(KeyAngle*RAD)*speed;
y-=sin(KeyAngle*RAD)*speed;
とすれば、okです。
弾の移動は、
上、右上、右、右下、下、左下、左、左上とあるのですが、
それぞれ、移動角度を
90°45° 0° 315° 270°225°180°135°とし、
テーブルを作ります。int angle[8]={90,45,0,315,270,225,180,135};
x+=cos(angle[UPRIGHT)*RAD)*speed;
y-=sin(angle[UPRIGHT)*RAD)*speed;
とすればokです。分かりにくい点がありましたら、返信ください。
それとも、自機の移動でしょうか?
一応、両方書きます。
まず、自機の移動から書きます。
キーが押されている角度を求めます。int KeyAngle();//キーの押された角度を求める関数を作る
その後、#define RAD (3.14159265/180)と定義して、
x+=cos(KeyAngle*RAD)*speed;
y-=sin(KeyAngle*RAD)*speed;
とすれば、okです。
弾の移動は、
上、右上、右、右下、下、左下、左、左上とあるのですが、
それぞれ、移動角度を
90°45° 0° 315° 270°225°180°135°とし、
テーブルを作ります。int angle[8]={90,45,0,315,270,225,180,135};
x+=cos(angle[UPRIGHT)*RAD)*speed;
y-=sin(angle[UPRIGHT)*RAD)*speed;
とすればokです。分かりにくい点がありましたら、返信ください。