enchant(); // enchant.js呼び出し
window.onload = function(){
var game = new Game(320 , 320);
game.preload('chara6.png');
// バラモスクラスの定義
var Baramos = function(){
this.monstername = "バラモス";
this.nigechi = 0;
this.attack = function(lv){
if(lv < 20 ){
return "通常攻撃。ダメージ10";
}else{
return "イオナズン。ダメージ150";
}
};
// 追加箇所。バラモスのグラフィック
var tmpspr = new Sprite(32,32);
tmpspr.image = game.assets['chara6.png'];
tmpspr.scaleX=2;
tmpspr.scaleY=2;
tmpspr.frame=4;//前向きで目が光ってるやつ
tmpspr.x = 320/2 - 32/2; // 画面サイズとキャラサイズから中心を割り出す
tmpspr.y = 180 - 32*2/1.3; // 文字は180の位置下に出る。空白があるので単純計算しづらい...
this.sprite = tmpspr;
};
// スライムクラスの定義
var Slime = function(){
this.monstername = 'スライム';
this.nigechi = 30;
this.attack = function(lv){
return 'ぽよんっ。ダメージ1';
};
// 追加箇所。スライムのグラフィック
var tmpspr = new Sprite(32,32);
tmpspr.image = game.assets['chara6.png'];
tmpspr.scaleX=2;
tmpspr.scaleY=2;
tmpspr.frame=1;//ちょっと潰れてるやつ
tmpspr.x = 320/2 - 32/2; // 画面サイズとキャラサイズから中心を割り出す
tmpspr.y = 180 - 32*2/1.5; // 文字は180の位置下に出る。空白があるので単純計算しづらい...
this.sprite = tmpspr;
};
// 実際の画面表示
game.onload = function(){
// 勇者の定義
var level = 10; // 勇者のレベル。
var d = new Date(); // Randomだと再現が面倒くさいので秒で動きが変わるようにする
var second = d.getSeconds(); // 現在秒を取り出す
// ラベル表示の定義
var msgLabel = new Label();
msgLabel.x = 7; // 若干右よりのほうが収まりが良かったので...
msgLabel.y = 180;
msgLabel.textAlign = 'center';
msgLabel.text = ""; // 空白にしておく
// モンスターに出会う。
// 出会った場合;どのモンスターに遭うか決める
// →遭遇を伝えるメッセージと、敵グラフィックを設定
var enemy; // この変数に遭遇するモンスターのオブジェクトを入れる
if(second > 30 ){
enemy = new Slime();// 現在秒が30秒以降ならスライムに遭遇
}else{
enemy = new Baramos(); // それ以外ならバラモスに遭遇
}
// 遭遇を伝えるメッセージ
msgLabel.text = msgLabel.text + enemy.monstername + 'に出会った
';
game.rootScene.addChild(msgLabel);
// 敵グラフィックを設定
game.rootScene.addChild(enemy.sprite);
// 出会った時の動作
// ここではとにかく逃げてみる。
// →成功した場合は成功メッセージを、失敗した場合はそのままペナルティへ
if(enemy.nigechi > 50){ // 敵の逃げ値51以上は必ず逃げられる
msgLabel.text = msgLabel.text + '逃げ成功
';
} else if( (enemy.nigechi > 30) && (second % 2 == 1) ) {
// 逃げ値が50以下30超えの値の場合、かつ、現在秒が奇数の場合
msgLabel.text = msgLabel.text + 'なんとか逃げ成功
';
} else { // 他のケース = 逃げられなかった
msgLabel.text = msgLabel.text + '逃げられなかったorz
';
// 攻撃を食らうペナルティ
msgLabel.text = msgLabel.text + enemy.attack(level);
}
// メッセージを設定
game.rootScene.addChild(msgLabel);
};
game.start();
};