2013/12/21(土) [n年前の日記]
#1 [ruby] YARDを使ってみた
YARDてのは、Rubyのスクリプトソースの中に、ある決まったフォーマットでコメントを書いておくと、そこからドキュメントを作ってくれるツール、という認識でいいのかしら。
それらしいドキュメントを出力してくれた。ありがたや。しかし、一部書き方が分からないところが。
yardoc hoge.rbてな形で実行すると、doc/ フォルダを作ってその中にhtmlでドキュメントを生成してくれる模様。
それらしいドキュメントを出力してくれた。ありがたや。しかし、一部書き方が分からないところが。
- クラス内の定数について説明を書きたい場合はどういうコメントを書けばいいのか。
- return a, b といった形で、複数の戻り値がある場合は、Array 扱いでいいのかどうか。
- 戻り値が int、Boolean、nil 等に変わる場合は、どういう書き方をすればいいのか。「@return」を複数書くらしいけど、出力されたソレが、「int, ... 」となってしまって。「int?」になる、と巷の解説ページには書いてあるのだけど。
[ ツッコむ ]
#2 [dxruby][game] 地形アタリの実験中
DXRuby + tmx で地形アタリ処理の実験中。
タイル毎の補正値を得るところまではできたのだけど、問題発生。上から下までずっと床タイルが並んでる場所で床補正をしていくと、無限ループに陥ってしまう…。上に補正する → そこにも床タイルがある → 上に補正する → 床タイルがある、を繰り返すから当たり前なんだけど。補正する回数制限をつけとかないとあかんなと。
数年前に、ドラキュラシリーズでそういうバグ映像を見かけたことを思い出したり。
件のバグは、壁の中を高速移動していくプレイヤーキャラの映像が見えた気がするので、おそらく回数制限を設けて床補正、ぐらいはしてたのではないかと想像。そうじゃないと、無限ループに入ってフリーズするはずだし。
そういう場合、どう対処すればいいんだろう…。
タイル毎の補正値を得るところまではできたのだけど、問題発生。上から下までずっと床タイルが並んでる場所で床補正をしていくと、無限ループに陥ってしまう…。上に補正する → そこにも床タイルがある → 上に補正する → 床タイルがある、を繰り返すから当たり前なんだけど。補正する回数制限をつけとかないとあかんなと。
数年前に、ドラキュラシリーズでそういうバグ映像を見かけたことを思い出したり。
- プレイヤーキャラがボス敵の上に乗れる仕様が入ってた。
- 動いてるボス敵の上に乗り続けてると、天井の中にプレイヤーキャラが押し込まれた状態になる。
- ジャンプボタン等を押して、ボス敵から離れた瞬間、おそらくは床補正が働いて…。
- BGマップの天井、壁、床の中を凄い勢いで飛び回り、まったく関係ない場所に出現しちゃう。
件のバグは、壁の中を高速移動していくプレイヤーキャラの映像が見えた気がするので、おそらく回数制限を設けて床補正、ぐらいはしてたのではないかと想像。そうじゃないと、無限ループに入ってフリーズするはずだし。
そういう場合、どう対処すればいいんだろう…。
[ ツッコむ ]
以上、1 日分です。