UNPKG

showdown-calc-cli

Version:

Quick and easy pokemon damage calulations in your terminal

45 lines (44 loc) 1.93 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getDamageCalcPrompts = exports.calcDamage = exports.displayResult = exports.isMoveSpecial = exports.isMovePhysical = exports.capitalize = void 0; const calc_1 = require("@smogon/calc"); const specialTypes = [ 'Fire', 'Water', 'Electric', 'Psychic', 'Dark', 'Ice', 'Grass', 'Fairy', 'Dragon' ]; const capitalize = (str) => str ? str.split(' ').map(s => s[0].toUpperCase() + s.substr(1)).join(' ') : str; exports.capitalize = capitalize; const isMovePhysical = (move, gen) => { if (gen <= 3) return !specialTypes.includes(calc_1.MOVES[gen][move].type); return (calc_1.MOVES[gen][move].category === 'Physical'); }; exports.isMovePhysical = isMovePhysical; const isMoveSpecial = (move, gen) => { if (gen <= 3) return specialTypes.includes(calc_1.MOVES[gen][move].type); return (calc_1.MOVES[gen][move].category === 'Special'); }; exports.isMoveSpecial = isMoveSpecial; const displayResult = (result) => { console.log('\n'); if (result.damage === 0) result.damage = [0.1, 0.1, 0.1]; if (result.kochance().text) return console.log(result.desc()); if (result.damage instanceof Array && result.damage.join(',') === [0.1, 0.1, 0.1].join(',')) return console.log(result.desc().split(':')[0] + ' 0-0 (0 - 0%) -- possibly the worst move ever'); return console.log(result.desc() + ' -- possibly the worse move ever'); }; exports.displayResult = displayResult; var calcDamageUtil_1 = require("./calcDamageUtil"); Object.defineProperty(exports, "calcDamage", { enumerable: true, get: function () { return calcDamageUtil_1.calcDamage; } }); var damageCalcPrompts_1 = require("./damageCalcPrompts"); Object.defineProperty(exports, "getDamageCalcPrompts", { enumerable: true, get: function () { return damageCalcPrompts_1.getDamageCalcPrompts; } });