title: Cannot use InvokeRepeating with method parameters. How do I work around this?
body: <p>I'm trying to implement a damage over time system, but Unity keeps saying "Trying to Invoke method...Couldn't be Called." The method I want to call uses the parameters "Collider coll", but from my research you can't invoke if the method has said paremters.</p>
  
  <p>Here is my code:</p>
  
  <pre><code>using UnityEngine;
  using UnityEngine.SceneManagement;
  using System.Collections;
  
  public class DamageOverTime : MonoBehaviour
  {
  
      public int PHP; //PHP = Player Health from PlayerHealth.cs script.
      public int Damage; //Amount of damage.
      public int DamageOverTime; //Damage over time.
      public float DamageInterval_DOT = .25f; //Damage interval for damage over time.
      public string Level;
      PlayerHealth player;
  
      void Start()
      {
          player = GameObject.Find("Player").GetComponent&lt;PlayerHealth&gt;();
          InvokeRepeating("OnTriggerEnter", DamageInterval_DOT, DamageInterval_DOT);
      }
  
      void Update()
      {
          PHP = GameObject.Find("Player").GetComponent&lt;PlayerHealth&gt;().PlayerHP;
  
          if (PHP &lt;= 0)
          {
              SceneManager.LoadScene(Level);
          }
  
      }
  
      void OnTriggerEnter(Collider coll)
      {
          if (coll.gameObject.tag == "Player")
          {
              GameObject.Find("Player").GetComponent&lt;PlayerHealth&gt;().PlayerHP = PHP - Damage;
          }
  
          if (coll.gameObject.tag == "Ball")
          {
              gameObject.SetActive(false);
              SceneManager.LoadScene(Level);
          }
      }
  }
  </code></pre>
  
  <p>My goal is to get the OnTriggerEnter function to loop ever 1/4 of a second (or lower possibly). Current upon entering a collider my health is drained by 60% in about a second which is far too fast. How should I work around this?</p>