public void TestMostrarCamiseta() { InicializarAvatarEditor(); Texture tex = _diccionarioTexturas.GetTextura("camisetaAzul"); _avatarEditor.MostrarArriba("camiseta", "camisetaAzul"); //Comprobar que se han ocultado o mostrado las partes del cuerpo necesarias Assert.That(_avatarEditor.camisa.activeSelf, Is.False); Assert.That(_avatarEditor.jersey.activeSelf, Is.False); Assert.That(_avatarEditor.camiseta.activeSelf, Is.True); Assert.That(_avatarEditor.brazos.activeSelf, Is.True); Assert.That(_avatarEditor.cuerpo.activeSelf, Is.False); //Comprobar que la textura de la camiseta es la correcta Assert.That(_avatarEditor.camiseta.GetComponent <Renderer>().sharedMaterial.GetTexture("_MainTex"), Is.EqualTo(tex)); }
//Metodo que carga los items de la lista recibida en el panel recibido //Tambien pone la informacion correspondiente en el item private void CargarItems(List <Item> listaItems, Transform panel, string tipo) { Sprite icono; int precio; //Crear un objeto en la UI por cada item y asignarle la informacion correspondiente for (int i = 0; i < listaItems.Count; i++) { Item aux = listaItems[i]; GameObject newItem = itemPool.GetObject(); //Obtener item a partir de la pool de items newItem.transform.SetParent(panel, false); //Hacerlo hijo del panel de su categoria //Poner sprite icono = Resources.Load <Sprite>("IconosItems/" + aux.icono); newItem.transform.Find("Icono").GetComponent <Image>().sprite = icono; //Si aun esta bloqueado, mostrar su precio if (!aux.desbloqueado) { precio = aux.precio; newItem.transform.Find("Precio").gameObject.SetActive(true); newItem.transform.Find("Precio").GetComponentInChildren <Text>().text = precio.ToString(); //Si esta bloqueado, al pulsarlo se mostrara el panel de info int id = i; //evitar closure problem de c# newItem.GetComponent <Button>().onClick.AddListener(() => itemsManager.ShowItemInfo(aux, id, tipo)); } //Si esta desbloqueado, ocultar el precio else { newItem.transform.Find("Precio").gameObject.SetActive(false); string categoria = aux.categoria; string textura = aux.textura; string mesh = aux.mesh; //Al pulsarlo, se modificara el avatar //Añadir listener que llama al metodo correspondiente al tipo de prenda switch (tipo) { case "camisetas": newItem.GetComponent <Button>().onClick.AddListener(() => avatarEditor.MostrarArriba(categoria, textura)); break; case "pantalones": newItem.GetComponent <Button>().onClick.AddListener(() => avatarEditor.MostrarAbajo(categoria, textura)); break; case "zapatos": newItem.GetComponent <Button>().onClick.AddListener(() => avatarEditor.MostrarZapatos(categoria, textura)); break; case "peinados": newItem.GetComponent <Button>().onClick.AddListener(() => avatarEditor.MostrarPelo(mesh)); break; case "ojos": //mesh = ojo base, textura = pupila newItem.GetComponent <Button>().onClick.AddListener(() => avatarEditor.MostrarOjos(mesh, textura)); break; } } } }