@ffxiv-teamcraft/simulator
Version:
A FINAL FANTASY XIV crafting simulator
207 lines • 12.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CraftingActionsRegistry = void 0;
var basic_synthesis_1 = require("./actions/progression/basic-synthesis");
var careful_synthesis_1 = require("./actions/progression/careful-synthesis");
var rapid_synthesis_1 = require("./actions/progression/rapid-synthesis");
var groundwork_1 = require("./actions/progression/groundwork");
var muscle_memory_1 = require("./actions/progression/muscle-memory");
var basic_touch_1 = require("./actions/quality/basic-touch");
var standard_touch_1 = require("./actions/quality/standard-touch");
var hasty_touch_1 = require("./actions/quality/hasty-touch");
var byregots_blessing_1 = require("./actions/quality/byregots-blessing");
var precise_touch_1 = require("./actions/quality/precise-touch");
var prudent_touch_1 = require("./actions/quality/prudent-touch");
var tricks_of_the_trade_1 = require("./actions/other/tricks-of-the-trade");
var masters_mend_1 = require("./actions/other/masters-mend");
var manipulation_1 = require("./actions/buff/manipulation");
var great_strides_1 = require("./actions/buff/great-strides");
var innovation_1 = require("./actions/buff/innovation");
var veneration_1 = require("./actions/buff/veneration");
var observe_1 = require("./actions/other/observe");
var waste_not_1 = require("./actions/buff/waste-not");
var waste_not_ii_1 = require("./actions/buff/waste-not-ii");
var trained_eye_1 = require("./actions/quality/trained-eye");
var preparatory_touch_1 = require("./actions/quality/preparatory-touch");
var intensive_synthesis_1 = require("./actions/progression/intensive-synthesis");
var delicate_synthesis_1 = require("./actions/other/delicate-synthesis");
var final_appraisal_1 = require("./actions/buff/final-appraisal");
var reflect_1 = require("./actions/quality/reflect");
var remove_final_appraisal_1 = require("./actions/other/remove-final-appraisal");
var careful_observation_1 = require("./actions/other/careful-observation");
var advanced_touch_1 = require("./actions/quality/advanced-touch");
var prudent_synthesis_1 = require("./actions/progression/prudent-synthesis");
var heart_and_soul_1 = require("./actions/buff/heart-and-soul");
var trained_finesse_1 = require("./actions/quality/trained-finesse");
var refined_touch_1 = require("./actions/quality/refined-touch");
var trained_perfection_1 = require("./actions/other/trained-perfection");
var daring_touch_1 = require("./actions/quality/daring-touch");
var quick_innovation_1 = require("./actions/buff/quick-innovation");
var immaculate_mend_1 = require("./actions/other/immaculate-mend");
var material_miracle_1 = require("./actions/other/material-miracle");
var stellar_steady_hand_1 = require("./actions/buff/stellar-steady-hand");
var CraftingActionsRegistry = /** @class */ (function () {
function CraftingActionsRegistry() {
}
CraftingActionsRegistry.getActionsByType = function (type) {
return CraftingActionsRegistry.ALL_ACTIONS.filter(function (row) { return row.action.getType() === type; }).map(function (row) { return row.action; });
};
CraftingActionsRegistry.importFromCraftOpt = function (importArray) {
return importArray
.map(function (row) {
var found = CraftingActionsRegistry.ACTION_IMPORT_NAMES.find(function (action) { return action.short === row; });
if (found === undefined) {
return undefined;
}
return CraftingActionsRegistry.ALL_ACTIONS.find(function (el) {
return el.name === found.full;
});
})
.filter(function (action) { return action !== undefined; })
.map(function (row) { return row.action; });
};
CraftingActionsRegistry.exportToCraftOpt = function (actionNames) {
return JSON.stringify(actionNames
.map(function (actionName) {
return CraftingActionsRegistry.ACTION_IMPORT_NAMES.find(function (el) {
return el.full === actionName;
});
})
.filter(function (action) { return action !== undefined; })
.map(function (row) { return row.short; }));
};
CraftingActionsRegistry.createFromIds = function (ids) {
return ids
.map(function (id) {
var found = CraftingActionsRegistry.ALL_ACTIONS.find(function (row) { return row.action.getIds().indexOf(id) > -1; });
if (found !== undefined) {
return found.action;
}
return undefined;
})
.filter(function (action) { return action !== undefined; });
};
CraftingActionsRegistry.serializeRotation = function (rotation) {
return rotation
.map(function (action) {
var actionRow = CraftingActionsRegistry.ALL_ACTIONS.find(function (row) { return row.action.getIds()[0] === action.getIds()[0]; });
if (actionRow !== undefined) {
return actionRow.name;
}
return undefined;
})
.filter(function (action) { return action !== undefined; });
};
CraftingActionsRegistry.deserializeRotation = function (rotation) {
return rotation
.map(function (actionName) {
return CraftingActionsRegistry.ALL_ACTIONS.find(function (row) { return row.name === actionName; });
})
.filter(function (action) { return action !== undefined; })
.map(function (row) { return row.action; });
};
CraftingActionsRegistry.ACTION_IMPORT_NAMES = [
{ short: 'observe', full: 'Observe' },
{ short: 'basicSynth', full: 'BasicSynthesis' },
{ short: 'basicSynth2', full: 'BasicSynthesis' },
{ short: 'rapidSynthesis', full: 'RapidSynthesis' },
{ short: 'rapidSynthesis3', full: 'RapidSynthesis' },
{ short: 'groundwork', full: 'Groundwork' },
{ short: 'basicTouch', full: 'BasicTouch' },
{ short: 'standardTouch', full: 'StandardTouch' },
{ short: 'advancedTouch', full: 'AdvancedTouch' },
{ short: 'hastyTouch', full: 'HastyTouch' },
{ short: 'byregotsBlessing', full: 'ByregotsBlessing' },
{ short: 'byregotsBrow', full: 'ByregotsBlessing' },
{ short: 'byregotsMiracle', full: 'ByregotsBlessing' },
{ short: 'mastersMend', full: 'MastersMend' },
{ short: 'tricksOfTheTrade', full: 'TricksOfTheTrade' },
{ short: 'wasteNot', full: 'WasteNot' },
{ short: 'wasteNot2', full: 'WasteNotII' },
{ short: 'innovation', full: 'Innovation' },
{ short: 'veneration', full: 'Veneration' },
{ short: 'greatStrides', full: 'GreatStrides' },
{ short: 'preciseTouch', full: 'PreciseTouch' },
{ short: 'muscleMemory', full: 'MuscleMemory' },
{ short: 'brandOfTheElements', full: 'BrandOfTheElements' },
{ short: 'brandOfEarth', full: 'BrandOfTheElements' },
{ short: 'brandOfFire', full: 'BrandOfTheElements' },
{ short: 'brandOfIce', full: 'BrandOfTheElements' },
{ short: 'brandOfLightning', full: 'BrandOfTheElements' },
{ short: 'brandOfWater', full: 'BrandOfTheElements' },
{ short: 'brandOfWind', full: 'BrandOfTheElements' },
{ short: 'nameOfTheElements', full: 'NameOfTheElements' },
{ short: 'nameOfEarth', full: 'NameOfTheElements' },
{ short: 'nameOfFire', full: 'NameOfTheElements' },
{ short: 'nameOfIce', full: 'NameOfTheElements' },
{ short: 'nameOfLightning', full: 'NameOfTheElements' },
{ short: 'nameOfWater', full: 'NameOfTheElements' },
{ short: 'nameOfWind', full: 'NameOfTheElements' },
{ short: 'carefulSynthesis', full: 'CarefulSynthesis' },
{ short: 'carefulSynthesis3', full: 'CarefulSynthesis' },
{ short: 'patientTouch', full: 'PatientTouch' },
{ short: 'manipulation', full: 'Manipulation' },
{ short: 'manipulation2', full: 'Manipulation' },
{ short: 'prudentTouch', full: 'PrudentTouch' },
{ short: 'focusedSynthesis', full: 'FocusedSynthesis' },
{ short: 'focusedTouch', full: 'FocusedTouch' },
{ short: 'intensiveSynthesis', full: 'IntensiveSynthesis' },
{ short: 'preparatoryTouch', full: 'PreparatoryTouch' },
{ short: 'delicateSynthesis', full: 'DelicateSynthesis' },
{ short: 'trainedEye', full: 'TrainedEye' },
{ short: 'finalAppraisal', full: 'FinalAppraisal' },
{ short: 'reflect', full: 'Reflect' },
{ short: 'prudentSynthesis', full: 'PrudentSynthesis' },
{ short: 'trainedFinesse', full: 'TrainedFinesse' },
];
CraftingActionsRegistry.ALL_ACTIONS = [
// Progress actions
{ name: 'BasicSynthesis', action: new basic_synthesis_1.BasicSynthesis() },
{ name: 'CarefulSynthesis', action: new careful_synthesis_1.CarefulSynthesis() },
{ name: 'PrudentSynthesis', action: new prudent_synthesis_1.PrudentSynthesis() },
{ name: 'RapidSynthesis', action: new rapid_synthesis_1.RapidSynthesis() },
{ name: 'Groundwork', action: new groundwork_1.Groundwork() },
{ name: 'MuscleMemory', action: new muscle_memory_1.MuscleMemory() },
{ name: 'IntensiveSynthesis', action: new intensive_synthesis_1.IntensiveSynthesis() },
// Quality actions
{ name: 'BasicTouch', action: new basic_touch_1.BasicTouch() },
{ name: 'StandardTouch', action: new standard_touch_1.StandardTouch() },
{ name: 'AdvancedTouch', action: new advanced_touch_1.AdvancedTouch() },
{ name: 'HastyTouch', action: new hasty_touch_1.HastyTouch() },
{ name: 'DaringTouch', action: new daring_touch_1.DaringTouch() },
{ name: 'ByregotsBlessing', action: new byregots_blessing_1.ByregotsBlessing() },
{ name: 'PreciseTouch', action: new precise_touch_1.PreciseTouch() },
{ name: 'PrudentTouch', action: new prudent_touch_1.PrudentTouch() },
{ name: 'TrainedEye', action: new trained_eye_1.TrainedEye() },
{ name: 'PreparatoryTouch', action: new preparatory_touch_1.PreparatoryTouch() },
{ name: 'Reflect', action: new reflect_1.Reflect() },
{ name: 'TrainedFinesse', action: new trained_finesse_1.TrainedFinesse() },
{ name: 'RefinedTouch', action: new refined_touch_1.RefinedTouch() },
{ name: 'TrainedPerfection', action: new trained_perfection_1.TrainedPerfection() },
// CP recovery
{ name: 'TricksOfTheTrade', action: new tricks_of_the_trade_1.TricksOfTheTrade() },
// Repair
{ name: 'MastersMend', action: new masters_mend_1.MastersMend() },
{ name: 'Manipulation', action: new manipulation_1.Manipulation() },
{ name: 'ImmaculateMend', action: new immaculate_mend_1.ImmaculateMend() },
// Buffs
{ name: 'WasteNot', action: new waste_not_1.WasteNot() },
{ name: 'WasteNotII', action: new waste_not_ii_1.WasteNotII() },
{ name: 'GreatStrides', action: new great_strides_1.GreatStrides() },
{ name: 'Innovation', action: new innovation_1.Innovation() },
{ name: 'Veneration', action: new veneration_1.Veneration() },
{ name: 'FinalAppraisal', action: new final_appraisal_1.FinalAppraisal() },
{ name: 'QuickInnovation', action: new quick_innovation_1.QuickInnovation() },
// Other
{ name: 'Observe', action: new observe_1.Observe() },
{ name: 'HeartAndSoul', action: new heart_and_soul_1.HeartAndSoul() },
{ name: 'CarefulObservation', action: new careful_observation_1.CarefulObservation() },
{ name: 'DelicateSynthesis', action: new delicate_synthesis_1.DelicateSynthesis() },
{ name: 'RemoveFinalAppraisal', action: new remove_final_appraisal_1.RemoveFinalAppraisal() },
{ name: 'MaterialMiracle', action: new material_miracle_1.MaterialMiracle() },
{ name: 'StellarSteadyHand', action: new stellar_steady_hand_1.StellarSteadyHand() },
];
return CraftingActionsRegistry;
}());
exports.CraftingActionsRegistry = CraftingActionsRegistry;
//# sourceMappingURL=crafting-actions-registry.js.map