スプライトを下端まで移動させる

説明

スプライトを下端まで移動させるにはスプライトにaddEventListener()を使ってEvent.ENTER_FRAMEイベントが発生したら移動処理を行う関数(イベントハンドラ)を呼び出します。関数内では下端に達していない場合のみスプライトのy座標に1を加算します。画面の縦幅(下端のY座標)はnew Game()として生成したオブジェクトのheightプロパティに入っています。また、スプライトの縦幅も考慮する必要があります。スプライトの縦幅はスプライトのheightプロパティに入っています。

サンプル サンプルを実行データをダウンロード


■HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Sample game</title>
<style>
body { margin: 0; }
</style>
<script src="js/enchant.min.js"></script>
<script src="js/main.js"></script>
</head>
<body></body>
</html>
■JavaScript (main.js)
enchant(); // ライブラリの初期化
window.onload = function(){
// 320×240ピクセルサイズの画面(Canvas)を作成
var game = new Game(320, 240);
// フレームレートの設定。15fpsに設定
game.fps = 15;
// 画像データをあらかじめ読み込ませる
game.preload("images/fighter.png");
// データの読み込みが完了したら処理
game.onload = function(){
var fighter = new Sprite(32, 32);
fighter.image = game.assets["images/fighter.png"];
fighter.x = 100;
fighter.y = 0;
game.rootScene.addChild(fighter);
// フレームイベントが発生したら処理
fighter.addEventListener(Event.ENTER_FRAME, function(){
// 下端まで到達していない場合にY座標を加算
if (fighter.y+fighter.height < game.height){
fighter.y = fighter.y + 1;
}

});
}
game.start(); // ゲーム処理開始
}
目次に戻る