/// <summary> /// Use this for initialization /// </summary> void Start() { body = GetComponent <Rigidbody2D>(); // Wanna get a copy, not a ref. var pos = transform.position; moveMeBB = new Vector3(pos.x, pos.y, pos.z); var box = GetComponent <BoxCollider2D>(); halfHeight = box.size.y / 2.0f; halfWidth = box.size.x / 2.0f; speed = ConfigurationUtils.PaddleMoveUnitsPerSecond; frozenTimer = gameObject.AddComponent <Timer>(); if (!initializedListeners) { EventManager.AddListener(Freeze); Pickup.AddFrozenListener(Freeze); initializedListeners = true; } if (ballHit == null || freezeHit == null || speedupHit == null) { ballHit = gameObject.AddComponent <AudioSource>(); freezeHit = gameObject.AddComponent <AudioSource>(); speedupHit = gameObject.AddComponent <AudioSource>(); var holder = Camera.main.GetComponent <AudioHolder>(); ballHit.clip = holder.paddleHit; freezeHit.clip = holder.freeze; speedupHit.clip = holder.speedup; } }