2011/10/04(火) [n年前の日記]
#1 [prog] マップデータを切り離し中
今まで、Rubyソース中に直接、配列の形でマップデータを書いていたのだけど。ちと面倒になってきた。
変換スクリプトを実行する際に、本来のソースの中にいきなり埋め込んでしまうやり方もありそうだけど、将来的に、そこそこちゃんと作るなら、データとソースは分けておいたほうがいいだろうと思えてきた。大体にして、ステージがいくつも増えてきたら管理が面倒臭い。絶対に間違えて、置換してはいけない部分を上書きしてしまいそう。
ということで、スクリプト実行時にマップデータファイルを読み込むようにしてみようと。変換スクリプトを修正してcsvファイルっぽい形で出力するようにして。ソレを試しに読み込んでみるテストスクリプトを書いていたり。しかし、多次元配列を生成するあたりでハマってしまった。どう書けばいいのやら。
それはともかく。Ruby の場合も Python っぽく、puts "0x%02x, %d, %s" % [127, 200, "文字列"] みたいな書き方が出来たのだな…。ずっと sprintf() を使ってた。
- Tiled Qt 上でマップデータを修正して
- Rubyスクリプトを実行してテキストデータの形に変換して
- エディタでコピーして
- 本来のソースに貼り付けて
変換スクリプトを実行する際に、本来のソースの中にいきなり埋め込んでしまうやり方もありそうだけど、将来的に、そこそこちゃんと作るなら、データとソースは分けておいたほうがいいだろうと思えてきた。大体にして、ステージがいくつも増えてきたら管理が面倒臭い。絶対に間違えて、置換してはいけない部分を上書きしてしまいそう。
ということで、スクリプト実行時にマップデータファイルを読み込むようにしてみようと。変換スクリプトを修正してcsvファイルっぽい形で出力するようにして。ソレを試しに読み込んでみるテストスクリプトを書いていたり。しかし、多次元配列を生成するあたりでハマってしまった。どう書けばいいのやら。
それはともかく。Ruby の場合も Python っぽく、puts "0x%02x, %d, %s" % [127, 200, "文字列"] みたいな書き方が出来たのだな…。ずっと sprintf() を使ってた。
[ ツッコむ ]
以上です。