Search in sources :

Example 56 with Item

use of delta.games.lotro.lore.items.Item in project lotro-tools by dmorcellet.

the class TulkasItemsLoader1 method buildItems.

/**
 * Inspect loaded data items to fetch possible values in fields.
 * @param items Loaded data items.
 */
/*
  public void inspectItems(HashMap<Integer,HashMap<Object,Object>> items)
  {
    Set<String> types=new HashSet<String>();
    Set<String> classes=new HashSet<String>();
    Set<String> slots=new HashSet<String>();
    Set<String> subSlots=new HashSet<String>();
    Set<String> colors=new HashSet<String>();
    for(HashMap<Object,Object> item:items.values())
    {
      String c=(String)item.get("Class");
      if ((c!=null)&&(c.length()>0)) classes.add(c);
      String type=(String)item.get("Type");
      if ((type!=null)&&(type.length()>0)) types.add(type);
      String slot=(String)item.get("Slot");
      if ((slot!=null)&&(slot.length()>0)) slots.add(slot);
      String subSlot=(String)item.get("SubSlot");
      if ((subSlot!=null)&&(subSlot.length()>0)) subSlots.add(subSlot);
      String color=(String)item.get("Color");
      if ((color!=null)&&(color.length()>0)) colors.add(color);
    }
    // Classes: [Champion, LoreMaster, Minstrel, Hunter, RuneKeeper, Burglar,
    // Captain, Guardian, Warden]
    System.out.println("Classes: "+classes);
    // Type: [Cloak, Medium, Heavy, Light]
    System.out.println("Type: "+types);
    // Slots: [Pocket, Head, Melee Weapon, Wrist, Hand, Ear, Chest, Neck, Back,
    // Finger, Leg, Shield, Feet, Ranged Weapon, Shoulder, Rune-stone]
    System.out.println("Slots: "+slots);
    // SubSlots: [Two-handed Sword, Staff, Halberd, Heavy, Two-handed Hammer, Bow, Javelin, Two-handed Club, One-handed Hammer, Spear, Warden, One-handed Club, One-handed Mace, Crossbow, Dagger, Light, One-handed Axe, One-handed Sword, Two-handed Axe]
    System.out.println("SubSlots: "+subSlots);
    // Color: [Yellow, Purple, Orange, Teal]
    System.out.println("Color: "+colors);
  }
  */
/**
 * Build items from raw data items.
 * @param items Loaded data items.
 */
public void buildItems(HashMap<Integer, HashMap<Object, Object>> items) {
    List<Integer> keys = new ArrayList<Integer>(items.keySet());
    Collections.sort(keys);
    int nbKeys = keys.size();
    System.out.println("Min: " + keys.get(0) + ", max: " + keys.get(nbKeys - 1));
    List<Item> itemsList = new ArrayList<Item>();
    for (int i = 0; i < nbKeys; i++) {
        Integer id = keys.get(i);
        HashMap<Object, Object> data = items.get(id);
        Item item = buildItem(id, data);
        item.setIdentifier(id.intValue());
        itemsList.add(item);
    /*
      ItemsManager mgr=ItemsManager.getInstance();
      mgr.writeItemFile(item);
      System.out.println(item.dump());
      */
    // writeItemToDB(item);
    }
    File toFile = new File("itemsTulkasOld.xml").getAbsoluteFile();
    ItemXMLWriter.writeItemsFile(toFile, itemsList);
}
Also used : FixedDecimalsInteger(delta.games.lotro.utils.FixedDecimalsInteger) Item(delta.games.lotro.lore.items.Item) ArrayList(java.util.ArrayList) File(java.io.File)

Example 57 with Item

use of delta.games.lotro.lore.items.Item in project lotro-tools by dmorcellet.

the class TulkasItemsLoader2 method buildItem.

private Item buildItem(Integer id, HashMap<Object, Object> map) {
    /*
    [1879300219]={
      [1]={[1]="Thirteenth Exquisite Captain's Earring of Glittering Caves";[2]="";[3]="";[4]="";};
      [2]=85;[3]=136;[4]=5;[5]=1;
      [6]={[12]=435;[9]=161;[1]=140;[7]=184;[14]=435;};
      [14]=24;
      [15]={[1]=
          {[1]="Stalwart Captain's Jewelry of Helm's Deep";[2]="";[3]="";[4]="";};
           [2]={1879294461,1879295053,1879299996,1879300219};};};
    */
    @SuppressWarnings("unchecked") HashMap<Object, Object> map1 = (HashMap<Object, Object>) map.get(Integer.valueOf(1));
    // label US
    String name = (String) map1.get(Integer.valueOf(1));
    WeaponType weaponType = null;
    EquipmentLocation loc = null;
    // slot
    Integer locValue = (Integer) map.get(Integer.valueOf(5));
    // 5=armor piece: 12=boots, 11=leggings, 10=gauntlets, 8=cloak, 7=shoulders, 6=Head
    if (locValue != null) {
        switch(locValue.intValue()) {
            // Jewels
            case 1:
                loc = EquipmentLocation.EAR;
                break;
            case 2:
                loc = EquipmentLocation.NECK;
                break;
            case 3:
                loc = EquipmentLocation.POCKET;
                break;
            case 4:
                loc = EquipmentLocation.WRIST;
                break;
            case 5:
                loc = EquipmentLocation.FINGER;
                break;
            // Armours
            case 6:
                loc = EquipmentLocation.HEAD;
                break;
            case 7:
                loc = EquipmentLocation.SHOULDER;
                break;
            case 8:
                loc = EquipmentLocation.BACK;
                break;
            case 9:
                loc = EquipmentLocation.CHEST;
                break;
            case 10:
                loc = EquipmentLocation.HAND;
                break;
            case 11:
                loc = EquipmentLocation.LEGS;
                break;
            case 12:
                loc = EquipmentLocation.FEET;
                break;
            // Weapons/tools/class items
            case 13:
                loc = EquipmentLocation.MAIN_HAND;
                break;
            case 14:
                loc = EquipmentLocation.OFF_HAND;
                break;
            case 15:
                loc = EquipmentLocation.RANGED_ITEM;
                break;
            // Rune-stone
            case 16:
                {
                    loc = EquipmentLocation.MAIN_HAND;
                    weaponType = WeaponType.RUNE_STONE;
                }
                break;
            default:
                {
                    _logger.warn("Unmanaged loc value: " + locValue);
                }
        }
    }
    Item ret = null;
    if (TulkasConstants.isArmor(loc)) {
        Armour a = new Armour();
        // 8=armour value
        Integer armourValue = (Integer) map.get(Integer.valueOf(8));
        if (armourValue != null) {
            a.setArmourValue(armourValue.intValue());
        } else {
            _logger.warn("No armour value!");
        }
        // 7=armor type: 1=light, 2=medium, 3=heavy
        Integer armourTypeInt = (Integer) map.get(Integer.valueOf(7));
        ArmourType armourType = null;
        if (armourTypeInt != null) {
            switch(armourTypeInt.intValue()) {
                case 1:
                    armourType = ArmourType.LIGHT;
                    break;
                case 2:
                    armourType = ArmourType.MEDIUM;
                    break;
                case 3:
                    armourType = ArmourType.HEAVY;
                    break;
                default:
                    {
                        _logger.warn("Unmanaged armour type : " + armourTypeInt);
                    }
            }
        }
        armourTypeInt = (Integer) map.get(Integer.valueOf(9));
        if (armourTypeInt != null) {
            switch(armourTypeInt.intValue()) {
                case 14:
                    armourType = ArmourType.SHIELD;
                    break;
                case 15:
                    armourType = ArmourType.HEAVY_SHIELD;
                    break;
                case 16:
                    armourType = ArmourType.WARDEN_SHIELD;
                    break;
                default:
                    {
                        _logger.warn("Unmanaged armour type : " + armourTypeInt);
                    }
            }
        }
        if (loc == EquipmentLocation.BACK) {
            armourType = ArmourType.LIGHT;
        }
        if (armourType == null) {
            _logger.warn("Unknown armour type: [" + armourTypeInt + "] (name=" + name + ")");
        }
        a.setArmourType(armourType);
        ret = a;
    } else {
        Integer weaponTypeInt = (Integer) map.get(Integer.valueOf(9));
        if (weaponTypeInt != null) {
            switch(weaponTypeInt.intValue()) {
                case 1:
                    weaponType = WeaponType.ONE_HANDED_AXE;
                    loc = EquipmentLocation.MAIN_HAND;
                    break;
                case 2:
                    weaponType = WeaponType.TWO_HANDED_AXE;
                    loc = EquipmentLocation.MAIN_HAND;
                    break;
                case 3:
                    weaponType = WeaponType.ONE_HANDED_CLUB;
                    loc = EquipmentLocation.MAIN_HAND;
                    break;
                case 4:
                    weaponType = WeaponType.TWO_HANDED_CLUB;
                    loc = EquipmentLocation.MAIN_HAND;
                    break;
                case 5:
                    weaponType = WeaponType.DAGGER;
                    loc = EquipmentLocation.MAIN_HAND;
                    break;
                case 6:
                    weaponType = WeaponType.HALBERD;
                    loc = EquipmentLocation.MAIN_HAND;
                    break;
                case 7:
                    weaponType = WeaponType.ONE_HANDED_HAMMER;
                    loc = EquipmentLocation.MAIN_HAND;
                    break;
                case 8:
                    weaponType = WeaponType.TWO_HANDED_HAMMER;
                    loc = EquipmentLocation.MAIN_HAND;
                    break;
                case 9:
                    weaponType = WeaponType.ONE_HANDED_MACE;
                    loc = EquipmentLocation.MAIN_HAND;
                    break;
                case 10:
                    weaponType = WeaponType.SPEAR;
                    loc = EquipmentLocation.MAIN_HAND;
                    break;
                case 11:
                    weaponType = WeaponType.STAFF;
                    loc = EquipmentLocation.MAIN_HAND;
                    break;
                case 12:
                    weaponType = WeaponType.ONE_HANDED_SWORD;
                    loc = EquipmentLocation.MAIN_HAND;
                    break;
                case 13:
                    weaponType = WeaponType.TWO_HANDED_SWORD;
                    loc = EquipmentLocation.MAIN_HAND;
                    break;
                case 17:
                    weaponType = WeaponType.BOW;
                    loc = EquipmentLocation.RANGED_ITEM;
                    break;
                case 18:
                    weaponType = WeaponType.CROSSBOW;
                    loc = EquipmentLocation.RANGED_ITEM;
                    break;
                case 19:
                    weaponType = WeaponType.JAVELIN;
                    loc = EquipmentLocation.RANGED_ITEM;
                    break;
                // Instrument
                case 20:
                    weaponType = null;
                    loc = EquipmentLocation.RANGED_ITEM;
                    break;
                // Chisel
                case 21:
                    weaponType = null;
                    loc = EquipmentLocation.RANGED_ITEM;
                    break;
                // Riffler
                case 22:
                    weaponType = null;
                    loc = EquipmentLocation.RANGED_ITEM;
                    break;
                default:
                    _logger.warn("ID=" + id + ": unmanaged weapon type: " + weaponTypeInt.intValue());
            }
        }
        if (weaponType != null) {
            // weapon:
            Weapon w = new Weapon();
            w.setWeaponType(weaponType);
            // [10]=Min damage;
            Integer minDMG = (Integer) map.get(Integer.valueOf(10));
            if (minDMG != null) {
                w.setMinDamage(minDMG.intValue());
            }
            // [11]=Max damage;
            Integer maxDMG = (Integer) map.get(Integer.valueOf(11));
            if (maxDMG != null) {
                w.setMaxDamage(maxDMG.intValue());
            }
            // [12]=DPS;
            Object dpsValue = map.get(Integer.valueOf(12));
            if (dpsValue instanceof Float) {
                w.setDPS(((Float) dpsValue).floatValue());
            } else if (dpsValue instanceof Integer) {
                w.setDPS(((Integer) dpsValue).floatValue());
            }
            // Damage type
            DamageType type = null;
            Integer damageTypeInt = (Integer) map.get(Integer.valueOf(13));
            if (damageTypeInt != null) {
                switch(damageTypeInt.intValue()) {
                    case 1:
                        type = DamageType.COMMON;
                        break;
                    case 2:
                        type = DamageType.BELERIAND;
                        break;
                    case 3:
                        type = DamageType.WESTERNESSE;
                        break;
                    case 4:
                        type = DamageType.ANCIENT_DWARF;
                        break;
                    case 5:
                        type = DamageType.FIRE;
                        break;
                    case 6:
                        type = DamageType.LIGHT;
                        break;
                    case 7:
                        type = DamageType.LIGHTNING;
                        break;
                    case 8:
                        type = DamageType.FROST;
                        break;
                }
            }
            if (type == null) {
                type = DamageType.COMMON;
                _logger.warn("Unmanaged damage type [" + damageTypeInt + "]");
            }
            w.setDamageType(type);
            ret = w;
        }
        if (ret == null) {
            ret = new Item();
        }
    }
    // Name
    ret.setName(name);
    // Slot
    ret.setEquipmentLocation(loc);
    // Required level
    Integer requiredLevel = (Integer) map.get(Integer.valueOf(2));
    if ((requiredLevel != null) && (requiredLevel.intValue() > 0)) {
        ret.setMinLevel(requiredLevel);
    }
    // Item level
    Integer itemLevel = (Integer) map.get(Integer.valueOf(3));
    if ((itemLevel != null) && (itemLevel.intValue() > 0)) {
        ret.setItemLevel(itemLevel);
    }
    // Class
    CharacterClass cClass = null;
    Integer classInt = (Integer) map.get(Integer.valueOf(14));
    if (classInt != null) {
        switch(classInt.intValue()) {
            case 40:
                cClass = CharacterClass.BURGLAR;
                break;
            case 24:
                cClass = CharacterClass.CAPTAIN;
                break;
            case 172:
                cClass = CharacterClass.CHAMPION;
                break;
            case 23:
                cClass = CharacterClass.GUARDIAN;
                break;
            case 162:
                cClass = CharacterClass.HUNTER;
                break;
            case 185:
                cClass = CharacterClass.LORE_MASTER;
                break;
            case 31:
                cClass = CharacterClass.MINSTREL;
                break;
            case 193:
                cClass = CharacterClass.RUNE_KEEPER;
                break;
            case 194:
                cClass = CharacterClass.WARDEN;
                break;
            default:
                {
                    _logger.warn("Unmanaged class [" + classInt + "]");
                }
        }
    }
    if (cClass != null) {
        ret.setRequiredClass(cClass);
    }
    // Quality
    ItemQuality quality = ItemQuality.COMMON;
    Integer qualityInt = (Integer) map.get(Integer.valueOf(4));
    if (qualityInt != null) {
        switch(qualityInt.intValue()) {
            case 1:
                quality = ItemQuality.COMMON;
                break;
            case 2:
                quality = ItemQuality.UNCOMMON;
                break;
            case 3:
                quality = ItemQuality.RARE;
                break;
            case 4:
                quality = ItemQuality.INCOMPARABLE;
                break;
            case 5:
                quality = ItemQuality.LEGENDARY;
                break;
            default:
                {
                    _logger.warn("ID: " + id + ": unmanaged quality [" + qualityInt + "]");
                }
        }
    } else {
        _logger.warn("ID: " + id + ": no quality!");
    }
    ret.setQuality(quality);
    // Bonus
    @SuppressWarnings("unchecked") HashMap<Integer, Object> bonuses = (HashMap<Integer, Object>) map.get(Integer.valueOf(6));
    if (bonuses != null) {
        BasicStatsSet stats = ret.getStats();
        List<Integer> keys = new ArrayList<Integer>(bonuses.keySet());
        Collections.sort(keys);
        for (Integer key : keys) {
            int index = key.intValue();
            if ((index >= 0) && (index < TulkasConstants.BONUS_NAMES.length)) {
                String bonusName = TulkasConstants.BONUS_NAMES[index];
                Object bonusValue = bonuses.get(key);
                STAT stat = TulkasConstants.STATS[index];
                if (stat != null) {
                    FixedDecimalsInteger value = TulkasValuesUtils.fromObjectValue(bonusValue);
                    stats.setStat(stat, value);
                } else {
                    _logger.warn("No stat associated to bonus: " + bonusName);
                /*
            BonusType type=BonusType.getByName(bonusName);
            Bonus bonus=new Bonus(type,BONUS_OCCURRENCE.ALWAYS);
            Object value=type.buildValue(bonusValue);
            bonus.setValue(value);
            bonusMgr.add(bonus);
            ret.getBonus().add(bonusName+" : "+bonuses.get(key));
            */
                }
                bonuses.remove(key);
            } else {
                _logger.warn("Unmanaged index: " + index);
            }
        }
        if (bonuses.size() > 0) {
            _logger.warn("Unmanaged bonuses: " + bonuses);
        }
    }
    return ret;
}
Also used : ArmourType(delta.games.lotro.lore.items.ArmourType) HashMap(java.util.HashMap) ArrayList(java.util.ArrayList) ItemQuality(delta.games.lotro.lore.items.ItemQuality) BasicStatsSet(delta.games.lotro.character.stats.BasicStatsSet) Weapon(delta.games.lotro.lore.items.Weapon) DamageType(delta.games.lotro.lore.items.DamageType) CharacterClass(delta.games.lotro.common.CharacterClass) FixedDecimalsInteger(delta.games.lotro.utils.FixedDecimalsInteger) Item(delta.games.lotro.lore.items.Item) STAT(delta.games.lotro.character.stats.STAT) Armour(delta.games.lotro.lore.items.Armour) EquipmentLocation(delta.games.lotro.lore.items.EquipmentLocation) FixedDecimalsInteger(delta.games.lotro.utils.FixedDecimalsInteger) WeaponType(delta.games.lotro.lore.items.WeaponType)

Example 58 with Item

use of delta.games.lotro.lore.items.Item in project lotro-tools by dmorcellet.

the class BigBattlesJewelsFinder method findScalableItems.

/**
 * Find some scalable items.
 * @param items Items to search.
 * @return A list of selected items.
 */
public List<Item> findScalableItems(List<Item> items) {
    List<Item> ret = new ArrayList<Item>();
    Map<String, Item> bbJewels = generateBigBattleJewels();
    Map<String, Item> pelargirRings = generatePelargirRings();
    for (Item item : items) {
        Integer level = item.getItemLevel();
        if (ITEM_LEVEL.equals(level)) {
            Item bbJewel = bbJewels.get(item.getName());
            if (bbJewel != null) {
                ret.add(item);
            // System.out.println("Added:"+item);
            }
            Item pelargirRing = pelargirRings.get(item.getName());
            if (pelargirRing != null) {
                ret.add(item);
            // System.out.println("Added:"+item);
            }
        }
    }
    return ret;
}
Also used : Item(delta.games.lotro.lore.items.Item) ArrayList(java.util.ArrayList)

Example 59 with Item

use of delta.games.lotro.lore.items.Item in project lotro-tools by dmorcellet.

the class TulkasItemsIndexLoader method buildItems.

/**
 * Build items from raw data items.
 * @param items Loaded data items.
 */
public void buildItems(HashMap<Integer, HashMap<Object, Object>> items) {
    List<Integer> keys = new ArrayList<Integer>(items.keySet());
    Collections.sort(keys);
    List<Item> itemsList = new ArrayList<Item>();
    int nbKeys = keys.size();
    System.out.println("Min: " + keys.get(0) + ", max: " + keys.get(nbKeys - 1));
    for (int i = 0; i < nbKeys; i++) {
        Integer id = keys.get(i);
        HashMap<Object, Object> data = items.get(id);
        String name = (String) data.get(Integer.valueOf(1));
        if ("GNDN".equals(name)) {
            continue;
        }
        String description = (String) data.get(Integer.valueOf(2));
        if (description != null) {
            if (description.indexOf("string table error") != -1) {
                description = "";
            }
        // description=description.replace("  ", " ");
        }
        Integer categoryInt = (Integer) data.get(Integer.valueOf(3));
        // 4..5: see below (quality, sturdiness)
        // 6: isMagic is always false
        Boolean isUnique = (Boolean) data.get(Integer.valueOf(7));
        Integer iconID = (Integer) data.get(Integer.valueOf(8));
        Integer backgroundIconId = (Integer) data.get(Integer.valueOf(9));
        Item item = new Item();
        item.setIdentifier(id.intValue());
        item.setName(name);
        item.setDescription(description);
        if (iconID != null) {
            item.setProperty(ItemPropertyNames.ICON_ID, iconID.toString());
        }
        if (backgroundIconId != null) {
            item.setProperty(ItemPropertyNames.BACKGROUND_ICON_ID, backgroundIconId.toString());
        }
        if (isUnique != null) {
            item.setUnique(isUnique.booleanValue());
        }
        if (categoryInt != null) {
            item.setSubCategory(String.valueOf(categoryInt));
        }
        // Quality
        {
            Integer qualityInt = (Integer) data.get(Integer.valueOf(4));
            ItemQuality quality = null;
            switch(qualityInt.intValue()) {
                // special items
                case 0:
                    quality = null;
                    break;
                case 1:
                    quality = ItemQuality.LEGENDARY;
                    break;
                case 2:
                    quality = ItemQuality.RARE;
                    break;
                case 3:
                    quality = ItemQuality.INCOMPARABLE;
                    break;
                case 4:
                    quality = ItemQuality.UNCOMMON;
                    break;
                case 5:
                    quality = ItemQuality.COMMON;
                    break;
            }
            item.setQuality(quality);
        }
        // Sturdiness
        {
            Integer durabilityInt = (Integer) data.get(Integer.valueOf(5));
            ItemSturdiness sturdiness = null;
            switch(durabilityInt.intValue()) {
                // consumables
                case 0:
                    sturdiness = null;
                    break;
                case 1:
                    sturdiness = ItemSturdiness.SUBSTANTIAL;
                    break;
                case 2:
                    sturdiness = ItemSturdiness.BRITTLE;
                    break;
                case 3:
                    sturdiness = ItemSturdiness.NORMAL;
                    break;
                case 4:
                    sturdiness = ItemSturdiness.TOUGH;
                    break;
                // cosmetics
                case 6:
                    sturdiness = null;
                    break;
                case 7:
                    sturdiness = ItemSturdiness.WEAK;
                    break;
            }
            item.setSturdiness(sturdiness);
        }
        itemsList.add(item);
    // System.out.println(i);
    // System.out.println(item.dump());
    // writeItemToDB(item);
    }
    File toFile = new File("data/items/tmp/itemsTulkasIndex.xml").getAbsoluteFile();
    ItemXMLWriter.writeItemsFile(toFile, itemsList);
}
Also used : ArrayList(java.util.ArrayList) ItemQuality(delta.games.lotro.lore.items.ItemQuality) Item(delta.games.lotro.lore.items.Item) ItemSturdiness(delta.games.lotro.lore.items.ItemSturdiness) File(java.io.File)

Example 60 with Item

use of delta.games.lotro.lore.items.Item in project lotro-companion by dmorcellet.

the class EssencesSummary method update.

/**
 * Update counts.
 */
public void update() {
    _count.clear();
    _essencesCount = 0;
    _slotsCount = 0;
    _stats.clear();
    CharacterEquipment equipment = _toon.getEquipment();
    for (EQUIMENT_SLOT slot : EQUIMENT_SLOT.values()) {
        Item item = equipment.getItemForSlot(slot);
        if (item != null) {
            EssencesSet essences = item.getEssences();
            int nbSlots = item.getEssenceSlots();
            int nbEssences = (essences != null) ? essences.getSize() : 0;
            int slotsCount = Math.max(nbSlots, nbEssences);
            // Increment total essence slot count
            _slotsCount += slotsCount;
            if (essences != null) {
                for (int i = 0; i < nbEssences; i++) {
                    Item essence = essences.getEssence(i);
                    if (essence != null) {
                        // Increment by-essence count
                        Integer essenceId = Integer.valueOf(essence.getIdentifier());
                        EssenceCount count = _count.get(essenceId);
                        if (count == null) {
                            count = new EssenceCount(essence);
                            _count.put(essenceId, count);
                        }
                        count.increment();
                        // Increment essences count
                        _essencesCount++;
                        BasicStatsSet essenceStats = essence.getStats();
                        _stats.addStats(essenceStats);
                    }
                }
            }
        }
    }
}
Also used : Item(delta.games.lotro.lore.items.Item) CharacterEquipment(delta.games.lotro.character.CharacterEquipment) EQUIMENT_SLOT(delta.games.lotro.character.CharacterEquipment.EQUIMENT_SLOT) EssencesSet(delta.games.lotro.lore.items.essences.EssencesSet) BasicStatsSet(delta.games.lotro.character.stats.BasicStatsSet)

Aggregations

Item (delta.games.lotro.lore.items.Item)105 ArrayList (java.util.ArrayList)29 HashMap (java.util.HashMap)19 File (java.io.File)17 FixedDecimalsInteger (delta.games.lotro.utils.FixedDecimalsInteger)16 Armour (delta.games.lotro.lore.items.Armour)15 LegendaryItem (delta.games.lotro.lore.items.legendary.LegendaryItem)12 BasicStatsSet (delta.games.lotro.character.stats.BasicStatsSet)11 ArmourType (delta.games.lotro.lore.items.ArmourType)8 EquipmentLocation (delta.games.lotro.lore.items.EquipmentLocation)8 Weapon (delta.games.lotro.lore.items.Weapon)8 JMenuItem (javax.swing.JMenuItem)8 EQUIMENT_SLOT (delta.games.lotro.character.CharacterEquipment.EQUIMENT_SLOT)7 CharacterClass (delta.games.lotro.common.CharacterClass)7 ItemsManager (delta.games.lotro.lore.items.ItemsManager)7 CharacterEquipment (delta.games.lotro.character.CharacterEquipment)6 ItemsStash (delta.games.lotro.character.storage.ItemsStash)6 WeaponType (delta.games.lotro.lore.items.WeaponType)6 ItemQuality (delta.games.lotro.lore.items.ItemQuality)5 List (java.util.List)5