refactored Skill command

This commit is contained in:
2021-04-18 22:13:36 +02:00
parent f8674abe87
commit 6ec0a2fe68
3 changed files with 27 additions and 11 deletions

View File

@ -1,6 +1,7 @@
const globals = require('../globals');
const db = globals.db;
const { findMessage }= require('@dsabot/findMessage');
const { getSkill } = require('@dsabot/getSkill');
module.exports = {
name: 'skill',
description: 'Zeigt dir deinen Fertigkeitswert im jeweiligen Talent.',
@ -17,16 +18,9 @@ module.exports = {
return message.reply(findMessage('NOENTRY'));
}
else {
let level = 0;
/*
for (let i in docs[0].character.skills) {
if (docs[0].character.skills[i].id == args[0]) {
level = docs[0].character.skills[i].level;
}
}
*/
level = docs[0].character.skills.find(skill => skill.id === args[0]).level;
message.reply('Du hast folgenden Talentwert in ' + args[0] + ': ' + level);
const Skill = getSkill({Character: docs[0].character, args: args});
if(!Skill) { return message.reply(findMessage('TALENT_UNKNOWN'));}
return message.reply(`Du hast folgenden Wert in **${Skill.Name}**: ${Skill.Level}`)
}
});
}
@ -35,3 +29,4 @@ module.exports = {
}
},
};

File diff suppressed because one or more lines are too long

20
functions/getSkill.js Normal file
View File

@ -0,0 +1,20 @@
const globals = require('../globals');
const getSkill = ({ Character: Character = [], args: args = [] } = {}) => {
let skill_entry = globals.Talente.find(skill => skill.id.toLowerCase() === args[0].toLowerCase()) ||
globals.Talente.find(skill => skill.name.toLowerCase() === args[0].toLowerCase());
if (!skill_entry) { return; }
let Level = 0; // This is the minimum attributes value.
let cSkill = Character.skills.find(skill => skill.id === skill_entry.id) || {};
if (cSkill) {
Level = cSkill.level || 0;
}
let Name = globals.Talente.find(skill => skill.id === skill_entry.id).name;
return {
Name: Name,
Level: Level
};
};
module.exports = { getSkill };