変数名で悩んでいます。分かりやすいようにポケモンで例えます。
ポケモンで戦闘中麻痺しているポケモンは攻撃時1/4で麻痺して攻撃が失敗してしまいます。(自作中のゲームでは確率は1/2です)。
そこでMonsterクラスに以下のように変数とメソッドを配置しています。
Monster
1const int PARISEPROBABILITY = 5; //麻痺率を定義 2Abnormality Abnormality; //状態異常のenum値 3 4public bool isParise() 5{ 6 if (this.Abnormality == Abnormalitys.Parise) return true; 7 return false; 8} 9 10//モンスターが麻痺状態のとき麻痺が発生するかしないか判定 11public bool pariseJudge() 12{ 13 if(UnityEngine.Random.Range(0, PARISEPROBABILITY) == 0){ 14 return true; 15 } 16 return false; 17} 18 19//攻撃時に麻痺が発生したかどうかを判定するメソッド 20public bool isAttackMissForParise() 21{ 22 bool isParise = this.isParise(); 23 bool pariseJudge = this.pariseJudge(); 24 if(isParise && pariseJudge){ 25 return true; 26 } 27 return false; 28}
悩んでいるのは変数名の
PARISEPROBABILITY
とメソッド名の
pariseJudge()
isAttackMissForParise()
です。
メソッドの中身を見なくても使い方や意味が分かるものにしたいのですがいい名前が思いつきません。知恵をお貸しいただけないでしょうか。
あの、「麻痺させる」(他動詞)の英単語は「paralyze」(または「paralyse」で、「麻痺」(名詞)なら「paralysis」、「麻痺した」(形容詞)なら「paralyzed」(または「paralysed」)です。
片仮名で書くと、「パラライズ」「パラリシス」「パラライズド」です。
無理に英語っぽい造語を作らずに、ローマ字を使うのが良いと思います。
例えば、関数mahiShiteiru() は、麻痺していたらTrue,していなかったらFalseを返すというように。
"麻痺している"という名前の関数なら、麻痺してたら真(True)が返されるだろうなと想像がつくでしょう。
日本人なら、大多数がローマ字を読めるでしょうし。
Daregadaさん Pariseという単語自体間違ってたんですね。ありがとうございます。
fumu7さん ローマ字で表現する方法もあるんですね。参考になりました。ありがとうございます。
ローマ字の問題点は、日本人しか読めないし、漢字が使えないために同音異義語がわかりにくくなって日本人にも読みにくくなることです。
日本特有の言葉でなければ翻訳ツールを使ってでも英語表記に慣れるのが後々のためにはいいのではないでしょうか。
そうでなければむしろ漢字を使う方がまだ良いように思います。
でなければ日本人としかチームを組めないし、ソースを公開したくなった時に困ります。
回答2件
あなたの回答
tips
プレビュー