Beispiel #1
0
  public Value allValues() {
    if (this.allValues != null) return this.allValues;

    ArrayList<Value> list = new ArrayList<Value>();
    switch (this.type) {
      case DataTypes.TYPE_BOOLEAN:
        this.addValues(list, DataTypes.BOOLEANS);
        break;
      case DataTypes.TYPE_ITEM:
        int limit = ItemDatabase.maxItemId();
        for (int i = 1; i <= limit; ++i) {
          if (i != 13 && ItemDatabase.getItemDataName(i) != null) {
            list.add(DataTypes.makeItemValue(i));
          }
        }
        break;
      case DataTypes.TYPE_LOCATION:
        this.addValues(list, AdventureDatabase.getAsLockableListModel());
        break;
      case DataTypes.TYPE_CLASS:
        this.addValues(list, DataTypes.CLASSES);
        break;
      case DataTypes.TYPE_STAT:
        this.addValues(list, DataTypes.STATS, 0, 3);
        break;
      case DataTypes.TYPE_SKILL:
        this.addValues(list, SkillDatabase.entrySet());
        break;
      case DataTypes.TYPE_EFFECT:
        this.addValues(list, EffectDatabase.entrySet());
        break;
      case DataTypes.TYPE_FAMILIAR:
        this.addValues(list, FamiliarDatabase.entrySet());
        break;
      case DataTypes.TYPE_SLOT:
        this.addValues(list, EquipmentRequest.slotNames);
        break;
      case DataTypes.TYPE_MONSTER:
        this.addValues(list, MonsterDatabase.entrySet());
        break;
      case DataTypes.TYPE_ELEMENT:
        this.addValues(list, MonsterDatabase.elementNames, 1, -1);
        break;
      case DataTypes.TYPE_COINMASTER:
        this.addValues(list, CoinmasterRegistry.MASTERS);
        break;
      case DataTypes.TYPE_PHYLUM:
        this.addValues(list, MonsterDatabase.phylumNames, 1, -1);
        break;
      default:
        return null;
    }
    this.allValues = new PluralValue(this, list);
    return this.allValues;
  }