POINT idou_koki(POINT koki) //子機の中心座標を移動します { int a,b; a=koki.x; //現在の座標を一時保存 b=rand()%400-200; //-200〜200 a+=b; //仮想的に移動 if(a>=window.right || a<0) koki.x-=b; //ウィンドウから出ないようにする else koki.x+=b; a=koki.y; b=rand()%400-200; a+=b; if(a>=window.bottom || a<0) koki.y-=b; else koki.y+=b; return koki; //移動後の座標を返す } POINT draw_koki(int w_koki,int h_koki,int r_koki,int koki_l,int koki_s,POINT* koki) //描画に必要な座標を設定します { int wl_koki,ws_koki,hl_koki,hs_koki; wl_koki=koki_l*w_koki/r_koki; //長辺のx軸方向の大きさ ws_koki=koki_s*h_koki/r_koki; //短辺のx軸方向の大きさ koki[0].x=koki[4].x+wl_koki/2-ws_koki/2; //koki[4]は既に移動済みなので koki[1].x=koki[0].x-wl_koki; koki[2].x=koki[1].x+ws_koki; koki[3].x=koki[2].x+wl_koki; hl_koki=koki_l*h_koki/r_koki; //長辺のy軸方向の大きさ hs_koki=koki_s*w_koki/r_koki; //短辺のy軸方向の大きさ koki[0].y=koki[4].y+hl_koki/2+hs_koki/2; //koki[4]は既に移動済みなので koki[1].y=koki[0].y-hl_koki; koki[2].y=koki[1].y-hs_koki; koki[3].y=koki[2].y+hl_koki; return *koki; //子機(各機)を描画する為の座標を返す