Download List

Project Description

jgame.jsはオープンソースのHTML5向け2dゲームフレームワークです。

MITライセンスなので、商用非商用を問わずご自由にご利用いただけます。

動作はjavascriptですが、製作はtypescriptで行われているため、typescriptライブラリともいえます。

enchant.jsよりも少し使いにくく結構高速なライブラリとなることを目標としています。

詳しくはサンプルをご覧ください。

http://jgame-js.sourceforge.jp/

System Requirements

System requirement is not defined

Released at 2013-08-03 17:00
jgame-js jgame.js 2.1 (1 files Hide)

Release Notes

TypeScriptで作られたHTML5用2dゲーム向けフレームワーク、jgame.jsの2.1です。

2.0からいくつかの不具合の修正、不要なインターフェースの削除などを行っています。

Changelog

1. Trigger.handleInsertのowner引数を省略可能に修正
2. ScriptResourceLoaderはスクリプトの同時読み込みを取りやめ、事前に指定されたスクリプトの読み込みが終わるまで次のスクリプトは読まない形に修正
依存ライブラリを事前に読み込む際などに都合が悪かったため
3. メインループのexit判定位置を修正。旧来の位置ではJavaScriptでconfirmなどを表示→_exitフラグを立てる→メインループの最後の一回が実行されるため。
逆にこの最後の1回を期待して処理を書いている場合には不具合が出る副作用はあるが、修正のメリットの方が大きいと判断。
4. Trigger.fireにおいて、イベントハンドラのコピー処理をfor文によるコピーからArray.concatによるコピーに変更。FireFoxでは2倍程度、Chromeで1.3倍程度速度上昇が見込める模様
5. Layerを継承したクラスをサポートするため、Scene.createLayerの第二引数でLayerのインスタンスを受け取った場合はそのまま使うように変更
6. E.isUpdateとE.reflectedは速度低下するだけなので廃止。直接isUpdatedフィールドを見る形にした
7. JGUtil.intersectで1ピクセル余分に判定していたのを修正
8. E.show、E.hideでupdatedを内部的に呼ぶように修正
9. Tileクラスにclearメソッドを追加。空のマップが作れるように
10. Game.disablePointHandler、Game.disableKeyboardHandlerを追加。enablePointHandlerなどを2回以上呼び出しても平気なようになった他、ゲーム中でキー入力を無効化するなどにも対応
11. Tile.getChipsを追加し、Tileが管理しているマップチップをSprite配列でとれるように。マップエディタなどの用途用
12. Tile.drawChipを追加。今までTileを一箇所でも書き換えるとすべて作り直さないといけなかったが、マップエディタなどの用途には耐えられないためこのメソッドを通して部分書き換えが出来るように。
13. minifiedファイルやd.tsファイルを出力するビルド処理をbuild/以下に生成
14. Timeline.execを廃止。enchant.jsではシノニムを許容しているようだが、jgame.jsでは基本的に同一の意味を持つ別名メソッドは排除する
15. Game.exitを廃止しGame.endに一本化
16. GameTimer.fireイベントのパラメータを直近の経過時間から、GameTimerクラスのインスタンスに修正
17. window.randomインターフェースを削除
18. Tile.refreshでupdatedを行うように修正
19. Trigger.removeでハンドル順が変わる問題を修正。またTriggerのテストプログラムを追加
20. TypeScriptがjsdoc形式のコメントに対応したので、最低限を記述
21. JGUtil.transposeを追加。二次元配列のx, y入れ替え
22. Tile.generateの第二引数または第四引数にtrueを指定するとJGUtil.transposeを呼ぶように修正