dポイントプレゼントキャンペーン実施中!

これってどういう意味でしょうか?

bool isDead;





public bool IsDead ()
{
return isDead;
}

IsDead()メソッドを実行した時呼び出し元にisDeadの値を返すという意味ですか?
つまりtrueが入っていたらtrueを返してfalseが入っていたらfalseを返す?
入っていなければ何を返すんですか?


// 死亡したら常に下を向く
if (isDead)
{
targetAngle = -90.0f;
}

if文の判断の仕方の意味が分からないです。もしisDeadならtargetのアングルを-90度にするってどうゆう事ですか?

void OnCollisionEnter2D (Collision2D collision)
{
if (isDead) return;

これもif文の判断の仕方の意味が分からないです。


// 何かにぶつかったら死亡フラグをたてる
isDead = true;
}

ここでtrueになってisDeadがif文に反応するようになるって事ですか?

case State.Play:
// キャラクターが死亡したらゲームオーバー
if (azarashi.IsDead()) GameOver();
break;

メソッドをif文の中に入れていますがどういう事ですか?

A 回答 (2件)

>IsDead()メソッドを実行した時呼び出し元にisDeadの値を返すという意味ですか?


その通りです

>つまりtrueが入っていたらtrueを返してfalseが入っていたらfalseを返す?
その通りです

>入っていなければ何を返すんですか?
bool型の初期値であるfalseがかえります

>if文の判断の仕方の意味が分からないです。もしisDeadならtargetのアングルを-90度にするってどうゆう事ですか?

そのまんまです
isDeadの値がtrueなら、targetAngleの値に -90.0fが入ります


>if (isDead) return;
>これもif文の判断の仕方の意味が分からないです。

isDeadがtrueならreturnします


>// 何かにぶつかったら死亡フラグをたてる
>isDead = true;
>ここでtrueになってisDeadがif文に反応するようになるって事ですか?

あなたのいうif文が上記のif (isDead) return;の行のことであれば違います。
プログラムは上から下へと処理されるので、
ここではisDead にtrueが代入されるだけです。
ただし、この後にif文が判断されれば、trueの処理が行われます



>if (azarashi.IsDead()) GameOver();
>メソッドをif文の中に入れていますがどういう事ですか?
IsDead()の返す値がtrueならGameOver()が処理されます

if文の中にはプロパティや式だけではなく、値を返すメソッドを書くことができます。
if文は中に式やメソッドがtrueかfalseかを判別してその後の処理を行う命令です。
    • good
    • 0

https://oshiete.goo.ne.jp/qa/11239293.html
でも指摘されてるけど, Unity とは関係なく「C# の理解」が十分でないだけのような気がする.

例えば「if文の判断の仕方の意味が分からない」って書いてるけど, if文の「判断」は
その条件が true か false か
というだけですよ.
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!