public override void OnTouch(Entity e, bool isCollider, bool isBlockingMovement, bool isDirectCollision, bool isTouching) { KoopaShellController c = (controllerStack.Peek() as KoopaShellController); Player p = e as Player; if (p != null) { if (c.isStill()) { timeUntilReinc = REINCARNATION_TIME; c.DoSlide(position.X - e.position.X); } else { timeUntilReinc = REINCARNATION_TIME; c.DoSlide(position.X - e.position.X); p.DoDeath(this); } } else if (e is Mob) { if (!c.isStill()) { if (e is KoopaShell) { KillLater(); } (e as Mob).KillLater(); } } }
// Use this for initialization void Start() { koopaShellController = koopaShellScript.GetComponent <KoopaShellController>(); koopaShellParent = GetComponentInParent <Rigidbody2D>(); colliderTop = GetComponent <Collider2D>(); spriteRendererParent = GetComponentInParent <SpriteRenderer>(); }
void Start() { koopaShellController = koopaShellScript.GetComponent <KoopaShellController>(); colliderForce = GetComponent <Collider2D>(); spriteRendererParent = GetComponentInParent <SpriteRenderer>(); }