DXRubyとtmxライブラリを使った地形アタリ処理のサンプル
2013/12/25
書いた人 : mieki256
概要
マップエディタ Tiled Map Editor の保存フォーマット(.tmx)を読み込んで、DXRubyで表示します。
地形アタリ判定や補正処理も行います。
必要なもの
- Windows
- Ruby
- DXRuby
- tmx - RubyGems.org
tmxライブラリのインストール方法
gem install tmx
サンプル - BGマップの表示
実行方法
ruby mapdisp.rb
もしくは、
mapdisp.exe
を実行。
操作説明
- カーソルキー : カーソル移動
- WASDキー : スクロール
- Bキー : BGアタリと複数BGの表示切替
- Hキー : ぶら下がり棒をアタリとして見るか見ないかを切替
- ESCキー : 終了
補足:
- カーソルが赤くなったら、地形と当たってます。
- 地形と当たった際に、補正座標を示すカーソルが出ます。
- 水色のカーソルが、床と天井補正。
- 黄色のカーソルが、壁補正
サンプル - プレイヤーキャラの移動
実行方法
ruby playermove3.rb
もしくは、
playermove3.exe
を実行
操作説明
- カーソル左右キー : プレイヤーキャラ移動
- Zキー : ジャンプ
- Bキー : BGアタリと複数BGの表示切替
- ESCキー : 終了
空中でもジャンプできます。
同梱ファイルについての説明
- dxrbtmx.rb ... tmxをDXRubyで扱うBGマップデータに変換するクラス
- bgatari.rb ... BGアタリ処理担当クラス
- bg_atari_test.tmx ... tmxファイル(Tiled保存ファイル形式)
- bg_attari.png ... BGマップ用画像(1タイル16x16ドット)
- player_512x256_64x64.png ... 64x64ドットのプレイヤーキャラ画像
- player.png ... 80x80ドットのプレイヤーキャラ画像
- mapdisp.rb ... BGマップ表示サンプルスクリプト
- mapdisp.exe ... mapdisp.rb の実行形式ファイル(ocraでexe化)
- playermove3.rb ... プレイヤーキャラ移動サンプルスクリプト(ジャンプ機能有)
- playermove3.exe ... playermove3.rb の実行形式ファイル(ocraでexe化)
- playermove1.rb ... プレイヤーキャラ移動サンプルスクリプト(床補正のみ)
- playermove1_bug1.rb ... プレイヤーキャラ移動サンプルスクリプト(床補正のみ。斜め床移動バグつき)
- playermove2.rb ... プレイヤーキャラ移動サンプルスクリプト(床補正と壁補正)
- playermove2_bug.rb ... プレイヤーキャラ移動サンプルスクリプト(床補正と壁補正。壁補正バグつき)
dxrbtmx.rb、bgatari.rb 内の各メソッドやプロパティについては、 ドキュメントを作成しましたので、そちらを参照してください。 以下がドキュメントです。
ドキュメント作成方法
YARDを使うと便利です。
yardoc dxrbtmx.rb bgatari.rb
上記を実行すると、doc/ フォルダを作って、 その中に htmlドキュメントを生成してくれます。
また、readme.md がフォルダの中にあると、 その内容を index.html に反映してくれます。
License
rbファイル、tmxファイル、pngファイル は Public Domain です。
.tmx、.png も、mieki256 が自作したファイルですので、 安心して御自由にお使いください。
tmxライブラリ は、Shawn Anderson, Franklin Webber 氏の作で、MIT License です。