気ままなタンス*プログラミングなどのノートブック

プログラミングやRPGツクール、DTM、VOCALOIDについてのんびり書きます。

【メモ】楽しいenchant.js-part10

円弧を描くようにふわふわと飛ばす

var Hoge = enchant.Class.create(Sprite, {
  initialize: function(x, y, omega) {
    this.omega = omega * Math.PI / 180;
    this.moveSpeed = 10;

    game.addEventListener('enterframe', function(){
      // omega分だけ距離を加算し、ラジアン角を加算
      // ここでいう距離は度数のこと。
      // 度数を1°進めた場合のx座標、y座標をcos, sinで計算
      // 1°の場合
      // 1° * 3.14 / 180 = 0.017rad
      //                   ※1rad = 57.29578°
      //                   ※πrad = 180°
      //
      this.distance += this.omega;

      this.x -= this.moveSpeed * Math.cos(this.distance);
      this.y += this.moveSpeed * Math.sin(this.distance);
    });

  }
  game.rootScene.addChild(this);

});

window.onload = function() {
  // グローバルオブジェクトとして作成
  game = new Game(320, 320);
  game.fps = 24;

  hoge_list = [];

  game.onload = function() {
    // グローバルオブジェクトとして作成
    hoge = new Hoge(300, 50, 1);
    hoge2 = new Hoge(300, 170, -1);

    // ゲームフレームをキーとして、配列にオブジェクトを登録
    hoge_list[game.frame] = hoge;
    hoge_list[game.frame+1] = hoge2;
  }
}