/*
* Copyright (c) 1998-2017 by Richard A. Wilkes. All rights reserved.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, version 2.0. If a copy of the MPL was not distributed with
* this file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This Source Code Form is "Incompatible With Secondary Licenses", as
* defined by the Mozilla Public License, version 2.0.
*/
package com.trollworks.gcs.skill;
import com.trollworks.toolkit.annotation.Localize;
import com.trollworks.toolkit.utility.Localization;
/** The possible skill difficulty levels. */
public enum SkillDifficulty {
/** The "easy" difficulty. */
E {
@Override
public String toString() {
return E_TITLE;
}
},
/** The "average" difficulty. */
A {
@Override
public String toString() {
return A_TITLE;
}
},
/** The "hard" difficulty. */
H {
@Override
public String toString() {
return H_TITLE;
}
},
/** The "very hard" difficulty. */
VH {
@Override
public String toString() {
return VH_TITLE;
}
},
/** The "wildcard" difficulty. */
W {
@Override
public String toString() {
return W_TITLE;
}
@Override
public int getBaseRelativeLevel() {
return VH.getBaseRelativeLevel();
}
};
@Localize("E")
@Localize(locale = "de", value = "E")
@Localize(locale = "ru", value = "Л")
@Localize(locale = "es", value = "F")
static String E_TITLE;
@Localize("A")
@Localize(locale = "de", value = "D")
@Localize(locale = "ru", value = "С")
@Localize(locale = "es", value = "M")
static String A_TITLE;
@Localize("H")
@Localize(locale = "de", value = "S")
@Localize(locale = "ru", value = "Т")
@Localize(locale = "es", value = "D")
static String H_TITLE;
@Localize("VH")
@Localize(locale = "de", value = "ES")
@Localize(locale = "ru", value = "ОТ")
@Localize(locale = "es", value = "MD")
static String VH_TITLE;
@Localize("W")
@Localize(locale = "de", value = "W")
@Localize(locale = "ru", value = "У")
@Localize(locale = "es", value = "C")
static String W_TITLE;
static {
Localization.initialize();
}
/** @return The base relative skill level at 0 points. */
public int getBaseRelativeLevel() {
return -ordinal();
}
}