Merge pull request #21 from cheeze2000/development
moved some files and fixed package.json
This commit is contained in:
commit
90f33f892d
5
.gitignore
vendored
5
.gitignore
vendored
@ -112,4 +112,7 @@ src/config/Config.json
|
||||
PrivateConfig.json
|
||||
|
||||
# Ignore dockerfiles
|
||||
docker-compose.yml
|
||||
docker-compose.yml
|
||||
|
||||
.vscode/
|
||||
node_modules/
|
||||
59
package-lock.json
generated
Normal file
59
package-lock.json
generated
Normal file
@ -0,0 +1,59 @@
|
||||
{
|
||||
"name": "sebi-machine",
|
||||
"version": "1.0.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
"async-limiter": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz",
|
||||
"integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg=="
|
||||
},
|
||||
"discord.js": {
|
||||
"version": "11.3.2",
|
||||
"resolved": "https://registry.npmjs.org/discord.js/-/discord.js-11.3.2.tgz",
|
||||
"integrity": "sha512-Abw9CTMX3Jb47IeRffqx2VNSnXl/OsTdQzhvbw/JnqCyqc2imAocc7pX2HoRmgKd8CgSqsjBFBneusz/E16e6A==",
|
||||
"requires": {
|
||||
"long": "^4.0.0",
|
||||
"prism-media": "^0.0.2",
|
||||
"snekfetch": "^3.6.4",
|
||||
"tweetnacl": "^1.0.0",
|
||||
"ws": "^4.0.0"
|
||||
}
|
||||
},
|
||||
"long": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz",
|
||||
"integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA=="
|
||||
},
|
||||
"prism-media": {
|
||||
"version": "0.0.2",
|
||||
"resolved": "https://registry.npmjs.org/prism-media/-/prism-media-0.0.2.tgz",
|
||||
"integrity": "sha512-L6yc8P5NVG35ivzvfI7bcTYzqFV+K8gTfX9YaJbmIFfMXTs71RMnAupvTQPTCteGsiOy9QcNLkQyWjAafY/hCQ=="
|
||||
},
|
||||
"safe-buffer": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
|
||||
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
|
||||
},
|
||||
"snekfetch": {
|
||||
"version": "3.6.4",
|
||||
"resolved": "https://registry.npmjs.org/snekfetch/-/snekfetch-3.6.4.tgz",
|
||||
"integrity": "sha512-NjxjITIj04Ffqid5lqr7XdgwM7X61c/Dns073Ly170bPQHLm6jkmelye/eglS++1nfTWktpP6Y2bFXjdPlQqdw=="
|
||||
},
|
||||
"tweetnacl": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.0.tgz",
|
||||
"integrity": "sha1-cT2LgY2kIGh0C/aDhtBHnmb8ins="
|
||||
},
|
||||
"ws": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/ws/-/ws-4.1.0.tgz",
|
||||
"integrity": "sha512-ZGh/8kF9rrRNffkLFV4AzhvooEclrOH0xaugmqGsIfFgOE/pIz4fMc4Ef+5HSQqTEug2S9JZIWDR47duDSLfaA==",
|
||||
"requires": {
|
||||
"async-limiter": "~1.0.0",
|
||||
"safe-buffer": "~5.1.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
22
package.json
Normal file
22
package.json
Normal file
@ -0,0 +1,22 @@
|
||||
{
|
||||
"name": "sebi-machine",
|
||||
"version": "1.0.0",
|
||||
"description": "Dedicated Discord bot for [Sebi's bot tutorial](http://discord.gg/GWdhBSp).",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/dustinpianalto/Sebi-Machine.git"
|
||||
},
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"bugs": {
|
||||
"url": "https://github.com/dustinpianalto/Sebi-Machine/issues"
|
||||
},
|
||||
"homepage": "https://github.com/dustinpianalto/Sebi-Machine#readme",
|
||||
"dependencies": {
|
||||
"discord.js": "^11.3.2"
|
||||
}
|
||||
}
|
||||
66
src/cogs/sar.js
Normal file
66
src/cogs/sar.js
Normal file
@ -0,0 +1,66 @@
|
||||
const Discord = require("discord.js");
|
||||
|
||||
exports.run = async function(client, message, args) {
|
||||
|
||||
/*
|
||||
aliases: sar, selfrole, selfroles
|
||||
|
||||
examples:
|
||||
- S!selfrole get 1 (adds heroku helper role)
|
||||
- S!sar remove 3 (removes rewrite helper role)
|
||||
- S!sar list (shows all roles)
|
||||
*/
|
||||
|
||||
function roleFinder(query) {
|
||||
return message.guild.roles.find(function(r) {
|
||||
return r.name.includes(query)
|
||||
}).id;
|
||||
}
|
||||
|
||||
const type = args[0]; // can be get, remove or list
|
||||
|
||||
if (type == "list") {
|
||||
|
||||
const embed = new Discord.RichEmbed()
|
||||
.setTitle("List of Self Assigned Roles")
|
||||
.setDescription("Usage: `S!sar [ get | remove | list ] [ number ]`")
|
||||
.addField("1. Heroku Helper", "S!sar get 2", true)
|
||||
.addField("2. JS Helper", "S!sar get 3", true)
|
||||
.addField("3. Rewrite Helper", "S!sar get 4", true);
|
||||
|
||||
return message.channel.send({
|
||||
embed: embed
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
const roles = [roleFinder("Heroku"), roleFinder("JS"), roleFinder("Rewrite")];
|
||||
|
||||
let choice = args[1]; // can be 1, 2 or 3
|
||||
|
||||
// if the choice is not 1, 2 or 3
|
||||
if (/^[123]$/.test(choice) == false) {
|
||||
return message.channel.send("Enter a valid role number!"); // returns error message
|
||||
} else {
|
||||
choice -= 1; // because array indexing starts from 0. when they choose 1 it should be roles[0]
|
||||
}
|
||||
|
||||
switch (type) {
|
||||
|
||||
case "get":
|
||||
message.member.addRole(roles[choice]);
|
||||
break;
|
||||
|
||||
case "remove":
|
||||
message.member.removeRole(roles[choice]);
|
||||
break;
|
||||
|
||||
default:
|
||||
return; // when it is neither get nor remove
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
message.channel.send("Added the role you wanted!"); // confirmation message
|
||||
|
||||
}
|
||||
47
src/run.js
Normal file
47
src/run.js
Normal file
@ -0,0 +1,47 @@
|
||||
const Discord = require("discord.js");
|
||||
const client = new Discord.Client();
|
||||
|
||||
const config = require("./config/Config.json");
|
||||
const prefix = config.prefix;
|
||||
|
||||
const aliases = require("./shared_libs/aliases.json");
|
||||
const privateConfig = require("./config/PrivateConfig.json");
|
||||
|
||||
const fs = require("fs");
|
||||
const commands = fs.readdirSync("./cogs").filter(function(e) {
|
||||
return e.endsWith(".js");
|
||||
});
|
||||
|
||||
|
||||
client.on("message", function(message) {
|
||||
|
||||
if (message.guild.id != "265828729970753537") {
|
||||
return;
|
||||
}
|
||||
|
||||
if (message.content.startsWith(config.prefix) == false) {
|
||||
return;
|
||||
}
|
||||
|
||||
const msg = message.content.replace(prefix, "");
|
||||
|
||||
let command = msg.split(" ")[0];
|
||||
const args = msg.split(" ").slice(1);
|
||||
|
||||
command = aliases[command];
|
||||
|
||||
try {
|
||||
|
||||
if (commands.includes(`${command}.js`)) {
|
||||
require(`./cogs/${command}.js`).run(client, message, args);
|
||||
}
|
||||
|
||||
} catch (err) {
|
||||
|
||||
// handling errors
|
||||
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
client.login(privateConfig["bot-key"]);
|
||||
Loading…
x
Reference in New Issue
Block a user