2015/07/10(金) [n年前の日記]
#1 [dxruby] exe化に対応すべく修正
ステージクリア時やゲームオーバー時のジングル再生はできたので、ひとまずこの段階で Ocra を使って exe化しておこうと思ったけれど、画像ファイルやサウンドファイルのパスを変換しないとあかんなと。
以下の解説ページを参考にしながらソースを修正中。
_覚え書き: ocra による Ruby の EXE 化
Image.load() を呼んでるところが結構あって、それぞれ逐一修正するのがちょっと面倒。本来はどこか一つでまとめて呼ぶようにしておいたほうがいいのだろうけど。ゲーム開始時に「Now Loading」を表示して、読み込み状態を表示したほうが…。
以下の解説ページを参考にしながらソースを修正中。
_覚え書き: ocra による Ruby の EXE 化
- 環境変数 OCRA_EXECUTABLE が存在する場合は Ocra で exe化したものを実行してる状態だから、OCRA_EXECUTABLE からディレクトリ部分だけを取り出して、各データファイルのパスに反映させる。
- 件の環境変数が存在しない場合は *.rb を実行してる状態だから、$0 からディレクトリ部分だけを取り出して、各データファイルのパスに反映させる。
if (ENV.key?("OCRA_EXECUTABLE")) # Ocraでexe化したものを実行してる時に通る処理 exe_path = ENV['OCRA_EXECUTABLE'] exe_dir = File.expand_path(File.dirname(exe_path)) else # Rubyで.rbを実行してる時に通る処理 exe_dir = File.expand_path(File.dirname($0)) endこんな感じだろうか…。
Image.load() を呼んでるところが結構あって、それぞれ逐一修正するのがちょっと面倒。本来はどこか一つでまとめて呼ぶようにしておいたほうがいいのだろうけど。ゲーム開始時に「Now Loading」を表示して、読み込み状態を表示したほうが…。
[ ツッコむ ]
以上です。