private void OnTriggerEnter2D(Collider2D c) { Collider2D collider = c; GameObject gameobj = collider.gameObject; Vector3 position = gameobj.transform.position; string tag = gameobj.tag; if (tag == "coin") { // collect the coin CoinController coin_controller = gameobj.GetComponent <CoinController>(); if (!coin_controller.has_been_collected) { level_controller.UpdateCoins(); coin_controller.has_been_collected = true; coin_controller.SetSpriteToBlink(); gameobj.GetComponent <Animator>().SetBool("has_been_collected", true); } } else if (tag == "enemy") { // hit the enemy if (rb.velocity.y < 0) { // bonk them in the head Vector3 temp = rb.velocity; temp.y = 1.2f * jump_speed; rb.velocity = temp; is_jumping = true; is_falling = true; gameobj.GetComponent <Animator>().Play("Squash"); } else if (!IsInvulnerable()) { // get hit by the enemy level_controller.UpdateLives(-1); SetInvulnerable(true); } } }