enchant.jsにおけるキー追加

enchant.js ゲーム制作 Tips – キーボードでプレイヤーを移動させてみよう!! 斜め移動にも対応してるよん♪
HTML5 enchant.js クラス定義・キー操作

enchant.js でのキーボード入力がトレンドらしいので便乗してみます。
というかcloudpackさんのところの記事への返歌。
つぶやきに返信もらってしまったので。

cloudpackさんのところの記事では以下の一文追加するだけでcの入力状態を取得できるかのように書かれていますが、これだけではダメです。
  game.keybind(67, 'c');

gameに'cbuttondown'と'cbuttonup'のふたつのイベントを登録し、その中でgame.input['c']の値を変更してやらなくちゃいけません。

  game.addEventListener('cbuttondown', function(e) {
   if (!game.input['c']) game.input['c'] = true;
   game.currentScene.dispatchEvent(e);
  });
  game.addEventListener('cbuttonup', function(e) {
   if (game.input['c']) game.input['c'] = false;
   game.currentScene.dispatchEvent(e);
  });

ちなみにこれも片手落ち。
これだけだと'inputchange'と'inputstart'の2つのイベントが発生しません。
enchant.js の中のぞくと変数cの値で判断してるんですが……まぁがんばってください(w

ワンワン キャッチボール」の拡張では'inputchange'と'inputstart'は必要なかったので今回私は無視しました。
まぁそこいらはおいおい……

それでは今日はここまで。