/// <summary> /// <para>Desequipar</para> /// </summary> /// <param name="item">Objeto</param> public void Desequipar(Equipable item) // Desequipar { item.OnDesequipar(); item.slots = SlotsEquipo.None; item.transform.SetParent(transform); items.Remove(item); this.EnviarNotificacion(DesequipadoNotificacion, item); }
/// <summary> /// <para>Equipar</para> /// </summary> /// <param name="item">Nuevo Objeto</param> /// <param name="slots">Slot</param> public void Equipar(Equipable item, SlotsEquipo slots) // Equipar { Desequipar(slots); items.Add(item); item.transform.SetParent(transform); item.slots = slots; item.OnEquipar(); this.EnviarNotificacion(EquipadoNotificacion, item); }
/// <summary> /// <para>Obtiene un item</para> /// </summary> /// <param name="slots">Slot</param> /// <returns></returns> public Equipable GetItem(SlotsEquipo slots) // Obtiene un item { for (int n = items.Count - 1; n >= 0; n--) { Equipable item = items[n]; if ((item.slots & slots) != SlotsEquipo.None) { return(item); } } return(null); }
/// <summary> /// <para>Desequipar</para> /// </summary> /// <param name="slots">Slot</param> public void Desequipar(SlotsEquipo slots) // Desequipar { for (int n = items.Count - 1; n >= 0; n--) { Equipable item = items[n]; if ((item.slots & slots) != SlotsEquipo.None) { Desequipar(item); } } }
/// <summary> /// <para>Obtiene el poder del arma equipada</para> /// </summary> /// <returns></returns> private int PoderArmaEquipada() // Obtiene el poder del arma equipada { int power = 0; Equipamiento eq = GetComponentInParent <Equipamiento>(); Equipable item = eq.GetItem(SlotsEquipo.Primaria); CaracteristicaModificadorStat[] features = item.GetComponentsInChildren <CaracteristicaModificadorStat>(); for (int i = 0; i < features.Length; i++) { if (features[i].tipo == TipoStats.ATK) { power += features[i].valor; } } return(power); }