lorcana-api
Version:
JavaScript / TypeScript client for https://lorcana-api.com/
44 lines • 1.72 kB
JavaScript
import { noConfigParser } from "./noConfigParser.js";
import { modifierParser } from "./modifierParser.js";
import { inkCostParser } from "./inkCostParser.js";
/**
* List of all known abilities in the game.
*/
export var Ability;
(function (Ability) {
Ability["Bodyguard"] = "Bodyguard";
Ability["Challenger"] = "Challenger";
Ability["Evasive"] = "Evasive";
Ability["Reckless"] = "Reckless";
Ability["Resist"] = "Resist";
Ability["Rush"] = "Rush";
Ability["Shift"] = "Shift";
Ability["SingTogether"] = "Sing Together";
Ability["Singer"] = "Singer";
Ability["Support"] = "Support";
Ability["Ward"] = "Ward";
})(Ability || (Ability = {}));
/**
* Maps each ability to the AbilityParser for that ability.
*/
export const AbilityParsers = {
// Abilities with no config - either they exist or they don't
[]: noConfigParser(Ability.Bodyguard),
[]: noConfigParser(Ability.Evasive),
[]: noConfigParser(Ability.Reckless),
[]: noConfigParser(Ability.Rush),
[]: noConfigParser(Ability.Support),
[]: noConfigParser(Ability.Ward),
// Abilities with an ink cost, like "Shift 3"
[]: inkCostParser(Ability.Shift),
[]: inkCostParser(Ability.Singer),
[]: inkCostParser(Ability.SingTogether),
// Abilities with a modifier, like "Challenger +2"
[]: modifierParser(Ability.Challenger),
[]: modifierParser(Ability.Resist),
};
/**
* A list of all abilities in the game.
*/
export const Abilities = Object.freeze(Object.values(Ability));
//# sourceMappingURL=index.js.map