このWikiは古くなりました:新しいWikiへ移動


//METHOD
[[PlainChar]]に戻る

[[PlainChar.crashToLine]] - オブジェクトと線分の衝突判定を行います。




**書式

 crashToLine(sx,sy,dx,dy,width,xx,yy) 
     
:sx| 始点のx座標

:sy| 始点のy座標

:dx| 終点のx座標

:dy| 終点のy座標

:width|  線分の幅

:xx(省略可能)| 判定する点のx座標。省略するとオブジェクトのxの値

:yy(省略可能)| 判定する点のy座標。省略するとオブジェクトのyの値




**戻り値

(sx,sy)と(dx,dy)を結ぶ、幅がwidthドットの線分と点(xx,yy)がぶつかっていれば
真(0でない値)。そうでなければ偽 (0)


 

''※''  (sx,sy)と(dx,dy) が一致してしまうとエラーになります


**例1
  
 //------LineRoll.tonyu-----
 extends SpriteChar;
 a=0;
 while (1) {
   sx=x+cos(a)*100;
   sy=y+sin(a)*100;
   drawLine(x,y,sx,sy,$clWhite);
   update();
   a+=rnd(10);
 }
 //--end of LineRoll.tonyu-----
 //---- Jiki.tonyu-----
 extends SpriteChar;
 while(1) {
  if (getkey(39)>0) x+=3;
  if (getkey(37)>0) x-=3; 
  if (getkey(40)>0) y+=3;
  if (getkey(38)>0) y-=3;
  if (crashToLine($LineRoll.x,$LineRoll.y,$LineRoll.sx,$LineRoll.sy,10)) {
    die();
  }
  update();
 }
 //---- end of Jiki.tonyu-----

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS