◾️関数というかUnityとC#の基本的な話
スクリプトはクラスの定義を書いたもので、Playerスクリプトも開くとクラス
クラスは細かい話を抜くと、変数と関数の二つの要素しかない

public class Player なんとかかんとか {
int hp; //変数
GameObject target; //変数
void Update() { //関数
条件満たしたらattack();
}
void attack(){ //関数
//ターゲットしているモンスターにダメージを渡す
target.GetCompornent<モンスターのスクリプト>().damaged(int damage);
}
}

public class Monster なんとかかんとか {
int hp;
int 防御;
public void damaged(int damage){
ダメージ計算してhpから減らす処理

  if (hp <= 0){
Instanciateでアイテムをドロップ
    自分自身をDestroy
}
}
}

こんな風に相手の関数を呼び出したり、自分で関数を使ったりしてるだけ
ここまでOK?