public Coin_shape create(int starting_x)
    {
        GameObject new_coin_shape = coin_pool.get(Random.Range(0, number_of_shapes));

        new_coin_shape.transform.parent = coin_parent;

        Coin_shape coin_shape_component = new_coin_shape.GetComponent <Coin_shape>();

        coin_shape_component.x_pos = starting_x;

        new_coin_shape.transform.position = new Vector3(starting_x, new_coin_shape.transform.position.y);

        return(coin_shape_component);
    }
    // Update is called once per frame
    void Update()
    {
        if (position_to_create_coin == 0)
        {
            position_to_create_coin = new_position_to_create_coin();
        }

        int current_pos = column_creater.current_pos;

        //creating new coin
        if (current_pos > position_to_create_coin)
        {
            if (coin_creater.can_create(position_to_create_coin))
            {
                Coin_shape new_coin = coin_shape_creater.create(position_to_create_coin);
                if (current_coin)
                {
                    current_coin.next_coin = new_coin;
                }
                current_coin = new_coin;

                position_to_create_coin = new_position_to_create_coin();
            }
            else
            {
                position_to_create_coin++;
            }
        }

        //deleting coins
        if (coin_to_delete)
        {
            if (ball.transform.position.x > coin_to_delete.x_pos + deleting_range)
            {
                if (coin_to_delete.next_coin)
                {
                    Coin_shape next_coin = coin_to_delete.next_coin;
                    coin_deleter.delete(coin_to_delete);
                    coin_to_delete = next_coin;
                }
            }
        }
    }
Exemple #3
0
 public void delete(Coin_shape coin)
 {
     Destroy(coin.gameObject);
 }