21日目 Unity 関数の中で他のスクリプトの関数を呼び出したいとき
お久しぶりです( ´∀` ) (誰も見てない)
本日は関数の受け渡しについて復習したいと思います。
例えば、、
public PlayerManager player;
public EnemyManager enemy;
void Start()
{
player.Attack(enemy);
enemy.Attack(player);
}
スクリプトB(PlayerManager)
public int at;
public void Attack(EnemyManager enemy) //関数の中でさらにEnemyManagerの中の関数を使う
{
enemy.Damage(at); //PlayerManagerのatをEnemyManagerのDamageメソッドに渡す
}
こういうスクリプトがあるとします。
スクリプトBの関数の中でAで設定した他のメソッドを使うといった場合ですね。
まずはAの中でBのスクリプトを貼ったゲームオブジェクトを取得します。
あとはBの関数の引数を受け取る部分で、(EnemyManager enemy)このように関数ごと受け取ってしまいましょう!
スクリプトを3つ使用するという少し入り組んだ構造になっていますが、スクリプトAを中心に考えると分かりやすくなるかと思います。
勉強時間合計:34h