public class MonoBehaviourLifeCycleMethods : MonoBehaviour
{
// Unity MonoBehaviour üzenet metódusok (Van ezen kívül több is...)
// Ezeket a Unity automatikusan hívja bizonyos események hatására
// a Scene-ben lévő komponenseken.
void Awake() {} // Ha a GameObject létrejön
// Minden Awake garantáltan lefut az első Start lefutása előtt
void OnEnable() {} // Ha a GameObject aktiválódik
// Minden OnEnable garantáltan lefut az első Start lefutása előtt
// Awake és OnEnable metódusban nem javasolt más skriptek public metódusait hívni.
// (Lehet, hogy valami még nem lett inicializálva) Ezt inkább végezzük Start-ban.
void Start() {} // Ha a GameObject elindul
// Minden Start garantáltan lefut az első Update lefutása előtt
// It hívhatunk más szkripteket is.
void OnDisable() {} // Ha a GameObject deaktiválódik
void OnDestroy() {} // Ha a GameObject törlődik
// Ciklikus:
void Update() {} // Minden képernyőfrissítés előtt lefut
void FixedUpdate() {} // Rögzített időközönként lefut
void LateUpdate() {} // Minden képernyőfrissítésnél lefut
// Minden Update lefut az első LateUpdate lefutása előtt
// Egyszeri (nem folyamatos) input műveleteket (mint pl.: GetKeyDown)
// mindig az Update-ben vagy LateUpdate-ben kérj le, ne a FixedUpdate-ben!
// Ha egy váltzás sebességét állítod (pl.: Gyorsuló mozgás)
// Mindig használj FixedUpdate-et!
// Pozíció módosítást javasolt az Update-ben végezni.
// Ütközés és Trigger-ek 3D-ben
void OnTriggerEnter(Collider other) {} // Ha egy Trigger-rel ütközik
void OnTriggerStay(Collider other) {} // Ha egy Trigger-ren belül maradt
void OnTriggerExit(Collider other) {} // Ha egy Trigger-ből kilép
void OnCollisionEnter(Collision other) {} // Ha egy Collider-rel ütközi
void OnCollisionStay(Collision other) {} // Ha egy Collider-en belül marad
void OnCollisionExit(Collision other) {} // Ha egy Collider-ből kilép
// Ütközés és Trigger-ek 2D-ben
void OnTriggerEnter2D(Collider2D other) {} // Ha egy 2D Trigger-rel ütközik
void OnTriggerStay2D(Collider2D other) {} // Ha egy 2D Trigger-ren belül maradt
void OnTriggerExit2D(Collider2D other) {} // Ha egy 2D Trigger-ből kilép
void OnCollisionEnter2D(Collision2D other) {} // Ha egy 2D Collider-rel ütközi
void OnCollisionStay2D(Collision2D other) {} // Ha egy 2D Collider-en belül marad
void OnCollisionExit2D(Collision2D other) {} // Ha egy 2D Collider-ből kilép
// Egér
void OnMouseEnter(){} // Egér fölé ért
void OnMouseOver(){} // Egér fölötte áll
void OnMouseExit(){} // Egér elhagyta
void OnRightMouseDown(){} // Egér rátattintott
void OnRightMouseDrag(){} // Egér odébbhúzta
void OnRightMouseUp(){} // Egér felengedte
// A "Stay"-t tartalmazó metódusok a FixedUpdate-ekkel együtt hívódik meg.
// Cask editor metódusok:
void OnValidate() { } // Ha az Inspector beállításait vagy a kódot megváltoztatjuk
void OnDrawGizmos() { } // Itt tudunk Gizmokat rajzolgatni
void OnDrawGizmosSelected() { } // Itt tudunk Gizmokat rajzolgatni,
// amikor az objektum ki van választva
}