diff options
Diffstat (limited to 'resources/js/definitions.js')
-rw-r--r-- | resources/js/definitions.js | 136 |
1 files changed, 136 insertions, 0 deletions
diff --git a/resources/js/definitions.js b/resources/js/definitions.js new file mode 100644 index 0000000..b8c5071 --- /dev/null +++ b/resources/js/definitions.js @@ -0,0 +1,136 @@ +/** + * @typedef {string} MonsterSlug + * @typedef {string} TechniqueSlug + */ + +// + +const ElementType = { + aether: 'aether', + wood: 'wood', + fire: 'fire', + earth: 'earth', + metal: 'metal', + water: 'water', + + /* lightning: 'lightning', + frost: 'frost', + venom: 'venom', + //vermin: 'vermin', + cosmic: 'cosmic', + battle: 'battle', + psionic: 'psionic', + darkness: 'darkness', + heaven: 'heaven', + + combineTypes(typeA, typeB) { + if (typeA === ElementType.earth & typeB === ElementType.fire) { + return ElementType.lightning; + } + if (typeA === ElementType.earth & typeB === ElementType.water) { + return ElementType.frost; + } + if (typeA === ElementType.earth & typeB === ElementType.wood) { + return ElementType.venom; + } + // if (typeA === ElementType.earth & typeB === ElementType.metal) { + // return ElementType.vermin; + // } + if (typeA === ElementType.fire && typeB === ElementType.water) { + return ElementType.cosmic; + } + } */ +}; + +const ElementTypeColor = { + [ElementType.aether]: 'rgba(255, 255, 255, 1)', + [ElementType.wood]: '#3ca6a6', + [ElementType.fire]: '#ca3c3c', + [ElementType.earth]: '#eac93c', + [ElementType.metal]: '#e4e4e4', + [ElementType.water]: '#3c3c3c', +}; + + +/** + * @readonly + * @enum {string} + */ +const TasteWarm = { + tasteless: 'tasteless', + peppy: 'peppy', + salty: 'salty', + hearty: 'hearty', + zesty: 'zesty', + refined: 'refined', +}; + +const TasteCold = { + tasteless: 'tasteless', + mild: 'mild', + sweet: 'sweet', + soft: 'soft', + flakey: 'flakey', + dry: 'dry', +}; + + +const TechniqueRange = { + melee: 'melee', + touch: 'touch', + ranged: 'ranged', + reach: 'reach', + reliable: 'reliable', +}; + + +const StatType = { + // hp: 'hp', + melee: 'melee', + armour: 'armour', + ranged: 'ranged', + dodge: 'dodge', + speed: 'speed', +}; + + +const StatusEffectType = { + blinded: 'blinded', + burn: 'burn', + chargedup: 'chargedup', + charging: 'charging', + confused: 'confused', + diehard: 'diehard', + dozing: 'dozing', + elementalshield: 'elementalshield', + eliminated: 'eliminated', + enraged: 'enraged', + exhausted: 'exhausted', + faint: 'faint', + feedback: 'feedback', + festering: 'festering', + flinching: 'flinching', + focused: 'focused', + grabbed: 'grabbed', + hardshell: 'hardshell', + harpooned: 'harpooned', + lifeleech: 'lifeleech', + lockdown: 'lockdown', + noddingoff: 'noddingoff', + poison: 'poison', + prickly: 'prickly', + recover: 'recover', + slow: 'slow', + sniping: 'sniping', + softened: 'softened', + stuck: 'stuck', + tired: 'tired', + wasting: 'wasting', + wild: 'wild', +}; + +const StatusEffectTypeColor = { + [StatusEffectType.burn]: 'red', + [StatusEffectType.poison]: 'purple', + [StatusEffectType.recover]: 'white', +}; |