/// <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; } } }
public OnConsumeBeerAction(BeerCase beer) { beerCase = beer; }