public void UnregisterCharacter(CharacterController character) { OrbittingRigidBody body = character.GetComponent <OrbittingRigidBody>(); planetsByCharacter.Remove(body); body.OnOrbitCenterChanged -= planetChangeDelegates[body]; planetChangeDelegates.Remove(body); }
public void RegisterCharacter(CharacterController character) { OrbittingRigidBody body = character.GetComponent <OrbittingRigidBody>(); planetsByCharacter.Add(body, null); planetChangeDelegates.Add(body, () => UpdatePlanetoid(body)); body.OnOrbitCenterChanged += planetChangeDelegates[body]; }
private void Awake() { body = GetComponent <OrbittingRigidBody>(); renderer = GetComponent <SpriteRenderer>(); trail = GetComponent <TrailRenderer>(); body.OnOrbitCenterChanged += UpdateOrbitVars; startTime = Time.time; }
void Awake() { lastShot = -shotCooldownTime; lastAttack = -attackCooldownTime; body = GetComponent <OrbittingRigidBody>(); animator = GetComponent <Animator>(); collider = GetComponent <BoxCollider2D>(); facingRight = true; }
private void Awake() { body = GetComponentInParent <OrbittingRigidBody>(); }
private void UpdatePlanetoid(OrbittingRigidBody body) { Collider2D gravityField = body.orbitCenter.GetComponent <Collider2D>(); planetsByCharacter[body] = gravityField; }