我怎样才能让我的机器人只显示我的命令中的一些目录
How can i make my Bot show only some directories from my Commands
大家好,我一直在尝试执行一个列出所有目录及其文件的帮助命令。问题是我想秘密地保留其中一些 directories/commands。
我已经知道如何将此代码实施到嵌入中,所以我只想知道如何只使某些目录可供查看。这是我到目前为止所做的:`
让类别 = [];
fs.readdirSync("./commands/").forEach((dir) => {
const commands = fs.readdirSync(`./commands/${dir}/`).filter((file) =>
file.endsWith(".js")
);
const cmds = commands.map((command) => {
let file = require(`../../commands/${dir}/${command}`);
if (!file.name) return //"No command name.";
let name = file.name.replace(".js", "");
return `\`${name}\``;
});
let FileData = new Object();
FileData = {
name: dir.toUpperCase(),
value: cmds.length === 0 ? "In progress." : cmds.join(" "),
};
const InvalidDirs = [
'blaxyy-server',
'minecraft-server',
'owner-only'
]
categories.push(FileData)
});`
然后命令和目录名称应该在 Embed 上,但我想将 InvalidDirs 中列出的目录保密,这样不是每个人都能看到它们。
有人知道我该怎么做吗?
在每个要保密的文件中,添加一个 属性 像这样
name: 'command name',
description: 'Command Description.',
secret: true,
然后在这里检查
fs.readdirSync("./commands/").forEach((dir) => {
const commands = fs.readdirSync(`./commands/${dir}/`).filter((file) =>
file.endsWith(".js")
);
const cmds = commands.map((command) => {
let file = require(`../../commands/${dir}/${command}`);
if (file.secret) return; // this is the line that will check for the secret property
if (!file.name) return //"No command name.";
let name = file.name.replace(".js", "");
return `\`${name}\``;
});
let FileData = new Object();
FileData = {
name: dir.toUpperCase(),
value: cmds.length === 0 ? "In progress." : cmds.join(" "),
};
categories.push(FileData)
});
大家好,我一直在尝试执行一个列出所有目录及其文件的帮助命令。问题是我想秘密地保留其中一些 directories/commands。 我已经知道如何将此代码实施到嵌入中,所以我只想知道如何只使某些目录可供查看。这是我到目前为止所做的:`
让类别 = [];
fs.readdirSync("./commands/").forEach((dir) => {
const commands = fs.readdirSync(`./commands/${dir}/`).filter((file) =>
file.endsWith(".js")
);
const cmds = commands.map((command) => {
let file = require(`../../commands/${dir}/${command}`);
if (!file.name) return //"No command name.";
let name = file.name.replace(".js", "");
return `\`${name}\``;
});
let FileData = new Object();
FileData = {
name: dir.toUpperCase(),
value: cmds.length === 0 ? "In progress." : cmds.join(" "),
};
const InvalidDirs = [
'blaxyy-server',
'minecraft-server',
'owner-only'
]
categories.push(FileData)
});`
然后命令和目录名称应该在 Embed 上,但我想将 InvalidDirs 中列出的目录保密,这样不是每个人都能看到它们。
有人知道我该怎么做吗?
在每个要保密的文件中,添加一个 属性 像这样
name: 'command name',
description: 'Command Description.',
secret: true,
然后在这里检查
fs.readdirSync("./commands/").forEach((dir) => {
const commands = fs.readdirSync(`./commands/${dir}/`).filter((file) =>
file.endsWith(".js")
);
const cmds = commands.map((command) => {
let file = require(`../../commands/${dir}/${command}`);
if (file.secret) return; // this is the line that will check for the secret property
if (!file.name) return //"No command name.";
let name = file.name.replace(".js", "");
return `\`${name}\``;
});
let FileData = new Object();
FileData = {
name: dir.toUpperCase(),
value: cmds.length === 0 ? "In progress." : cmds.join(" "),
};
categories.push(FileData)
});