public override void ProcesarColisionConElemento(Elemento elemento) { if (elemento.GetTipo().Equals(Olla)) { //Le coloca la misma posicion que tiene el fuego pero sobre su altura elemento.posicion(posicion() + new Vector3(0, BoundingBox().PMax.Y - BoundingBox().PMin.Y, 0)); //Agrega el elemento a su lista agregarElemento(elemento); } if (elemento.GetTipo().Equals(Alimento)) { if (elementosQueContiene().Count > 0) { //Por el momento asumimos que esta cocinando si tiene un elementos foreach (var elem in elementosQueContiene()) { if (elem.GetTipo().Equals(Olla)) { elem.ProcesarColisionConElemento(elemento); } } } } }
public override void ProcesarColisionConElemento(Elemento elemento) { if (elemento.GetTipo().Equals(Alimento)) { if (!elementosQueContiene().Contains(elemento)) { //Le coloca la misma posicion que tiene la olla pero sobre su altura elemento.posicion(posicion() + new Vector3(0, 25, 0)); agregarElemento(elemento); elementoCoccion = elemento; tiempoCoccion = 0; progresoCoccion = new BarraEstado(new Vector3(BoundingBox().PMin.X, BoundingBox().PMax.Y, BoundingBox().PMax.Z), BoundingBox().PMax, TiempoCoccionElementos()); } } }