Exemple #1
0
        /// <summary>
        /// Constructor.
        /// </summary>
        public Pickupable(GameObject go)
        {
            gameObject = go;
            rigidbody  = go.GetComponent <Rigidbody>();

            // Determine pickupable subtype by GameObject name.
            if (gameObject.name == "Sausage-Potatoes(Clone)")
            {
                new PubFood(gameObject);
                return;
            }

            // Determines pickupable subtype by FSM contents.
            PlayMakerFSM[] fsms = go.GetComponents <PlayMakerFSM>();
            foreach (PlayMakerFSM fsm in fsms)
            {
                // Consumable.
                if (fsm.Fsm.GetState("Eat") != null || fsm.Fsm.GetState("Eat 2") != null)
                {
                    new Consumable(gameObject);
                    objectType = SubType.Consumable;
                    break;
                }
                // Shopping bag.
                else if (fsm.Fsm.GetState("Initiate") != null && fsm.Fsm.Name == "Open")
                {
                    new ShoppingBag(gameObject);
                    objectType = SubType.ShoppingBag;
                    break;
                }
                // Beer case.
                else if (fsm.Fsm.GetState("Remove bottle") != null)
                {
                    beerCaseSubType = new BeerCase(gameObject);
                    objectType      = SubType.BeerCase;
                    break;
                }
            }
        }
Exemple #2
0
 public OnConsumeBeerAction(BeerCase beer)
 {
     beerCase = beer;
 }