예제 #1
0
 public virtual void DrinkTypeEffect(DrinkName name)
 {
     if (name == DrinkName.NOTHING)
     {
         return;
     }
     else if (DrinkWanted == name)
     {
         forceLiving = true;
     }
 }
예제 #2
0
        static IOrderedDrink MakeCoffee(CupSize CupSize, DrinkName DrinkName)
        {
            // Cupsize decides how much water we need.
            // but CupSize is a property of the drink order
            var sizes = GetMeasures(CupSize, DrinkName);

            BoilWater(3000);
            var grnds = GrindBeans(sizes.Item1);

            return(null);
        }
예제 #3
0
 public override void Setup(AEvent _event, Recipe recipe)
 {
     base.Setup(_event, recipe);
     drinkName = recipe.DrinkName;
     radius    = 3; //yolo hard code
     foreach (var item in GetComponents <SphereCollider>())
     {
         if (item.isTrigger == true)
         {
             sphereColider = item;
             break;
         }
     }
 }
예제 #4
0
    // Use this for initialization
    protected virtual void Start()
    {
        print("ADrunk start");
        nav           = GetComponent <NavMeshAgent>();
        actionList    = new List <ActionEnum.ActionData>();
        actionMethode = new Dictionary <ActionEnum.Action, Action>();
        actions       = new List <AAction>();
        comportement  = gameObject.GetComponent <AIComportement>();

        /*foreach(CapsuleCollider col in gameObject.GetComponents<CapsuleCollider>())
         * {
         *  if (!col.isTrigger)
         *      collider = col;
         * }*///maybe later, was use to disable the collider when AI fall

        animations = (AAnimation)Activator.CreateInstance(Type.GetType(AnimationClassName));
        animations.Initialize(this);

        foreach (string s in ActionClassName)
        {
            actions.Add((AAction)Activator.CreateInstance(Type.GetType(s)));
            actions[actions.Count - 1].Initialize(this);
        }

        actionMethode.Add(ActionEnum.Action.ActionDone, ActionDone);
        actionMethode.Add(ActionEnum.Action.Walk, SetDirection);
        actionMethode.Add(ActionEnum.Action.GetBottle, GetBottle);
        actionMethode.Add(ActionEnum.Action.ThrowBottle, ThrowBottle);
        actionMethode.Add(ActionEnum.Action.Hide, Hide);
        actionMethode.Add(ActionEnum.Action.Sit, Sit);
        actionMethode.Add(ActionEnum.Action.Leave, Leave);
        actionMethode.Add(ActionEnum.Action.Kick, Kick);
        actionMethode.Add(ActionEnum.Action.Slip, Slip);
        actionMethode.Add(ActionEnum.Action.Stun, Stun);
        actionMethode.Add(ActionEnum.Action.BottleStrick, BottleStrick);
        actionMethode.Add(ActionEnum.Action.Dance, Dance);
        actionMethode.Add(ActionEnum.Action.Drink, Drink);
        actionMethode.Add(ActionEnum.Action.Dart, Dart);
        actionMethode.Add(ActionEnum.Action.Fire, Fire);

        walking         = false;
        anim            = false;
        bottle          = null;
        destination     = null;
        forceActionDone = false;
        DrinkWanted     = DrinkName.NOTHING;
        forceLiving     = false;

        animator.SetFloat("alcool", alcool);
    }
예제 #5
0
 public override void DrinkTypeEffect(DrinkName name)
 {
     if (name == DrinkName.NOTHING)
     {
         return;
     }
     else if (DrinkWanted == name)
     {
         numberOfTequila--;
     }
     if (numberOfTequila == 0)
     {
         forceLiving = true;
     }
 }
예제 #6
0
 void IMainPage.ReadyForNewDrink()
 {
     DrinkName.Text = string.Empty;
     DrinkName.Focus();
 }
예제 #7
0
 public override string ToString()
 {
     return(OrderedQuantity.ToString().PadLeft(4) + " " + DrinkName.PadRight(33) + Payable().ToString().PadLeft(10) + " Ft");;
 }
예제 #8
0
 public override void Setup(AEvent _event, Recipe recipe)
 {
     base.Setup(_event, recipe);
     drinkName = recipe.DrinkName;
 }
예제 #9
0
 public override string ToString()
 {
     return(OrderedQuantity.ToString().PadLeft(4) + " " + DrinkName.PadRight(33) + Payable().ToString().PadLeft(10) + "Ft");
     //PadLeft and PadRight methods only work with Consolas and Courier fonts.
 }
    public int shake;//0-100

    public Recipy(DrinkName drinkNameIN, Dictionary <Ingredient, int> ingredientsIN, int shakeIN)
    {
        drinkName   = drinkNameIN;
        ingredients = ingredientsIN;
        shake       = shakeIN;
    }
예제 #11
0
        private static Tuple <List <CoffeeBeans>, MilliLitres> GetMeasures(CupSize cupSize, DrinkName drinkName)
        {
            if (drinkName == DrinkName.Espresso)
            {
                switch (cupSize)
                {
                case CupSize.Shot:
                case CupSize.Small:
                    return(Tuple.Create(new List <CoffeeBeans> {
                        { new CoffeeBeans() }, { new CoffeeBeans() }
                    }, new MilliLitres(75)));

                case CupSize.Large:
                    return(Tuple.Create(new List <CoffeeBeans> {
                        { new CoffeeBeans() },
                        { new CoffeeBeans() },
                        { new CoffeeBeans() }
                    }, new MilliLitres(150)));

                default:
                    throw new ArgumentOutOfRangeException("Unknown Size!");
                }
            }
            else
            {
                switch (cupSize)
                {
                case CupSize.Small:
                    return(Tuple.Create(new List <CoffeeBeans> {
                        { new CoffeeBeans() },
                        { new CoffeeBeans() }
                    }, new MilliLitres(400)));

                case CupSize.Medium:
                    return(Tuple.Create(new List <CoffeeBeans> {
                        { new CoffeeBeans() },
                        { new CoffeeBeans() }
                    }, new MilliLitres(500)));

                case CupSize.Large:
                    return(Tuple.Create(new List <CoffeeBeans> {
                        { new CoffeeBeans() },
                        { new CoffeeBeans() },
                        { new CoffeeBeans() }
                    }, new MilliLitres(500)));

                default:
                    throw new ArgumentOutOfRangeException("Unknown Size!");
                }
            }
        }