Re: [問題] 最近在做一個射擊小遊戲
在生成子彈的時後用滑鼠座標當作方向
砲台名為turret,子彈名為bullet,speed為子彈速度
var dx:Number = _xmouse - turret._x;
var dy:Number = _ymouse - turret._y;
var length:Number = Math.sqrt(dx * dx + dy * dy);
//設定子彈速度X與Y分量
//(dx, dy)是方向向量,除以length是為了使其成為單位向量(長度1)
//單位向量乘以speed即成為長度為speed的向量(這就是你要的速度向量)
bullet.vx = speed * (dx / length);
bullet.vy = speed * (dy / length);
//把子彈push到子彈陣列bullets
bullets.push(bullet);
在主迴圈裡面用子彈自己的速度來更新位置
speed代表子彈的速度參數,是一個主迴圈內一個子彈的移動長度
for (var i:Number = 0; i < bullets.length; i++) {
bullets[i]._x += bullets[i].vx;
bullets[i]._y += bullets[i].vy;
}
以上code未經過測試,可能有打錯字
--
CJ Cat = Croa'J Cat = Cockroach Cat = 西街凱特 = 蜚蠊貓 = 蟑螂貓
Blog http://cjcat.blogspot.com
Gallery http://cjcat2266.deviantart.com
ptt2 Board CJWorkshop - 阿多比閃光(Adobe Flash)研討區
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.33.163
推
05/29 17:13, , 1F
05/29 17:13, 1F
→
05/29 17:13, , 2F
05/29 17:13, 2F
推
05/29 17:44, , 3F
05/29 17:44, 3F
討論串 (同標題文章)
Flash 近期熱門文章
PTT數位生活區 即時熱門文章