Beispiel #1
0
  public int getEncumbrance(int index) {
    ServerArmorTemplate base = null;

    if (baseData instanceof ServerArmorTemplate) base = (ServerArmorTemplate) baseData;

    if (!encumbrance[index].isLoaded()) {
      if (base == null) {
        return 0;
      } else {
        return base.getEncumbrance(index);
      }
    }

    int value = this.encumbrance[index].getValue();
    final byte delta = this.encumbrance[index].getDeltaType();

    if (delta == '+' || delta == '-' || delta == '_' || delta == '=') {
      int baseValue = 0;

      if (baseData != null) {
        if (base != null) baseValue = base.getEncumbrance(index);
      }

      if (delta == '+') value = baseValue + value;
      if (delta == '-') value = baseValue - value;
      if (delta == '=') value = baseValue + (int) (baseValue * (value / 100.0f));
      if (delta == '_') value = baseValue - (int) (baseValue * (value / 100.0f));
    }
    return value;
  }