void OnCollisionEnter(Collision col) { if (collied) { return; } if (col.transform.tag == "ball") { if (col.transform.position.y <= transform.position.y) { Destroy(gameObject); } } if (col.transform.tag == "Player") { player_movment p = GameObject.FindGameObjectWithTag("Player").GetComponent <player_movment>(); if (p.is_avliable()) { p.set_player(this.get_player_from_ball()); Destroy(gameObject); } else { pass_ball(2.2f); return; } } if (col.transform.tag == "floor") { //Debug.logger.Log("info", "adding ball place" + this.pos_index.ToString()); //Debug.logger.Log("info", "adding ball color" + (this as ColoredBall).ball_color.ToString()); pass_ball(1.2f); } }
public override void shoot() { player_movment player_mov = m_player.GetComponent <player_movment>(); float position_x = player_mov.position.position_values[player_mov.get_player_index()]; Vector3 fin_pos = new Vector3(position_x, m_player.transform.position.y - 2f); GameObject g = (GameObject)GameObject.Instantiate(m_ball.gameObject, fin_pos, Quaternion.identity); g.GetComponent <Ball>().pos_index = player_mov.get_player_index(); g.GetComponent <Ball>().ball_index = m_ball.ball_index; g.GetComponent <Ball>().collied = true; jar_system j = GameObject.FindGameObjectWithTag("MainCamera").GetComponent <jar_system>(); j.add_ball(g.GetComponent <Ball>(), player_mov.get_player_index()); }