拍手返事

 2011-08-11
今日は、拍手返事が2件です。
長くなったので続きからどうぞ。

> ロキ さん
アイテム合成では無理ですね。
たぶん、1つのアイテムから複数のアイテムを作りたいのだと思いますが、
それができませんので。

> ABS さん
それって競合なんですかね?

id メソッドがなくて問題になるケースってどういうものでしょう?
基本的にそれはバグだと思ってるんですけど。。。

スキル画面のような稀なケースもありますけどね。
@skill = @skill_window.skill
if @skill != nil
 @actor.last_skill_id = @skill.id
end
if @actor.skill_can_use?(@skill)
 Sound.play_decision
 determine_skill
else
 Sound.play_buzzer
end

if @actor.skill_can_use?(@skill) で @skill が nil でないかの判定が必要です。
nil だった場合は、ID 4 のスキルが使えるかを調べてしまうからです。
しかし、nil になる場合は、スキルを何も覚えていないため、
false が返ってきてブザーがなります。

このように期待した通りに動いてはいますが、
明らかに意図した動作ではないので修正されるべきだと思います。
このようにたまたま正しく動作することもありますが、
大半はエラーも出ずにおかしな動作を行うので、
そういう気がつきにくいバグをエラーで教えてくれるように
id メソッドは無い方がいいかなと思ってます。

まぁ、利用する側からすれば正しく動けば過程なんて関係ないでしょうけどね。
そういうときは、番号も振ってますし個別に取り消してもらえればと思います。

とはいえ、わからない人もいると思いますので、
配布ページの注意書きに書いておきたいと思います。
貴重なご意見ありがとうございました。
コメント




 

 ※ コメント内にURLを含めるには、バッククォート(`)をURLの直前に付け加えてください。


管理人のみ閲覧許可 [?]

トラックバック
トラックバックURL:
http://cacaosoft.blog42.fc2.com/tb.php/566-3d52acd5
≪ トップページへこのページの先頭へ  ≫
カレンダー
09 << 2017/10 >> 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -

カテゴリー
最近の記事
最近のコメント
タグクラウド

リンク