public EQUIP_RESULT DoEquip(ItemArmor itemToEquip) { EQUIP_RESULT bestResult = EQUIP_RESULT.NOT_EQUIPPABLE; foreach (EntityBodyPart part in BodyParts) { EQUIP_RESULT currentResult = part.DoEquip(itemToEquip); if (currentResult == EQUIP_RESULT.EQUIPPED) { _defensepower += itemToEquip.ArmorFactor; return(currentResult); } else if (currentResult > bestResult) { bestResult = currentResult; } } return(bestResult); }
public Handler DoEquip(EntityHand hand) { ItemContainer container = hand.Item as ItemContainer; EQUIP_RESULT bestResult = EQUIP_RESULT.NOT_EQUIPPABLE; foreach (EntityContainerSlot slot in ContainerSlots) { EQUIP_RESULT currentResult = slot.DoEquip(container); if (currentResult == EQUIP_RESULT.EQUIPPED) { hand.Item = null; return(Handler.HANDLED(Statics.ItemTypeToEquipMessage[container.Type], container.NameAsParagraph)); } else if (currentResult > bestResult) { bestResult = currentResult; } } return(Handler.HANDLED(Statics.EquipResultToMessage[bestResult])); }
// result determines message to display public Handler DoEquip(EntityHand hand) { ItemArmor armor = hand.Item as ItemArmor; EQUIP_RESULT bestResult = EQUIP_RESULT.NOT_EQUIPPABLE; foreach (EntityBodyPart part in BodyParts) { EQUIP_RESULT currentResult = part.DoEquip(armor); if (currentResult == EQUIP_RESULT.EQUIPPED) { _defensepower += armor.ArmorFactor; hand.Item = null; return(Handler.HANDLED(Statics.ItemTypeToEquipMessage[armor.Type], armor.NameAsParagraph)); } else if (currentResult > bestResult) { bestResult = currentResult; } } return(Handler.HANDLED(Statics.EquipResultToMessage[bestResult])); }