void OnCollisionEnter2D(Collision2D col) { MiniHoovers_Slime slime = col.gameObject.GetComponent <MiniHoovers_Slime>(); if (slime == null) { collideGrowCurrent = CollideGrowAmount; Vector3 normal = (Vector3)col.GetContact(0).normal; if (player.IsActionButtonPressed() && MoveSpeed > 0f) { transform.up = transform.up - normal * 2f * Vector3.Dot(transform.up, normal); r.velocity = transform.up * BounceVelocity; } else { MiniHoovers_Player player = col.gameObject.GetComponent <MiniHoovers_Player>(); if (player != null) { // Bounce away. r.constraints = RigidbodyConstraints2D.FreezeRotation; Vector3 fromPlayer = (transform.position - player.transform.position).normalized; r.velocity = fromPlayer * BounceVelocity; } else { r.velocity += col.GetContact(0).normal *BounceVelocity; } } } }
void OnTriggerEnter2D(Collider2D col) { MiniHoovers_Slime slime = col.gameObject.GetComponent <MiniHoovers_Slime>(); if (slime != null) { suckingCount++; slime.GetSucked(this, spawned); } }