예제 #1
0
    void CheckCoffee(Cuppa coffee)
    {
        bool  goodBitterness       = false;
        bool  goodQuantity         = false;
        float bitternessDifference = Mathf.Abs(coffee.bitterness - crit.idealBitterness);
        float quantityDifference   = Mathf.Abs(coffee.quantity - crit.idealQuantity);

        if (bitternessDifference < crit.bitternessMargin)
        {
            goodBitterness = true;
        }
        else
        {
            goodBitterness = false;
        }
        if (quantityDifference < crit.quanittyMargin)
        {
            goodQuantity = true;
        }
        else
        {
            goodQuantity = false;
        }
        if (goodQuantity && goodBitterness)
        {
            text.SetText("Good Coffee");
        }
        else
        {
            text.SetText("Shit Coffee");
        }
    }
예제 #2
0
    void AcceptCup(GameObject cup)
    {
        Cuppa           coffee = new Cuppa();
        LayerMask       layer  = 1 << 8;
        ContactFilter2D filter = new ContactFilter2D();

        filter.layerMask = layer;
        BoxCollider2D     box       = cup.GetComponent <BoxCollider2D>();
        List <Collider2D> colliders = new List <Collider2D>();

        transform.localScale = new Vector3(4, 4, 4);
        box.OverlapCollider(filter, colliders);
        foreach (Collider2D col in colliders)
        {
            if (col.GetComponent <CoffeeQuality>() != null)
            {
                CoffeeQuality quality = col.GetComponent <CoffeeQuality>();
                coffee.bitterness    += quality.bitterness;
                coffee.contamination += quality.contamination;
                coffee.quantity      += 1;
            }
            if (col.gameObject.layer == 8 || col.tag == "Cup")
            {
                Destroy(col.gameObject);
            }
        }
        coffee.bitterness    = coffee.bitterness / coffee.quantity;
        coffee.contamination = coffee.contamination / coffee.quantity;
        CheckCoffee(coffee);
        Debug.Log("bitterness " + coffee.bitterness);
        Debug.Log("Quantity " + coffee.quantity);
        transform.localScale = new Vector3(1, 1, 1);
    }