ブラウザ上でゲーム開発を行える「Code.9leap.net」,β版サービスが始まる
これにあたり、「code.9leapカスタム・チュートリアルチャレンジ!」というコンテストが開催されました。
っということで、私もチャレンジしてみようと思います!
私がenchant.jsで最初に悩んだところは画面遷移でした。
ということで、そのあたりのチュートリアルを作ってみました 。
ゲームの基本「タイトル画面 → プレイ画面 → エンド画面」の流れを簡単に説明しています。
かっしぃの日々のメモ帳です。 気づいたことや思ったこと、プログラミングのコツ、 最近気になることなどをメモしてます。 Twitter http://twitter.com/kassy708
<script type="text/javascript" src="enchant.js"></script>
<!-- プラグイン読み込み -->
<script type="text/javascript" src="Box2dWeb-2.1.a.3.js"></script>
<script type="text/javascript" src="PhySprite.enchant.js"></script>
//物理シミュレーションの世界を設定(y軸方向に重力 9.8[m/s^2])
physicsWorld = new PhysicsWorld(0, 9.8);
//ボール生成
var phyBall = new PhyCircleSprite(8, DYNAMIC_SPRITE, 1.0, 0.5, 0.2, true);
phyBall.image = game.assets["icon1.png"];
phyBall.position = { x: 160, y: 10 };
game.rootScene.addChild(phyBall); // シーンに追加
//床生成
var floor = new PhyBoxSprite(256, 16, STATIC_SPRITE, 1.0, 0.5, 0.3, true);
floor.image = game.assets["floor.gif"];
floor.position = { x: 160, y: 300 };
game.rootScene.addChild(floor);
//毎フレーム処理
game.rootScene.addEventListener(enchant.Event.ENTER_FRAME, function (e) {
physicsWorld.step(game.fps); //物理シミュレーション内の時間を進める
});
PhyBoxSprite(width, height, staticOrDynamic, density, friction, restitution, isSleeping);
PhyCircleSprite(radius, staticOrDynamic, density, friction, restitution, isSleeping);
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, user-scalable=no">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<title>PhySprite demo</title>
<script type="text/javascript" src="enchant.js"></script>
<!-- プラグイン読み込み -->
<script type="text/javascript" src="Box2dWeb-2.1.a.3.js"></script>
<script type="text/javascript" src="PhySprite.enchant.js"></script>
<script type="text/javascript">
enchant();
window.onload = function () {
var game = new Game(320, 320);
game.fps = 24;
game.preload("icon1.png", "floor.gif");
game.rootScene.backgroundColor = "black";
game.onload = function () {
//物理シミュレーションの世界を設定(y軸方向に重力 9.8[m/s^2])
var physicsWorld = new PhysicsWorld(0, 9.8);
//ボール生成
var phyBall = new PhyCircleSprite(8, DYNAMIC_SPRITE, 1.0, 0.5, 0.2, true);
phyBall.image = game.assets["icon1.png"];
phyBall.position = { x: 160, y: 10 };
game.rootScene.addChild(phyBall); // シーンに追加
//床生成
var floor = new PhyBoxSprite(256, 16, STATIC_SPRITE, 1.0, 0.5, 0.3, true);
floor.image = game.assets["floor.gif"];
floor.position = { x: 160, y: 300 };
game.rootScene.addChild(floor);
game.rootScene.addEventListener(enchant.Event.ENTER_FRAME, function (e) {
physicsWorld.step(game.fps); //物理シミュレーション内の時間を進める
});
};
game.start(); // ゲームスタート
}
</script>
<style type="text/css">
body
{
margin: 0px;
}
</style>
</head>
<body>
</body>
</html>
現在地の天気がそのまま能力となるゲーム。晴れの日は攻撃力アップ・曇りの日は防御力アップ。全国のその日の天気を参照しているので、自分との相性を考えて敵に戦いを挑むことも…。外に出なくても気温や風の強さが分かるのもポイントかもw @kassy708さんには、賞品「GPS内蔵デジタルカメラ カシオ EX-H20G」を差し上げます。おめでとうございます!
今回の優秀賞は「まねまねしょーぶ!」です。GPSチャレンジに引き続き二連覇となりました。数字や文字と違って、ポーズを覚えるのは実はなかなか難しい!まずは遊んでみてください。
優秀賞を受賞されたkassy708さんには、「Canon PowerShot G12、コミPo! ダウンロード版および素材集」をお送りします。
“9leap”とは、プログラマを目指す学生からJavaSprictベースのスマホ向けゲームを募集するコンテストで、期間は2011年5月~12月 と長期間に渡って行われている。審査は2011年5月~8月までの前期、9月1日から12月31日までの後期に分けられていて、それぞれの期間で優秀作品 を発表。受賞作品の開発者には、賞品として最新モデルのMacBook ProまたはMacBook Airが贈呈される。ファミ通Appより
前期後期を通じてもっとも高い評価を得た3作品に最優秀賞が贈られ、受賞作品開発者3名は2012年3月5日から9日にかけて開催予定の世界最大のゲー ム開発者会議“Game Developers Conference”の視察旅行に無料で参加できるほか、IGDA日本の主催するイベントに登壇できる権利も得ることができる内容だ。
「万人に受け入れられそうで、加速度センサーを使った操作も簡単。かつ、グラフィックの美しさを評価しました」(宝珠山氏)ということでした。
「9leap」は、若いプログラマーの育成と、文化としてのプログラミングの普及を目的として株式会社ユビキタスエンターテインメントと 株式会社ディーツーコミュニケーションズが共催する、JavaScriptベースのスマートフォン向けオリジナルゲームのコンテストです。 コンテストは5月1日から8月31日までの前期と9月1日から12月31日ま での後期に分かれており、それぞれの期間で優秀作品の発表を行います。 受賞作品の開発者には、賞品として最新モデルのMacBook ProまたはMacBook Airのほか、最優秀賞受賞者にはアメリカのサンフランシスコで行われる「Game Developers Conference」への視察旅行ツアーなど、豪華賞品が用意されています。http://9leap.net/info/aboutより