├── Astre_İnvite ├── Install.bat ├── Start.bat ├── Models │ └── Inviter.js ├── ayarlar.json └── package.json ├── Astre_Statistic ├── baslat.bat ├── package.json └── src │ ├── commands │ ├── help.js │ ├── eval.js │ ├── coinSystem.js │ ├── tasks.js │ ├── rank.js │ ├── tagaldır.js │ ├── senkronize.js │ ├── role.js │ ├── top.js │ ├── user.js │ ├── me.js │ ├── coin.js │ └── task.js │ └── configs │ ├── config.json │ └── ranks.json ├── Astre_Database ├── Start.bat ├── ayarlar.json ├── package.json ├── Schema │ └── RoleBackup.js ├── YulafBackup.js └── yarn.lock ├── Astre_Executive ├── Start.bat ├── models │ ├── Kayıtlar.js │ ├── Teyitci.js │ └── yasaklıtag.js ├── events │ ├── ready.js │ └── message.js ├── commands │ ├── G-Restart.js │ ├── K-KayıtKapat.js │ ├── K-Top-teyit.js │ ├── G-KanalKilit.js │ ├── G-KanalKilitAç.js │ ├── K-Teyit-info.js │ ├── G-Eval.js │ ├── K-İsimler.js │ ├── G-Say.js │ ├── G-RolBilgi.js │ ├── G-Toplantı.js │ ├── G-Yetkili-say.js │ ├── G-Rolsüz.js │ ├── K-Nick.js │ ├── G-Yasaklıtag.js │ ├── G-Snipe.js │ ├── K-Erkek.js │ └── K-Kız.js ├── package.json ├── config.json └── Yulaf.js ├── Astre_Moderator ├── Start.bat ├── TheYulaf │ └── Commands │ │ ├── General │ │ ├── G-Restart.js │ │ ├── G-Eval.js │ │ ├── G-Ses-Kontrol.js │ │ ├── G-Avatar.js │ │ ├── G-Cookies - Kopya.js │ │ ├── G-Kayıtsız.js │ │ ├── G-Elite.js │ │ ├── G-Coder.js │ │ ├── G-Cookies.js │ │ ├── G-Müzisyen.js │ │ ├── G-Sponsor.js │ │ ├── G-Streamer.js │ │ ├── G-TagTara.js │ │ └── G-Tasarımcı.js │ │ ├── Funny │ │ ├── F-Banner.js │ │ └── F-ZarAt.js │ │ └── Criminal │ │ ├── C-VoiceMuteAll.js │ │ ├── C-Reklam.js │ │ ├── C-Uyar.js │ │ ├── C-Ban.js │ │ ├── C-Kick.js │ │ ├── C-Karantina.js │ │ ├── C-Chat-Mute.js │ │ ├── C-Voice-Mute.js │ │ └── KalkmazBan.js └── package.json ├── Astre_Welcome ├── elveda.mp3 ├── hosgeldin.mp3 ├── package.json ├── ses.js └── package-lock.json ├── Astre_Angels ├── Angel I │ ├── Start.bat │ ├── Etkinlik │ │ └── korumalar.json │ ├── ayarlar.json │ ├── package.json │ ├── package-lock.json │ └── YulafGuard.js └── Angel II │ └── ayarlar.json ├── README.md └── LICENSE /Astre_İnvite/Install.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | color b 3 | yarn install 4 | goto a 5 | -------------------------------------------------------------------------------- /Astre_Statistic/baslat.bat: -------------------------------------------------------------------------------- 1 | echo off 2 | cls 3 | title Stat 4 | :a 5 | node yulaf.js 6 | goto a -------------------------------------------------------------------------------- /Astre_Database/Start.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | color b 3 | title Backup 4 | :a 5 | node YulafBackup 6 | goto a 7 | -------------------------------------------------------------------------------- /Astre_Executive/Start.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | color b 3 | title Yulaf Voucher 4 | :a 5 | node Yulaf.js 6 | goto a 7 | -------------------------------------------------------------------------------- /Astre_İnvite/Start.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | color b 3 | title Yulaf Invite 4 | :a 5 | node yulaf.js 6 | goto a 7 | -------------------------------------------------------------------------------- /Astre_Moderator/Start.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | color b 3 | title Yulaf Moderation 4 | :a 5 | node Yulaf.js 6 | goto a -------------------------------------------------------------------------------- /Astre_Welcome/elveda.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrMertBey/yulaf-snowouts-botlar/HEAD/Astre_Welcome/elveda.mp3 -------------------------------------------------------------------------------- /Astre_Angels/Angel I/Start.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | color b 3 | title Guard I 4 | :a 5 | node YulafGuard.js 6 | goto a 7 | -------------------------------------------------------------------------------- /Astre_Welcome/hosgeldin.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MrMertBey/yulaf-snowouts-botlar/HEAD/Astre_Welcome/hosgeldin.mp3 -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # yulaf-snowouts-botlar 2 | Yulaf ve SnowOuts'un botları, güzel ve kaliteli botlardır.Kendileriyle hiçbir sorunum yoktur izin alarak paylaştım. Devamı için +50 star bekliyorum :) 3 | -------------------------------------------------------------------------------- /Astre_Executive/models/Kayıtlar.js: -------------------------------------------------------------------------------- 1 | const mongoose = require("mongoose"); 2 | 3 | const kayitlar = mongoose.Schema({ 4 | _id: String, 5 | kayitlar: Array 6 | }); 7 | 8 | module.exports = mongoose.model("Kayıtlar", kayitlar); 9 | -------------------------------------------------------------------------------- /Astre_Executive/models/Teyitci.js: -------------------------------------------------------------------------------- 1 | const mongoose = require("mongoose"); 2 | 3 | const teyitci = mongoose.Schema({ 4 | _id: String, 5 | teyitler: Number 6 | }); 7 | 8 | module.exports = mongoose.model("Teyitci", teyitci); 9 | -------------------------------------------------------------------------------- /Astre_Database/ayarlar.json: -------------------------------------------------------------------------------- 1 | { 2 | "botOwner":"852716190199578634", 3 | "botPrefix":"d!", 4 | "botToken":"", 5 | "mongoDB":"", 6 | "status":"Yulaf ❤️ SnowOuts.", 7 | "guildID":"", 8 | "botVoiceChannelID":"", 9 | "EmbedColor":"RANDOM", 10 | "onayID":"✅" 11 | } -------------------------------------------------------------------------------- /Astre_Angels/Angel I/Etkinlik/korumalar.json: -------------------------------------------------------------------------------- 1 | { 2 | "kickGuard":true, 3 | "banGuard":true, 4 | "botGuard":true, 5 | "serverGuard":true, 6 | "webhookGuard":true, 7 | "emojiDelete":true, 8 | "emojiCreate":true, 9 | "emojiUpdate":true, 10 | "Vanity_Guard":true, 11 | "banRemove":true} -------------------------------------------------------------------------------- /Astre_Executive/models/yasaklıtag.js: -------------------------------------------------------------------------------- 1 | const mongoose = require('mongoose'); 2 | 3 | const yasaklıtag = mongoose.Schema({ 4 | guildID: String, 5 | adminID: String, 6 | Tag: String, 7 | Reason: String, 8 | Date: Number 9 | }); 10 | 11 | module.exports = mongoose.model("yasaklıtag", yasaklıtag); -------------------------------------------------------------------------------- /Astre_Angels/Angel I/ayarlar.json: -------------------------------------------------------------------------------- 1 | { 2 | "Developer": ["288255465681453058","852716190199578634"], 3 | "Prefix":"g!", 4 | "Token":"", 5 | "guildID":"", 6 | "BotStatus":"Yulaf ❤️ SnowOuts.", 7 | "EmbedRenk":"2F3136", 8 | "Vanity_URL":"url", 9 | "whitelist":[""], 10 | "boosterRole":"", 11 | "jailRole":"" 12 | } -------------------------------------------------------------------------------- /Astre_Welcome/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "dc-welcome-bot", 3 | "description": "Discord.js welcome botu", 4 | "author": { 5 | "name": "Yulaf" 6 | }, 7 | "private": true, 8 | "dependencies": { 9 | "discord.js": "12.5.1", 10 | "ffmpeg-static": "4.2.7", 11 | "opusscript": "0.0.7" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /Astre_İnvite/Models/Inviter.js: -------------------------------------------------------------------------------- 1 | const mongoose = require('mongoose'); 2 | 3 | const inviterSchema = mongoose.Schema({ 4 | _id: mongoose.Schema.Types.ObjectId, 5 | guildID: String, 6 | userID: String, 7 | inviterID: String, 8 | regular: Number, 9 | bonus: Number, 10 | fake: Number 11 | }); 12 | 13 | module.exports = mongoose.model("Invites", inviterSchema); -------------------------------------------------------------------------------- /Astre_Angels/Angel II/ayarlar.json: -------------------------------------------------------------------------------- 1 | { 2 | "Developer": ["288255465681453058","852716190199578634"], 3 | "Prefix":"g!", 4 | "Token":"", 5 | "guildID":"", 6 | "BotStatus":"Yulaf ❤️ SnowOuts.", 7 | "Footer":"Yulaf ❤️ SnowOuts.", 8 | "EmbedRenk":"2F3136", 9 | "Vanity_URL":"url", 10 | "whitelist":[""], 11 | "boosterRole":"", 12 | "jailRole":"" 13 | } -------------------------------------------------------------------------------- /Astre_Angels/Angel I/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "yulaf-guard", 3 | "version": "0.0.1", 4 | "description": "Satuka Guard", 5 | "main": "YulafGuard.js", 6 | "scripts": { 7 | "test": "node YulafGuard.js" 8 | }, 9 | "author": "Yulaf", 10 | "license": "ISC", 11 | "dependencies": { 12 | "discord.js": "^12.5.1" 13 | }, 14 | "keywords": [], 15 | "devDependencies": {} 16 | } 17 | -------------------------------------------------------------------------------- /Astre_İnvite/ayarlar.json: -------------------------------------------------------------------------------- 1 | { 2 | "Prefix": ".", 3 | "Developer": ["852716190199578634","288255465681453058"], 4 | "TokenFalan": "", 5 | "rede": "redemoji", 6 | "onaye": "onayemoji", 7 | "BotStatus": "Yulaf ❤️ SnowOuts.", 8 | "guildID": "", 9 | "OwnerRolID": "", 10 | "İnviteLog": "", 11 | "botVoiceChannelID": "", 12 | "color": "#00ffa4", 13 | "MongoDB":"" 14 | } 15 | -------------------------------------------------------------------------------- /Astre_Executive/events/ready.js: -------------------------------------------------------------------------------- 1 | module.exports = (client) => { 2 | client.user.setPresence({ activity: { name: client.config.botStatus }, status: "dnd" }); 3 | let botVoiceChannel = client.channels.cache.get(client.config.VOİCECHANNEL); 4 | if (botVoiceChannel) botVoiceChannel.join().catch(err => console.error("Ses Kanalına Bağlanamadım")); 5 | 6 | } 7 | module.exports.config = { 8 | name: "ready" 9 | }; -------------------------------------------------------------------------------- /Astre_Database/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "yulaf-backup-bot", 3 | "version": "0.0.1", 4 | "description": "Yulaf Backup", 5 | "main": "YulafBackup.js", 6 | "scripts": { 7 | "test": "node YulafBackup.js" 8 | }, 9 | "author": "Yulaf :)", 10 | "license": "ISC", 11 | "dependencies": { 12 | "discord.js": "^12.3.1", 13 | "moment": "^2.27.0", 14 | "mongoose": "^5.12.3" 15 | }, 16 | "keywords": [ 17 | "Yulaf-backup-bot" 18 | ] 19 | } 20 | -------------------------------------------------------------------------------- /Astre_Executive/commands/G-Restart.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | 3 | 4 | exports.run = (client, message, args) => { 5 | message.channel.send("Bot yeniden başlatılıyor").then(msg => { 6 | console.log("[BOT] Yeniden başlatılıyor"); 7 | process.exit(0); 8 | }); 9 | 10 | }; 11 | 12 | module.exports.config = { 13 | name: "restart", 14 | usage: "reboot", 15 | enabled: true, 16 | aliases: ["reboot","restart"], 17 | }; 18 | -------------------------------------------------------------------------------- /Astre_Database/Schema/RoleBackup.js: -------------------------------------------------------------------------------- 1 | const mongoose = require('mongoose'); 2 | 3 | const role = mongoose.Schema({ 4 | _id: mongoose.Schema.Types.ObjectId, 5 | guildID: String, 6 | roleID: String, 7 | name: String, 8 | color: String, 9 | hoist: Boolean, 10 | position: Number, 11 | permissions: Number, 12 | mentionable: Boolean, 13 | time: Number, 14 | members: Array, 15 | channelOverwrites: Array 16 | }); 17 | 18 | module.exports = mongoose.model("RoleDatabase", role); 19 | -------------------------------------------------------------------------------- /Astre_İnvite/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "satuke-invite-ask", 3 | "version": "1.0.0", 4 | "description": "sa", 5 | "main": "satuke.js", 6 | "dependencies": { 7 | "cron": "^1.8.2", 8 | "discord.js": "^12.5.3", 9 | "moment": "^2.29.1", 10 | "moment-duration-format": "^2.3.2", 11 | "moment-timezone": "^0.5.33", 12 | "mongoose": "^5.12.14" 13 | }, 14 | "devDependencies": {}, 15 | "scripts": { 16 | "test": "node satuke.js" 17 | }, 18 | "author": "", 19 | "license": "ISC" 20 | } 21 | -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-Restart.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | 3 | 4 | module.exports.execute = async (client, message, args) => { 5 | 6 | message.channel.send("Bot yeniden başlatılıyor").then(msg => { 7 | console.log("[BOT] Yeniden başlatılıyor "); 8 | process.exit(0); 9 | }); 10 | 11 | }; 12 | module.exports.settings = { 13 | Commands: ["reboot","restart"], 14 | Usage: "reboot", 15 | Activity: true, 16 | permLevel: 4, 17 | Category: "Penal", 18 | cooldown: 10000 19 | } -------------------------------------------------------------------------------- /Astre_Executive/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "voucher", 3 | "version": "1.0.0", 4 | "description": "yulaf-voucher", 5 | "main": "Yulaf.js", 6 | "dependencies": { 7 | "discord.js": "^12.5.3", 8 | "fs": "0.0.1-security", 9 | "moment-duration-format": "^2.3.2", 10 | "moment-timezone": "^0.5.33", 11 | "mongoose": "^5.12.14", 12 | "ms": "^2.1.3", 13 | "quick.db": "^7.1.3", 14 | "yarn": "^1.22.10" 15 | }, 16 | "devDependencies": {}, 17 | "scripts": { 18 | "test": "node Yulaf.js" 19 | }, 20 | "author": "Yulaf", 21 | "license": "ISC", 22 | "keywords": [] 23 | } 24 | -------------------------------------------------------------------------------- /Astre_Moderator/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "yulaf-moderation", 3 | "version": "1.0.0", 4 | "description": "yulaf", 5 | "main": "Yulaf.js", 6 | "scripts": { 7 | "test": "node Yulaf.js" 8 | }, 9 | "keywords": [ 10 | "Yulaf" 11 | ], 12 | "author": "satke", 13 | "license": "ISC", 14 | "dependencies": { 15 | "axios": "^0.21.1", 16 | "debug": "^4.3.2", 17 | "discord.js": "^12.5.3", 18 | "moment": "^2.29.1", 19 | "moment-duration-format": "^2.3.2", 20 | "moment-timezone": "^0.5.33", 21 | "mongoose": "^5.12.13", 22 | "quick.db": "^7.1.3", 23 | "yarn": "^1.22.10" 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /Astre_Statistic/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "yulaf-advanced-stat-bot", 3 | "version": "0.0.1", 4 | "description": "An advanced yulaf stat bot.", 5 | "main": "yulaf.js", 6 | "scripts": { 7 | "start": "node .", 8 | "start:dev": "nodemon ." 9 | }, 10 | "dependencies": { 11 | "ark.db": "^2.4.6", 12 | "cron": "^1.8.2", 13 | "discord.js": "^12.5.1", 14 | "moment": "^2.29.1", 15 | "moment-duration-format": "^2.3.2", 16 | "mongoose": "^5.11.14" 17 | }, 18 | "license": "MIT", 19 | "devDependencies": { 20 | "eslint": "^7.17.0", 21 | "nodemon": "^2.0.7", 22 | "prettier": "^2.3.0" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Astre_Statistic/src/commands/help.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | conf: { 3 | aliases: ["help", "y", "h"], 4 | name: "yardım", 5 | enabled: true 6 | }, 7 | 8 | /** 9 | * @param {Client} client 10 | * @param {Message} message 11 | * @param {Array} args 12 | * @param {MessageEmbed} embed 13 | * @param {String} prefix 14 | * @returns {Promise} 15 | */ 16 | run: async (client, message, args, embed, prefix) => { 17 | const list = client.commands 18 | .filter((x) => x.conf.help) 19 | .sort((a, b) => b.conf.help - a.conf.help) 20 | .map((x) => `**\`${prefix}\`**${x.conf.help}`) 21 | .join("\n"); 22 | 23 | message.channel.send(embed.setColor("GRAY").setDescription(list)); 24 | } 25 | }; 26 | -------------------------------------------------------------------------------- /Astre_Executive/commands/K-KayıtKapat.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require('discord.js'); 2 | const config = require("../config.json") 3 | exports.run = async(client, message, args) => { 4 | 5 | let channel = client.channels.cache.get(config.HoşgeldinKanalID) 6 | 7 | let rol = message.guild.roles.cache.find(a => a.name === config.unregisterRoles); // rol adı 8 | channel.updateOverwrite(rol, { 'CONNECT': false }, 'Kilitleyen '+message.author.tag); 9 | 10 | message.channel.send(new MessageEmbed() .setDescription("Giriş Kapıları Başarıyla Kapatıldı.")).then(orci => orci.delete({ timeout: 5000 })) 11 | message.react(config.onay)} 12 | 13 | module.exports.config = { 14 | name: "kayıtkapat", 15 | description: "Belirtilen üyeyi kız olarak kaydeder.", 16 | usage: "kayıtkapat", 17 | enabled: true, 18 | aliases: ["kayıtkapat"], 19 | }; -------------------------------------------------------------------------------- /Astre_Executive/commands/K-Top-teyit.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require("discord.js"); 2 | const teyitci = require("../models/Teyitci.js"); 3 | const config = require('../config.json') 4 | module.exports.run = async (client, message, args) => { 5 | let embed = new MessageEmbed().setAuthor(message.guild.name, message.guild.iconURL({ dynamic: true })).setColor(client.config.embedColor); 6 | let data = await teyitci.find().sort({ teyitler: "descending" }); 7 | message.channel.send(embed.setDescription(`Teyit Listesi \n\n ${data.length ? data.map((d, index) => `\`${index+1}.\` <@${d._id}>`).join("\n") : "Teyitçi bulunamadı.."}`)).then(x => x.delete({ timeout: 5000 })); 8 | }; 9 | 10 | module.exports.config = { 11 | name: "Topteyit", 12 | description: "Top 20 teyitçi listesi.", 13 | usage: "top20", 14 | enabled: true, 15 | aliases: ["topteyit"], 16 | }; 17 | -------------------------------------------------------------------------------- /Astre_Executive/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "prefixes": [".","!"], 3 | "botToken": "", 4 | "developers": ["288255465681453058","852716190199578634"], 5 | "mongoDB": "", 6 | "botStatus": "Yulaf ❤️ SnowOuts.", 7 | "Footer":"Yulaf ❤️ SnowOuts.", 8 | "name_age": true, 9 | "guildID":"", 10 | "Yetkili":"", 11 | "embedColor": "2F3136", 12 | "defaultTag": "", 13 | "tag": "", 14 | "yasaklitag":"", 15 | "ŞüpheliHesap":"", 16 | "şüpheliLOG":"", 17 | "owner":"", 18 | "rules":"", 19 | "BoosterRole":"", 20 | "HoşgeldinKanalID":"", 21 | "Katıldı":"", 22 | "Tagges":"", 23 | "ToplantıKanal":"", 24 | "VOİCECHANNEL":"", 25 | "onay":"859394241788510258", 26 | "True":"onayemoji", 27 | "false":"redemoji", 28 | "chatKanal":"", 29 | "kalp":"kalpemoji", 30 | "unregisterRoles": ["",""], 31 | "boyRoles": ["",""], 32 | "girlRoles": ["",""], 33 | "TagVarYok": true 34 | } 35 | -------------------------------------------------------------------------------- /Astre_Executive/events/message.js: -------------------------------------------------------------------------------- 1 | const config = require("../config.json") 2 | module.exports = async (message) => { 3 | if (message.author.bot || !message.guild || !message.content) return; 4 | let client = message.client; 5 | let prefix = client.config.prefixes.find(p => message.content.toLowerCase().startsWith(p)); 6 | if (!prefix) return; 7 | let args = message.content.split(" ").slice(1); 8 | let command = message.content.split(" ")[0].slice(prefix.length); 9 | let cmd = client.commands.get(command) || client.commands.get(client.aliases.get(command)); 10 | if (cmd) { 11 | if (!client.config.developers.includes(message.author.id) && !message.member.hasPermission("ADMINISTRATOR") && !message.member.roles.cache.get(config.Yetkili)) return; 12 | cmd.run(client, message, args); 13 | cmd = client.commands.get(client.aliases.get(command)); 14 | }; 15 | }; 16 | 17 | module.exports.config = { 18 | name: "message" 19 | }; 20 | 21 | -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-Eval.js: -------------------------------------------------------------------------------- 1 | const { Message, Client, MessageEmbed } = require("discord.js"); 2 | 3 | const Config = require("../../Configuration/Config.json"); 4 | /** 5 | * @param {Client} client 6 | * @param {Message} message 7 | * @param {Array} args 8 | */ 9 | module.exports.execute = async (client, message, args) => { 10 | if (message.author.id != `852716190199578634`) return message.reply("Kodu Belirt."); 11 | 12 | let code = args.join(" "); 13 | let result; 14 | try { 15 | result = eval(code); 16 | } catch (error) { 17 | result = error; 18 | } 19 | 20 | message.channel.send(result, { 21 | code: true, 22 | split: true 23 | }); 24 | } 25 | 26 | module.exports.settings = { 27 | Commands: ["eval"], 28 | Usage: "eval ", 29 | Description: "Bu komut yoook :D", 30 | cooldown: 2500, 31 | Activity: true 32 | } -------------------------------------------------------------------------------- /Astre_Executive/commands/G-KanalKilit.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | const config = require('../config.json'); 3 | exports.run = (client, message, args) => { 4 | 5 | if(!message.member.hasPermission('MANAGE_CHANNELS')) return message.channel.send("Yetkin Yok!"); 6 | let channel = message.channel; 7 | let everyone = message.guild.roles.cache.find(a => a.name === '@everyone'); 8 | channel.updateOverwrite(everyone, { 'SEND_MESSAGES': false }, 'Kilitleyen Kişi: '+message.author.tag); 9 | channel.send(new Discord.MessageEmbed().setColor('RANDOM').setTimestamp().setAuthor(message.guild.name, message.guild.iconURL({dynamic: true})).setFooter(config.Footer).setDescription("Kanal Kitlendi.").setFooter(config.Footer)); 10 | }; 11 | module.exports.config = { 12 | name: "kanal-kilit", 13 | description: "Kanalın Yazma Engeli Koyar.", 14 | usage: "kanal-kilit", 15 | enabled: true, 16 | aliases: ["kanal-kilit","kilit","lock","kilit"], 17 | }; 18 | 19 | -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-Ses-Kontrol.js: -------------------------------------------------------------------------------- 1 | const { Message } = require("discord.js"); 2 | const Config = require("../../Configuration/Config.json"); 3 | module.exports.execute = async (client, message, args) => { 4 | let victim = message.mentions.members.first() || (args[0] ? await message.guild.getMember(args[0]) : undefined); 5 | if (!victim) return message.reply(`${Settings.emojiler.iptal} Geçerli bir \`@Yulaf/ID\` belirtmelisin`); 6 | message.reply(`Bu Kullanıcı (${victim.voice.channelID ?"" + victim.voice.channel.name + "**Adlı Kanalda Seste Sohbet Ediyor." : "Sunucuda her hangi bir ses kanalında bulunmuyor"}`); 7 | } 8 | 9 | module.exports.settings = { 10 | Commands: ["seskontrol", "sesk", "kses", "sk"], 11 | Usage: "seskontrol ", 12 | Description: "Etiketlediğin ya da ID'sini belirttiğin kişinin bir kanalda olup olmadığını, eğer kanaldaysa o kanalın ismini öğrenirsin.", 13 | Category: "General", 14 | cooldown: 2500, 15 | Activity: true 16 | } -------------------------------------------------------------------------------- /Astre_Executive/commands/G-KanalKilitAç.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | const config = require('../config.json'); 3 | 4 | exports.run = (client, message, args) => { 5 | if(!message.member.hasPermission('MESSAGE_SEND')) return message.channel.send("Yetkin Yok!"); 6 | 7 | let channel = message.channel; 8 | 9 | 10 | let everyone = message.guild.roles.cache.find(a => a.name === '@everyone'); 11 | channel.updateOverwrite(everyone, { 'SEND_MESSAGES': null }, 'Kilidi Açan '+message.author.tag); 12 | channel.send(new Discord.MessageEmbed() 13 | .setColor('#2F3136') 14 | .setAuthor(message.guild.name, message.guild.iconURL({dynamic: true})) 15 | .setFooter(config.Footer) 16 | .setTimestamp() 17 | .setDescription("Kanal Kilidi Açıldı.")); 18 | 19 | }; 20 | 21 | module.exports.config = { 22 | name: "unlock", 23 | description: "Kanalın Yazma Engelini Kaldırır", 24 | usage: "kilit-ac", 25 | enabled: true, 26 | aliases: ["unlock","kanal-kilit ac","kilit ac"], 27 | }; 28 | 29 | -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-Avatar.js: -------------------------------------------------------------------------------- 1 | const { Message, Client, MessageEmbed } = require("discord.js"); 2 | const Config = require("../../Configuration/Config.json"); 3 | /** 4 | * @param {Client} client 5 | * @param {Message} message 6 | * @param {Array} args 7 | */ 8 | module.exports.execute = async (client, message, args) => { 9 | let yulaf = message.mentions.users.first() || (args[0] ? await client.users.getUser(args[0]) : undefined) || message.author; 10 | 11 | message.channel.send(new MessageEmbed() 12 | .setImage(yulaf.avatarURL({ dynamic: true })) 13 | .setAuthor(message.member.displayName, message.author.avatarURL({ dynamic: true })) 14 | .setColor("#2F3136")) 15 | } 16 | module.exports.settings = { 17 | Commands: ["avatar", "pp","av"], 18 | Usage: "avatar ", 19 | Description: "Etiketlediğin kişinin Discord'daki profil fotoğrafını birçok formatta alırsın ve indirebilir duruma getirirsin.", 20 | Category: "Penal", 21 | cooldown: 10000, 22 | Activity: true 23 | } -------------------------------------------------------------------------------- /Astre_Statistic/src/commands/eval.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | conf: { 3 | aliases: [], 4 | name: "eval", 5 | owner: true, 6 | enabled: true 7 | }, 8 | 9 | /** 10 | * @param {Client} client 11 | * @param {Message} message 12 | * @param {Array} args 13 | * @param {MessageEmbed} embed 14 | * @returns {Promise} 15 | */ 16 | run: async (client, message, args, embed) => { 17 | if (!args[0]) return; 18 | const code = args.join(" "); 19 | 20 | try { 21 | const result = clean(await eval(code)); 22 | if (result.includes(client.token)) 23 | return message.channel.send("Kancık seni .d"); 24 | message.channel.send(result, { 25 | code: "js", 26 | split: true 27 | }); 28 | } catch (err) { 29 | message.channel.send(err, { code: "js", split: true }); 30 | } 31 | } 32 | }; 33 | 34 | function clean(text) { 35 | if (typeof text !== "string") 36 | text = require("util").inspect(text, { depth: 0 }); 37 | text = text 38 | .replace(/`/g, "`" + String.fromCharCode(8203)) 39 | .replace(/@/g, "@" + String.fromCharCode(8203)); 40 | return text; 41 | } 42 | -------------------------------------------------------------------------------- /Astre_Executive/commands/K-Teyit-info.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require("discord.js"); 2 | const teyitci = require("../models/Teyitci.js"); 3 | const config = require("../config.json") 4 | 5 | module.exports.run = async (client, message, args) => { 6 | 7 | let member = message.mentions.members.first() || message.guild.members.cache.get(args[0]) || message.member; 8 | let embed = new MessageEmbed().setAuthor(message.member.displayName, message.author.displayAvatarURL({ dynamic: true })).setColor(client.config.embedColor); 9 | let memberData = await teyitci.findById(member.id); 10 | if (!memberData) return message.channel.send(embed 11 | .setDescription(`${member} Adlı kullanıcının teyit verisini bulamadım.`)); 12 | message.react(client.config.onay); 13 | message.channel.send(`${member}, \`${memberData.teyitler}\` teyitin bulunmaktadır`).then(x => x.delete({ timeout: 10000 })); 14 | }; 15 | 16 | module.exports.config = { 17 | name: "teyitbilgi", 18 | description: "Belirtilen yetkilinin teyit bilgisi.", 19 | usage: "teyitbilgi <@üye>", 20 | aliases: ["teyit-bilgi","kayıtsay","teyitler","teyitsay","ks","" ], 21 | }; 22 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 Lâving 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Astre_Executive/commands/G-Eval.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js"); 2 | const config = require("../config.json"); 3 | 4 | exports.run = async (client, message, args, color, prefix) => { 5 | if(message.author.id !== "707325480378040430") return message.reply(`bu komutu sadece Bot Sahibi kullanabilir!`); 6 | try { 7 | let codein = args.join(" "); 8 | let code = eval(codein); 9 | 10 | if (codein.length < 1) return message.reply(`deneyebilmek için bir kod girmelisin!`) 11 | 12 | if (typeof code !== 'string') 13 | code = require('util').inspect(code, { depth: 0 }); 14 | let embed = new Discord.RichEmbed() 15 | .setColor('RANDOM') 16 | .addField('Kod', `\`\`\`js\n${codein}\`\`\``) 17 | .addField(`\`\`\`js\n${code}\n\`\`\``) 18 | message.channel.send(embed) 19 | } catch(e) { 20 | let embed2 = new Discord.MessageEmbed() 21 | .setColor('RANDOM') 22 | .addField('» Hata', "\`\`\`js\n"+e+"\n\`\`\`") 23 | message.channel.send(embed2); 24 | } 25 | } 26 | 27 | module.exports.config = { 28 | name: "eval", 29 | description: "eval", 30 | usage: "eval", 31 | enabled: true, 32 | aliases: ["eval"], 33 | }; 34 | -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/Funny/F-Banner.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require("discord.js"); 2 | const axios = require('axios'); 3 | const Config = require("../../Configuration/Config.json"); 4 | 5 | module.exports.execute = async (client, message, args) => { 6 | 7 | var user = message.mentions.members.first() || client.users.cache.get(args[0]) || message.member; 8 | 9 | axios({ 10 | method: 'GET', 11 | url: `https://discord.com/api/v8/users/${user.id}`, 12 | headers: { 13 | Authorization: `Bot ${Config.Token}` 14 | } 15 | }) 16 | .then(function (response) { 17 | try { 18 | if (response.data.banner.includes(".null")) return message.channel.send(`Kullanıcının banneri yok!.`) 19 | 20 | message.channel.send(`https://cdn.discordapp.com/banners/${response.data.id}/${response.data.banner}?size=512&gif`) 21 | } catch (err) { 22 | message.channel.send(`Kullanıcının banneri yok!.`) 23 | } 24 | }) 25 | } 26 | module.exports.settings = { 27 | Commands: ["banner"], 28 | Usage: "banner", 29 | Description: "Bahsettiğin kişiyi sunucudan atarsın.", 30 | Category: "banner", 31 | Activity: true 32 | } -------------------------------------------------------------------------------- /Astre_Statistic/src/configs/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "publicParents": ["859682605473857566"], 3 | "registerParents": ["859417519747891260"], 4 | "privateParents": ["859691824070918156"], 5 | "ignoreChannels": ["859447535243624449","859457868763103232"], 6 | "streamerParents": ["860573854031806514"], 7 | "musicParents": ["859686798657978408"], 8 | "solvingParents": ["860831766779920384"], 9 | "funParents": ["859478270465671178","859478330058997790","859478142753046548"], 10 | "aloneParents": ["859478270465671178"], 11 | 12 | "coinSystem": true, 13 | "rankLog": "869246636549869638", 14 | "tag": "✦", 15 | "staffs": ["859429678598979584","859369549366689792"], 16 | "messageCount": 1, 17 | "messageCoin": 1, 18 | "voiceCount": 1, 19 | "voiceCoin": 1, 20 | "publicCoin": 1, 21 | "taggedCoin": 1, 22 | "emojis": { 23 | "coin": "<:coins:857882240465371157>", 24 | "icon": "", 25 | "nokta":"<:miniicon:871437177282768916>", 26 | "fill": "", 27 | "empty": "<:empty:862290648220041226>", 28 | "emptyStart": "<:emptyfirst:862290648018976789>", 29 | "fillStart": "", 30 | "emptyEnd": "<:emptyend:862290648198807562>", 31 | "fillEnd": "" 32 | } 33 | } -------------------------------------------------------------------------------- /Astre_Statistic/src/commands/coinSystem.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | conf: { 3 | aliases: ["coin-system", "coinsistem", "coinsistemi", "coin-sistem", "coin-sistemi"], 4 | name: "coinsystem", 5 | help: "coinsistem [aç/kapat]", 6 | enabled: true 7 | }, 8 | 9 | /** 10 | * @param {Client} client 11 | * @param {Message} message 12 | * @param {Array} args 13 | * @param {MessageEmbed} embed 14 | * @returns {Promise} 15 | */ 16 | run: async (client, message, args, embed) => { 17 | if (["aç", "open"].includes(args[0])) { 18 | if (global.confdb.get("coinSystem")) return message.channel.error(message, "Coin sistemi zaten açık!"); 19 | global.confdb.set("coinSystem", true); 20 | message.channel.send(embed.setColor("GRAY").setDescription("Coin sistemi başarıyla açıldı!")); 21 | } else if (["kapat", "close"].includes(args[0])) { 22 | if (!global.confdb.get("coinSystem")) return message.channel.error(message, "Coin sistemi zaten kapalı!"); 23 | global.confdb.set("coinSystem", false); 24 | message.channel.send(embed.setColor("GRAY").setDescription("Coin sistemi başarıyla kapatıldı!")); 25 | } else message.channel.send(embed.setColor("GRAY").setDescription(`Coin sistemi: \`${global.confdb.get("coinSystem") ? "açık" : "kapalı"}\``)); 26 | } 27 | }; -------------------------------------------------------------------------------- /Astre_Executive/commands/K-İsimler.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require("discord.js"); 2 | const kayitlar = require("../models/Kayıtlar.js"); 3 | 4 | module.exports.run = async (client, message, args) => { 5 | let member = message.mentions.members.first() || message.guild.members.cache.get(args[0]); 6 | let embed = new MessageEmbed().setAuthor(message.member.displayName, message.author.displayAvatarURL({ dynamic: true })).setColor("RANDOM"); 7 | if (!member) return message.channel.send(embed.setDescription("Geçerli bir \`@Satuke/ID\` belirtmelisin")).then(x => x.delete({ timeout: 5000 })); 8 | let memberData = await kayitlar.findById(member.id); 9 | if (!memberData) return message.channel.send(embed.setDescription(`${member} üyesinin kayıt geçmişini bulamadım`)); 10 | message.channel.send(embed.setDescription(`${member} **Kullanıcısının kayıt geçmişi** \n\n${memberData.kayitlar.reverse().slice(0, 10).map((data, index) => `\`${index+1}.\` ${data.isim} (${data.roller.map(r => `<@&${r}>`).join(", ")}) - ${new Date(data.tarih).toTurkishFormat()}`).join("\n")}`)); 11 | message.react(client.config.onay); 12 | }; 13 | 14 | module.exports.config = { 15 | name: "kayıtlar", 16 | description: "Belirtilen üyenin kayıt geçmişi.", 17 | usage: "kayıtlar <@üye>", 18 | enabled: true, 19 | aliases: ["isimler", "teyitler"], 20 | }; -------------------------------------------------------------------------------- /Astre_Executive/commands/G-Say.js: -------------------------------------------------------------------------------- 1 | const db = require('quick.db'); 2 | const { MessageEmbed } = require('discord.js') 3 | const config = require("../config.json"); 4 | 5 | exports.run = async (client, message, args) => { 6 | var toplamüye = message.guild.memberCount 7 | var online = message.guild.members.cache.filter(off => off.presence.status !== 'offline').size 8 | var Sesli = message.guild.members.cache.filter(s => s.voice.channel).size; 9 | var Satuke = message.guild.members.cache.filter(s => !s.bot).filter(member => member.user.username.includes(config.tag)).size; 10 | 11 | 12 | const embed = new MessageEmbed() 13 | .setColor('RANDOM') 14 | .setAuthor(message.guild.name, message.guild.iconURL({dynamic: true})) 15 | .setFooter(config.Footer) 16 | .setTimestamp() 17 | .setDescription(` 18 | \`•\` Sunucumuzda şuanda toplam **${toplamüye}** üye bulunmakta. 19 | \`•\` Sunucumuzda **${online}** aktif kişi bulunmakta. 20 | \`•\` Tagımızı alarak ailemize destek olan **${Satuke}** kişi bulunmaktadır. 21 | \`•\` Sesli sohbetlerde toplam **${Sesli}** kişi var.`) 22 | message.channel.send(embed) 23 | message.react(config.onay); 24 | } 25 | module.exports.config = { 26 | name: "say", 27 | description: "say", 28 | usage: "say", 29 | enabled: true, 30 | aliases: ["say","SAY","Say"], 31 | }; 32 | 33 | -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-Cookies - Kopya.js: -------------------------------------------------------------------------------- 1 | 2 | const { Client, MessageEmbed } = require("discord.js"); 3 | const Settings = require("../../Configuration/Settings.json"); 4 | const Config = require("../../Configuration/Config.json"); 5 | 6 | module.exports.execute = async (client, message, args) => { 7 | 8 | if(!message.member.roles.cache.get(Settings.Perm.Commander) && !message.member.hasPermission('ADMINISTRATOR')) 9 | 10 | var uye = message.member; 11 | 12 | var isim = args.splice(0).join(" "); 13 | if(!isim) return message.channel.send("Geçerli bir isim belirtmelisin!").then(x => x.delete({timeout: 5000})); 14 | 15 | if(isim.length >= "26") return message.channel.send(`Max 25 karakter kullana bilirsin.`) 16 | 17 | 18 | if(Config.TagVarYok) { 19 | 20 | if(!message.member.roles.cache.has(Settings.Tag.Role)) { 21 | 22 | uye.setNickname(`✧ ${isim}`).catch(e => { }); 23 | message.channel.send(`${message.member} Yeni adın : ✧ ${isim}`); 24 | 25 | } else { 26 | uye.setNickname(`✦ ${isim}`).catch(e => { }); 27 | message.channel.send(`${message.member} Yeni adın ✦ ${isim}`); 28 | } 29 | } else { 30 | 31 | uye.setNickname(`✦ ${isim}`).catch(e => { }); 32 | message.channel.send(`${message.member} Yeni adın ✦ ${isim}`); 33 | } 34 | 35 | }; 36 | module.exports.settings = { 37 | Commands: ["zengin","b"], 38 | Usage: "booster", 39 | Description: "Bahsettiğin kişiyi sunucudan atarsın.", 40 | Category: "Penal", 41 | Activity: true 42 | } -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/Criminal/C-VoiceMuteAll.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js"), 2 | client = new Discord.Client(); 3 | const Settings = require("../../Configuration/Settings.json"); 4 | const Config = require("../../Configuration/Config.json"); 5 | 6 | module.exports.run = async (client, message, args) => { 7 | let yavuzembed = new Discord.MessageEmbed().setColor(0x7997ff) 8 | .setFooter(Config.Footer).setAuthor(message.author.username, message.author.avatarURL({dynamic: true})) 9 | 10 | if (!message.member.hasPermission("ADMINISTRATOR")) return message.channel.send(yavuzembed 11 | .setDescription(`${Settings.emojiler.iptal} Bunu kullanmaya yetkin yetmiyor!`)).then(m => m.delete({timeout: 10000})); 12 | let channel = message.guild.channels.cache.get(args[0]) || message.member.voice.channel; 13 | if (!channel) message.channel.send(yavuzembed 14 | .setDescription(`${Settings.emojiler.iptal} Bir Kanal ID'si Belirtin yada bir kanala katılman gerek!`)).then(m => m.delete({timeout: 10000})); 15 | channel.members.filter((s) => !s.hasPermission("ADMINISTRATOR")) 16 | .forEach((s, index) => { 17 | s.voice.setMute(true); 18 | }); 19 | message.channel.send(yavuzembed.setDescription(`${Settings.emojiler.tik} \`${channel.name}\` Kanalındaki Herkes Başarılı Bir Şekilde Susturuldu`)) 20 | }; 21 | 22 | module.exports.settings = { 23 | Commands: ["voicemuteall", "herkesisustur","vmuteall"], 24 | Usage: "voicemute <@user|id> [reason]", 25 | Description: "Bahsettiğin kanalda herkesi susturursun.", 26 | Category: "Criminal", 27 | Activity: true 28 | } -------------------------------------------------------------------------------- /Astre_Executive/commands/G-RolBilgi.js: -------------------------------------------------------------------------------- 1 | const Config = require('../config.json'); 2 | const Discord = require("discord.js"), 3 | client = new Discord.Client(); 4 | 5 | module.exports.run = async (client, message, args) => { 6 | let SatukEmbed = new Discord.MessageEmbed().setAuthor(message.member.displayName, message.author.avatarURL({dynamic: true})).setFooter(Config.Footer, message.guild.iconURL({dynamic: true})) 7 | .setColor(Config.embedColor) 8 | 9 | 10 | let SatukeRole = message.mentions.roles.first() || message.guild.roles.cache.get(args[0]); 11 | if (!SatukeRole) return message.channel.send(SatukEmbed.setDescription(`${Config.false} Geçerli bir rol belirtmeli/Rol ID'si girmelisin.`)) 12 | 13 | 14 | let satArray = new Array(); 15 | let satukecimÜyeler = SatukeRole.members.forEach(satukecim => {satArray.push(`<@!${satukecim.id}> ( \`${satukecim.id}\` )`);}) 16 | 17 | 18 | message.channel.send(SatukEmbed.setDescription(` 19 | ${SatukeRole} (\`${SatukeRole.id}\`) adlı role ait bilgiler aşağıda verilmiştir. 20 | 21 | ${Config.Emoji} **Rol Rengi:** \`${SatukeRole.hexColor}\` 22 | ${Config.Emoji} **Rol ID'si:** \`${SatukeRole.id}\` 23 | ${Config.Emoji} **Roldeki Kişi Sayısı**: \`${SatukeRole.members.size}\` 24 | 25 | 26 | **Roldeki kişiler:** 27 | 28 | ${SatukeRole.members.size <= 15 ? satArray.join("\n") : `Bulamadım. ( **${SatukeRole.members.size}** kişi var! )`} 29 | `)) 30 | 31 | }; 32 | 33 | module.exports.config = { 34 | name: "rolbilgi", 35 | description: "Rolün infolarını atar", 36 | usage: "rolbilgi", 37 | guildOnly: false, 38 | enabled: true, 39 | aliases: ["rb", "rolinfo","rol-bilgi"], 40 | }; 41 | -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-Kayıtsız.js: -------------------------------------------------------------------------------- 1 | const { Message, Client, MessageEmbed } = require("discord.js"); 2 | const Settings = require("../../Configuration/Settings.json"); 3 | 4 | const User = require("../../Models/Database/User"); 5 | /** 6 | * @param {Client} client 7 | * @param {Message} message 8 | * @param {Array} args 9 | */ 10 | module.exports.execute = async (client, message, args) => { 11 | if (!message.member.hasPermission("ADMINISTRATOR") && !Settings.Perm.Commander.some(role => message.member.roles.cache.has(role))) return message.reply("bunu yapmak için yetkin yok."); 12 | 13 | let victim = message.mentions.members.first() || (args[0] ? await message.guild.getMember(args[0]) : undefined); 14 | if (!victim) return message.reply("bir kullanıcı etiketlemelisin ya da ID'sini girmelisin."); 15 | 16 | if (victim.roles.highest.position >= message.member.roles.highest.position) return message.reply("senin rolünden üstte ya da aynı roldeki birisini kayıt edemezsin."); 17 | if (!victim.manageable) return message.reply("bu kişinin yetkisi benden yüksek."); 18 | 19 | let roles = Settings.Roles.Unregistered; 20 | victim.setRoles(roles); 21 | 22 | User.updateOne({ Id: message.author.id, Authorized: true }, { $inc: { "Usage.Unregistered": 1 } }).exec(); 23 | message.channel.send(`${victim}, ${message.author} tarafından **kayıtsız** rolüne atıldı.`); 24 | } 25 | 26 | module.exports.settings = { 27 | Commands: ["unregister", "kayıtsız", "kayitsiz"], 28 | Usage: "unregister <@member|id>", 29 | Description: "Bahsettiğin kişiyi sunucuda kayıtsıza atarsın.", 30 | Activity: true, 31 | Category: "Penal", 32 | cooldown: 10000 33 | } -------------------------------------------------------------------------------- /Astre_Executive/commands/G-Toplantı.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require('discord.js') 2 | const data = require('quick.db') 3 | const config = require('../config.json') 4 | 5 | exports.run = async (client, message, args) => { 6 | if(!message.member.hasPermission('ADMINISTRATOR')) return message.channel.send(new MessageEmbed() 7 | .setDescription(`${message.author} Bu komudunu kullanmaya yetkin yetmiyor.`) 8 | .setAuthor(message.author.tag, message.author.avatarURL({dynamic:true})) 9 | .setColor(config.NoEmbed)) 10 | 11 | let members = message.guild.members.cache.filter(member => member.roles.cache.has(config.Katıldı) && member.voice.channelID != config.ToplantıKanal); 12 | members.array().forEach((member, index) => {setTimeout(() => {member.roles.remove(config.Katıldı).catch();}, index * 1250)}); 13 | 14 | let verildi = message.member.voice.channel.members.filter(member => !member.roles.cache.has(config.Katıldı) && !member.user.bot) 15 | verildi.array().forEach((member, index) => {setTimeout(() => {member.roles.add(config.Katıldı).catch();}, 16 | index * 1250)}); 17 | 18 | message.channel.send(new MessageEmbed() 19 | .setDescription(`${config.yıldız} <@&${config.Katıldı}> Rolü <#${config.ToplantıKanal}> Kanalında Bulunan Üyelere Dağıtılmaya Başladı.\n\n ${config.True} Toplam Rol Verilen Kullanıcı: \n \`${verildi.size}\` \n\n ${config.False} Rolleri Geri Alınan Kullanıcı Sayısı: \n \`${members.size}\``) 20 | .setColor('#2F3136') 21 | .setTitle(`Toplantı yoklaması alındı..`) 22 | .setFooter(config.Footer) 23 | .setThumbnail(message.guild.iconURL({dynamic:true})))} 24 | 25 | module.exports.config = { 26 | name: "toplantı", 27 | description: "", 28 | usage: "toplantı", 29 | enabled: true, 30 | aliases: ["katıldı","toplantı","yoklama"], 31 | }; 32 | -------------------------------------------------------------------------------- /Astre_Executive/commands/G-Yetkili-say.js: -------------------------------------------------------------------------------- 1 | const moment = require("moment"); 2 | const config = require("../config.json"); 3 | moment.locale("tr"); 4 | 5 | module.exports.run = async (client, message, args, embed) => { 6 | if(message.member.hasPermission('ADMINISTRATOR')) { 7 | let qqq = args[0]; 8 | if(!qqq) return message.channel.send(embed.setDescription(`Bir veri belirtiniz.`)).catch(e => { }) 9 | 10 | if(qqq == "say"){ 11 | let sesdedeğil = message.guild.members.cache.filter(x => x.roles.cache.has(config.Yetkili)).filter(y => !y.voice.channel&& y.presence.status!="offline") 12 | message.channel.send(` 13 | Seste Olmayan Yetkililer: 14 | ${sesdedeğil.map(s => `${s}`).join(', ')}`) 15 | } 16 | 17 | if(qqq == "dm"){ 18 | let kullanıcı = message.guild.members.cache.filter(s => s.roles.cache.has(config.Yetkili)).filter(s => !s.voice.channel).size 19 | for(var i = 0;i < kullanıcı;i++){ 20 | let a = message.guild.members.cache.filter(s => s.roles.cache.has(config.Yetkili)).filter(s => !s.voice.channel).map(a => a)[i] 21 | const userDM = await a.createDM() 22 | try { 23 | await userDM.send("Sese girsene güzel qardesm") 24 | } catch { 25 | await message.channel.send(`<@${a.user.id}> adlı kullanıcının dm kutusu kapalı. Müsaitsen public odalara değilsen alone odalarına geçiş yapabilirsin`) 26 | } 27 | } 28 | } 29 | 30 | } else 31 | return message.channel.send(embed.setDescription(`Bu Komutu Kullanmak İçin Gerekli Yetkiye Sahip Değilsin.`)) 32 | } 33 | 34 | module.exports.config = { 35 | name: "yetkili", 36 | description: "yetkili", 37 | usage: "yetkili", 38 | enabled: true, 39 | aliases: ["yetkili"], 40 | }; 41 | -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-Elite.js: -------------------------------------------------------------------------------- 1 | 2 | const {Client, MessageEmbed} = require("discord.js"); 3 | const Settings = require("../../Configuration/Settings.json"); 4 | const Config = require("../../Configuration/Config.json"); 5 | 6 | const Helper = require("../../Utils/Helper"); 7 | const PM = require("../../Managers/PenalManager"); 8 | 9 | /** 10 | * @param {Client} client 11 | * @param {Message} message 12 | * @param {Array} args 13 | */ 14 | module.exports.execute = async (client, message, args) => { 15 | 16 | if(!message.member.roles.cache.get(Settings.Perm.Commander) && !message.member.hasPermission('ADMINISTRATOR')) 17 | 18 | 19 | return message.channel.send(new MessageEmbed() 20 | .setAuthor(message.author.tag, message.author.avatarURL()({dynamic: true})) 21 | .setDescription(`${Settings.emojiler.iptal} Bunu kullanmaya yetkin yetmiyor!`) 22 | .setFooter(Config.Footer) 23 | .setColor('2F3136')) 24 | 25 | let yulaf = message.mentions.members.first() || message.guild.members.cache.get(args[0]); 26 | if(!yulaf) return message.channel.send(new MessageEmbed() 27 | .setDescription(`${Settings.emojiler.iptal} Geçerli bir \`@Yulaf/ID\` belirtmelisin`) 28 | .setColor("#2F3136")).then(msg => msg.delete({timeout: 5000})) 29 | 30 | const embed = new MessageEmbed() 31 | .setColor('2F3136') 32 | .setFooter(Config.Footer) 33 | .setDescription(`${yulaf}, kullanıcısına <@&${Settings.Perm.Vip}> rolü verildi!`) 34 | .setTimestamp() 35 | message.channel.send(embed) 36 | 37 | yulaf.roles.add(Settings.Perm.Vip)} 38 | 39 | module.exports.settings = { 40 | Commands: ["vip","gold","elite"], 41 | Usage: "vip", 42 | Description: "Bahsettiğin kişiyi sunucudan atarsın.", 43 | Category: "Penal", 44 | Activity: true 45 | } -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-Coder.js: -------------------------------------------------------------------------------- 1 | 2 | const {Client, MessageEmbed} = require("discord.js"); 3 | const Settings = require("../../Configuration/Settings.json"); 4 | const Config = require("../../Configuration/Config.json"); 5 | 6 | const Helper = require("../../Utils/Helper"); 7 | const PM = require("../../Managers/PenalManager"); 8 | 9 | /** 10 | * @param {Client} client 11 | * @param {Message} message 12 | * @param {Array} args 13 | */ 14 | module.exports.execute = async (client, message, args) => { 15 | 16 | if(!message.member.roles.cache.get(Settings.Perm.Commander) && !message.member.hasPermission('ADMINISTRATOR')) 17 | 18 | 19 | return message.channel.send(new MessageEmbed() 20 | .setAuthor(message.author.tag, message.author.avatarURL()({dynamic: true})) 21 | .setDescription(`${Settings.emojiler.iptal} Bunu kullanmaya yetkin yetmiyor!`) 22 | .setFooter(Config.Footer) 23 | .setColor('2F3136')) 24 | 25 | let yulaf = message.mentions.members.first() || message.guild.members.cache.get(args[0]); 26 | if(!yulaf) return message.channel.send(new MessageEmbed() 27 | .setDescription(`${Settings.emojiler.iptal} Geçerli bir \`@yulaf/ID\` belirtmelisin`) 28 | .setColor("#2F3136")).then(msg => msg.delete({timeout: 5000})) 29 | 30 | const embed = new MessageEmbed() 31 | .setColor('2F3136') 32 | .setFooter(Config.Footer) 33 | .setDescription(`${yulaf}, kullanıcısına <@&${Settings.Perm.Coder}> rolü verildi!`) 34 | .setTimestamp() 35 | message.channel.send(embed) 36 | 37 | yulaf.roles.add(Settings.Perm.Coder)} 38 | 39 | module.exports.settings = { 40 | Commands: ["yazılımcı","coder"], 41 | Usage: "yazılımcı", 42 | Description: "Bahsettiğin kişiyi sunucudan atarsın.", 43 | Category: "Penal", 44 | Activity: true 45 | } -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-Cookies.js: -------------------------------------------------------------------------------- 1 | 2 | const {Client, MessageEmbed} = require("discord.js"); 3 | const Settings = require("../../Configuration/Settings.json"); 4 | const Config = require("../../Configuration/Config.json"); 5 | 6 | const Helper = require("../../Utils/Helper"); 7 | const PM = require("../../Managers/PenalManager"); 8 | 9 | /** 10 | * @param {Client} client 11 | * @param {Message} message 12 | * @param {Array} args 13 | */ 14 | module.exports.execute = async (client, message, args) => { 15 | 16 | if(!message.member.roles.cache.get(Settings.Perm.Commander) && !message.member.hasPermission('ADMINISTRATOR')) 17 | 18 | 19 | return message.channel.send(new MessageEmbed() 20 | .setAuthor(message.author.tag, message.author.avatarURL()({dynamic: true})) 21 | .setDescription(`${Settings.emojiler.iptal} Bunu kullanmaya yetkin yetmiyor!`) 22 | .setFooter(Config.Footer) 23 | .setColor('2F3136')) 24 | 25 | let yulaf = message.mentions.members.first() || message.guild.members.cache.get(args[0]); 26 | if(!yulaf) return message.channel.send(new MessageEmbed() 27 | .setDescription(`${Settings.emojiler.iptal} Geçerli bir \`@Yulaf/ID\` belirtmelisin`) 28 | .setColor("#2F3136")).then(msg => msg.delete({timeout: 5000})) 29 | 30 | const embed = new MessageEmbed() 31 | .setColor('2F3136') 32 | .setFooter(Config.Footer) 33 | .setDescription(`${yulaf}, kullanıcısına <@&${Settings.Perm.yulafCookies}> rolü verildi!`) 34 | .setTimestamp() 35 | message.channel.send(embed) 36 | 37 | yulaf.roles.add(Settings.Perm.yulafCookies)} 38 | 39 | module.exports.settings = { 40 | Commands: ["yulaf"], 41 | Usage: "yulaf", 42 | Description: "Bahsettiğin kişiyi sunucudan atarsın.", 43 | Category: "Penal", 44 | Activity: true 45 | } -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-Müzisyen.js: -------------------------------------------------------------------------------- 1 | 2 | const {Client, MessageEmbed} = require("discord.js"); 3 | const Settings = require("../../Configuration/Settings.json"); 4 | const Config = require("../../Configuration/Config.json"); 5 | 6 | const Helper = require("../../Utils/Helper"); 7 | const PM = require("../../Managers/PenalManager"); 8 | 9 | /** 10 | * @param {Client} client 11 | * @param {Message} message 12 | * @param {Array} args 13 | */ 14 | module.exports.execute = async (client, message, args) => { 15 | 16 | if(!message.member.roles.cache.get(Settings.Perm.Commander) && !message.member.hasPermission('ADMINISTRATOR')) 17 | 18 | 19 | return message.channel.send(new MessageEmbed() 20 | .setAuthor(message.author.tag, message.author.avatarURL()({dynamic: true})) 21 | .setDescription(`${Settings.emojiler.iptal} Bunu kullanmaya yetkin yetmiyor!`) 22 | .setFooter(Config.Footer) 23 | .setColor('2F3136')) 24 | 25 | let yulaf = message.mentions.members.first() || message.guild.members.cache.get(args[0]); 26 | if(!yulaf) return message.channel.send(new MessageEmbed() 27 | .setDescription(`${Settings.emojiler.iptal} Geçerli bir \`@Yulaf/ID\` belirtmelisin`) 28 | .setColor("#2F3136")).then(msg => msg.delete({timeout: 5000})) 29 | 30 | const embed = new MessageEmbed() 31 | .setColor('2F3136') 32 | .setFooter(Config.Footer) 33 | .setDescription(`${yulaf}, kullanıcısına <@&${Settings.Perm.Müzisyen}> rolü verildi!`) 34 | .setTimestamp() 35 | message.channel.send(embed) 36 | 37 | yulaf.roles.add(Settings.Perm.Müzisyen)} 38 | 39 | module.exports.settings = { 40 | Commands: ["müzisyen","vokal"], 41 | Usage: "vokal", 42 | Description: "Bahsettiğin kişiyi sunucudan atarsın.", 43 | Category: "Penal", 44 | Activity: true 45 | } -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-Sponsor.js: -------------------------------------------------------------------------------- 1 | 2 | const {Client, MessageEmbed} = require("discord.js"); 3 | const Settings = require("../../Configuration/Settings.json"); 4 | const Config = require("../../Configuration/Config.json"); 5 | 6 | const Helper = require("../../Utils/Helper"); 7 | const PM = require("../../Managers/PenalManager"); 8 | 9 | /** 10 | * @param {Client} client 11 | * @param {Message} message 12 | * @param {Array} args 13 | */ 14 | module.exports.execute = async (client, message, args) => { 15 | 16 | if(!message.member.roles.cache.get(Settings.Perm.Commander) && !message.member.hasPermission('ADMINISTRATOR')) 17 | 18 | 19 | return message.channel.send(new MessageEmbed() 20 | .setAuthor(message.author.tag, message.author.avatarURL()({dynamic: true})) 21 | .setDescription(`${Settings.emojiler.iptal} Bunu kullanmaya yetkin yetmiyor!`) 22 | .setFooter(Config.Footer) 23 | .setColor('2F3136')) 24 | 25 | let yulaf = message.mentions.members.first() || message.guild.members.cache.get(args[0]); 26 | if(!yulaf) return message.channel.send(new MessageEmbed() 27 | .setDescription(`${Settings.emojiler.iptal} Geçerli bir \`@Yulaf/ID\` belirtmelisin`) 28 | .setColor("#2F3136")).then(msg => msg.delete({timeout: 5000})) 29 | 30 | const embed = new MessageEmbed() 31 | .setColor('2F3136') 32 | .setFooter(Config.Footer) 33 | .setDescription(`${yulaf}, kullanıcısına <@&${Settings.Perm.Sponsor}> rolü verildi!`) 34 | .setTimestamp() 35 | message.channel.send(embed) 36 | 37 | yulaf.roles.add(Settings.Perm.Sponsor)} 38 | 39 | module.exports.settings = { 40 | Commands: ["Sponsor","sponsor"], 41 | Usage: "Sponsor", 42 | Description: "Bahsettiğin kişiyi sunucudan atarsın.", 43 | Category: "General", 44 | Activity: true 45 | } -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-Streamer.js: -------------------------------------------------------------------------------- 1 | 2 | const {Client, MessageEmbed} = require("discord.js"); 3 | const Settings = require("../../Configuration/Settings.json"); 4 | const Config = require("../../Configuration/Config.json"); 5 | 6 | const Helper = require("../../Utils/Helper"); 7 | const PM = require("../../Managers/PenalManager"); 8 | 9 | /** 10 | * @param {Client} client 11 | * @param {Message} message 12 | * @param {Array} args 13 | */ 14 | module.exports.execute = async (client, message, args) => { 15 | 16 | if(!message.member.roles.cache.get(Settings.Perm.Commander) && !message.member.hasPermission('ADMINISTRATOR')) 17 | 18 | 19 | return message.channel.send(new MessageEmbed() 20 | .setAuthor(message.author.tag, message.author.avatarURL()({dynamic: true})) 21 | .setDescription(`${Settings.emojiler.iptal} Bunu kullanmaya yetkin yetmiyor!`) 22 | .setFooter(Config.Footer) 23 | .setColor('2F3136')) 24 | 25 | let yulaf = message.mentions.members.first() || message.guild.members.cache.get(args[0]); 26 | if(!yulaf) return message.channel.send(new MessageEmbed() 27 | .setDescription(`${Settings.emojiler.iptal} Geçerli bir \`@Yulaf/ID\` belirtmelisin`) 28 | .setColor("#2F3136")).then(msg => msg.delete({timeout: 5000})) 29 | 30 | const embed = new MessageEmbed() 31 | .setColor('2F3136') 32 | .setFooter(Config.Footer) 33 | .setDescription(`${yulaf}, kullanıcısına <@&${Settings.Perm.Streamer}> rolü verildi!`) 34 | .setTimestamp() 35 | message.channel.send(embed) 36 | 37 | yulaf.roles.add(Settings.Perm.Streamer)} 38 | 39 | module.exports.settings = { 40 | Commands: ["streamer","yayıncı"], 41 | Usage: "streamer", 42 | Description: "Bahsettiğin kişiyi sunucudan atarsın.", 43 | Category: "Penal", 44 | Activity: true 45 | } -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-TagTara.js: -------------------------------------------------------------------------------- 1 | const { Message, Client, MessageEmbed } = require("discord.js"); 2 | const Settings = require("../../Configuration/Settings.json"); 3 | const Config = require("../../Configuration/Config.json"); 4 | /** 5 | * @param {Client} client 6 | * @param {Message} message 7 | * @param {Array} args 8 | */ 9 | 10 | module.exports.execute = async (client, message, args) => { 11 | if (!message.member.hasPermission("ADMINISTRATOR")) return message.reply('Bunu Kullanmaya Yetkin YOK!') 12 | let embed = new MessageEmbed().setColor('RANDOM') 13 | let tag = Settings.Tag.Tag 14 | let tagrol = Settings.Tag.Role 15 | 16 | let taglılar = message.guild.members.cache.filter(s => s.user.username.includes(tag) && !s.roles.cache.has(tagrol)) 17 | let tagsızlar = message.guild.members.cache.filter(s => !s.user.username.includes(tag) && s.roles.cache.has(tagrol)) 18 | 19 | taglılar.array().forEach((yulaf, index) => { 20 | setTimeout(async() => { 21 | yulaf.roles.add(tagrol) 22 | }, index * 1000) 23 | 24 | }) 25 | tagsızlar.array().forEach((yulaf, index) => { 26 | setTimeout(async() => { 27 | yulaf.roles.remove(tagrol) 28 | }, index * 1000) 29 | }) 30 | message.channel.send(embed.setDescription(`${Settings.emojiler.yıldız} **${taglılar.size}** Kullanıcıya taglı rolü verilecek.\n ${Settings.emojiler.yıldız} **${tagsızlar.size}** Kullanıcıdan taglı rolü alınacak.`)) 31 | 32 | } 33 | module.exports.settings = { 34 | Commands: ["tag-tara", "tagt"], 35 | Usage: "tag-tara", 36 | Description: "Tüm Herkesi Belirlediğin ID Kanalına çeker.", 37 | Category: "General", 38 | Activity: true 39 | } -------------------------------------------------------------------------------- /Astre_Executive/commands/G-Rolsüz.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js"); 2 | const config = require("../config.json"); 3 | 4 | 5 | module.exports.run = async (client, message, args) => { 6 | 7 | if(![(client.config.Owner)].some(role => message.member.roles.cache.get(role)) && (!message.member.hasPermission("ADMINISTRATOR"))) 8 | return message.channel.send(new Discord.MessageEmbed() 9 | .setDescription(`${message.author} Komutu kullanmak için yetkin bulunmamakta.`) 10 | .setColor('2F3136') 11 | .setAuthor(message.member.displayName, message.author.avatarURL({ dynamic: true })).setTimestamp()).then(x => x.delete({timeout: 5000})); 12 | 13 | 14 | let satuke = message.guild.members.cache.filter(m => m.roles.cache.filter(r => r.id !== message.guild.id).size == 0) 15 | 16 | if(args[0] == "ver") { 17 | satuke.forEach(r => { 18 | r.roles.add(client.config.unregisterRoles) 19 | }) 20 | const khold = new Discord.MessageEmbed() 21 | .setFooter(config.Footer) 22 | .setAuthor(" "+message.author.username +" ", message.author.avatarURL()) 23 | .setColor("2F3136") 24 | .setDescription("Sunucuda rolü olmayan \`"+ satuke.size +"\` kişiye \`Kayıtsız\` rolü verildi") 25 | message.channel.send(khold).then(m => message.react((client.config.onay))) 26 | } else if(!args[0]) { 27 | const khold1 = new Discord.MessageEmbed() 28 | .setAuthor(""+message.author.username +" ", message.author.avatarURL()) 29 | .setFooter(config.Footer) 30 | .setColor("2F3136") 31 | .setDescription("Sunucumuzda rolü olmayan \`"+ satuke.size +"\` kişi var.") 32 | message.channel.send(khold1) 33 | }} 34 | module.exports.config = { 35 | name: "rolsüz", 36 | description: "kayıtsız rolüne sahip olmayan üyeleri kayıtsız rolü verir.", 37 | usage: "rolsüz", 38 | enabled: true, 39 | aliases: ["rolsüz"], 40 | }; 41 | -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/General/G-Tasarımcı.js: -------------------------------------------------------------------------------- 1 | 2 | const {Client, MessageEmbed} = require("discord.js"); 3 | const Settings = require("../../Configuration/Settings.json"); 4 | const Config = require("../../Configuration/Config.json"); 5 | 6 | const Helper = require("../../Utils/Helper"); 7 | const PM = require("../../Managers/PenalManager"); 8 | 9 | /** 10 | * @param {Client} client 11 | * @param {Message} message 12 | * @param {Array} args 13 | */ 14 | module.exports.execute = async (client, message, args) => { 15 | 16 | if(!message.member.roles.cache.get(Settings.Perm.Commander) && !message.member.hasPermission('ADMINISTRATOR')) 17 | 18 | 19 | return message.channel.send(new MessageEmbed() 20 | .setAuthor(message.author.tag, message.author.avatarURL()({dynamic: true})) 21 | .setDescription(`${Settings.emojiler.iptal} Bunu kullanmaya yetkin yetmiyor!`) 22 | .setFooter(Config.Footer) 23 | .setColor('2F3136')) 24 | 25 | let yulaf = message.mentions.members.first() || message.guild.members.cache.get(args[0]); 26 | if(!yulaf) return message.channel.send(new MessageEmbed() 27 | .setDescription(`${Settings.emojiler.iptal} Geçerli bir \`@Yulaf/ID\` belirtmelisin`) 28 | .setColor("#2F3136")).then(msg => msg.delete({timeout: 5000})) 29 | 30 | const embed = new MessageEmbed() 31 | .setColor('2F3136') 32 | .setFooter(Config.Footer) 33 | .setDescription(`${yulaf}, kullanıcısına <@&${Settings.Perm.Tasarımcı}> rolü verildi!`) 34 | .setTimestamp() 35 | message.channel.send(embed) 36 | 37 | yulaf.roles.add(Settings.Perm.Tasarımcı)} 38 | 39 | module.exports.settings = { 40 | Commands: ["tasarımcı","design","designer"], 41 | Usage: "tasarımcı", 42 | Description: "Bahsettiğin kişiyi sunucudan atarsın.", 43 | Category: "Penal", 44 | Activity: true 45 | } -------------------------------------------------------------------------------- /Astre_Executive/commands/K-Nick.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require("discord.js"); 2 | const config = require('../config.json'); 3 | 4 | module.exports.run = async (client, message, args) => { 5 | let member = message.mentions.members.first() || message.guild.members.cache.get(args[0]); 6 | let embed = new MessageEmbed().setAuthor(message.member.displayName, message.author.displayAvatarURL({ dynamic: true })).setColor(client.config.embedColor); 7 | if (!member) return message.channel.send(embed.setDescription("Kullanıcı belirtmelisin")).then(x => x.delete({ timeout: 5500 })); 8 | if (message.member.roles.highest.position <= member.roles.highest.position) return message.channel.send(embed.setDescription(`${member} bu işlemi gerçekleştiremiyorum`)).then(x => x.delete({ timeout: 5000 })); 9 | var newName; 10 | args = args.filter(a => a.trim().length).slice(1); 11 | if (client.config.name_age) { 12 | let name = args.filter(a => isNaN(a)).map(a => a.charAt(0).replace("i", "İ").toUpperCase() + a.slice(1)).join(" "); 13 | let age = args.find(a => !isNaN(a)) || undefined; 14 | if (!name || !age) return message.channel.send(embed.setDescription(`Geçerli bir isim ve yaş belirtmelisin!`)).then(x => x.delete({ timeout: 5000 })); 15 | newName = `${member.user.tag.includes(client.config.tag) ? client.config.tag : client.config.defaultTag} ${name} | ${age}`; 16 | } else { 17 | newName = `${member.user.tag.includes(client.config.tag) ? client.config.tag : client.config.defaultTag} ${args.join(" ")}`; 18 | }; 19 | member.setNickname(newName).catch(err => { return undefined; }); 20 | message.react(client.config.onay); 21 | }; 22 | 23 | module.exports.config = { 24 | name: "isim", 25 | description: "Belirtilen üyenin ismini düzenler.", 26 | usage: "isim <@üye> [yaş]", 27 | aliases: ["nick", "name", "İ","i"], 28 | }; 29 | -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/Funny/F-ZarAt.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js"), 2 | client = new Discord.Client(); 3 | 4 | /** 5 | * @param {Client} client 6 | * @param {Message} message 7 | * @param {Array} args 8 | */ 9 | 10 | module.exports.execute = async (client, message, args) => { 11 | 12 | if (!args[0]) return message.channel.send(`Zar atmak için \`.zar 6\`, \`.zar 20\` veya \`.zar çift\` yazmanız gerek.`); 13 | 14 | if (args[0] == '6') {message.channel.send('Zar atılıyor..').then(a => { 15 | var zar6 = ['1', '2', '3', '4', '5', '6']; 16 | setTimeout(() => { 17 | a.edit(`Zar atıldı. Çıkan sonuç: \`${Math.floor(Math.random()*zar6.length)}\` Abi şunu fark ediyorsun..`) 18 | }, 1000); 19 | })} 20 | 21 | else if (args[0] == '20') {message.channel.send('Zar atılıyor..').then(a => { 22 | var zar20 = ['1', '2', '3', '4', '5', '6',"7","8","9","10","11","12","13","14","15","16","17","18","19","20"]; 23 | setTimeout(() => { 24 | a.edit(`Zar atıldı. Çıkan sonuç: \`${Math.floor(Math.random()*zar20.length)}\` Abi şunu fark ediyorsun..`) 25 | }, 1000); 26 | 27 | })} 28 | 29 | else if (args[0] == "çift") {message.channel.send("Zar atılıyor..").then(a => { 30 | var zar1 = ["1", "2", "3", "4", "5", "6"]; 31 | var zar2 = ["1", "2", "3", "4", "5", "6"]; 32 | setTimeout(() => { 33 | a.edit(`Zar atıldı. Çıkan sonuç: \`${Math.floor(Math.random()*zar1.length)}\` \`${Math.floor(Math.random()*zar2.length)}\` Abi şunu fark ediyorsun..`) 34 | }, 1000); 35 | })} 36 | else { 37 | message.channel.send(`Zar atmak için \`.zar 6\`, \`.zar 20\` veya \`.zar çift\` yazmanız gerek.`); 38 | } 39 | }; 40 | 41 | module.exports.settings = { 42 | Commands: ["zarat"], 43 | Usage: "Zarat", 44 | Description: "Bahsettiğin kişiyi sunucudan atarsın.", 45 | Category: "Funny", 46 | Activity: true 47 | } -------------------------------------------------------------------------------- /Astre_Statistic/src/commands/tasks.js: -------------------------------------------------------------------------------- 1 | const task = require("../schemas/task"); 2 | const conf = require("../configs/config.json"); 3 | const moment = require("moment"); 4 | require("moment-duration-format"); 5 | 6 | module.exports = { 7 | conf: { 8 | aliases: ["görevler"], 9 | name: "tasks", 10 | help: "görevler [kullanıcı]", 11 | enabled: conf.coinSystem 12 | }, 13 | 14 | /** 15 | * @param {Client} client 16 | * @param {Message} message 17 | * @param {Array} args 18 | * @param {MessageEmbed} embed 19 | * @returns {Promise} 20 | */ 21 | run: async (client, message, args, embed) => { 22 | const member = message.mentions.members.first() || message.guild.members.cache.get(args[0]) || message.member; 23 | const tasks = await task.find({ guildID: message.guild.id, userID: member.user.id }); 24 | embed.setThumbnail("https://img.itch.zone/aW1nLzIzNzE5MzEuZ2lm/original/GcEpW9.gif"); 25 | message.channel.sendEmbed(embed.setColor("GRAY").setDescription(` 26 | Toplam Görev Sayısı: \`${tasks.length}\` 27 | Tamamlanmış Görev Sayısı: \`${tasks.filter((x) => x.completed).length}\` 28 | Tamamlanmamış Görev Sayısı: \`${tasks.filter((x) => !x.completed).length}\` 29 | Aktif Görev Sayısı: \`${tasks.filter((x) => x.active).length}\` 30 | 31 | ${tasks.filter((x) => x.active).map((x) => `\`#${x.id}\` ${x.message} \n${x.completedCount >= x.count ? conf.emojis.coin + " **Tamamlandı!**" : `${client.progressBar(x.completedCount, x.count, 8)} \`${x.type === "ses" ? `${moment.duration(x.completedCount).format("H [saat], m [dk], s [sn]")} / ${moment.duration(x.count).format("H [saat], m [dk], s [sn]")}` : `${x.completedCount} / ${x.count}`}\` \nKalan Süre: \`${moment.duration(x.finishDate - Date.now()).format("H [saat], m [dakika] s [saniye]")}\` \nÖdül: ${conf.emojis.coin} \`${x.prizeCount} coin\``}`).join("\n\n")} 32 | `)); 33 | } 34 | }; -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/Criminal/C-Reklam.js: -------------------------------------------------------------------------------- 1 | const {Client, Message} = require("discord.js"); 2 | const Settings = require("../../Configuration/Settings.json"); 3 | const Helper = require("../../Utils/Helper"); 4 | 5 | const PM = require("../../Managers/PenalManager"); 6 | 7 | /** 8 | * @param {Client} client 9 | * @param {Message} message 10 | * @param {Array} args 11 | */ 12 | module.exports.execute = async (client, message, args) => { 13 | if(!message.member.hasPermission("ADMINISTRATOR") && !Settings.Penals.Jail.AuthRoles.some(authRole => message.member.roles.cache.has(authRole))) return message.reply("Bunu yapmaya yetkin yetmiyor :c"); 14 | 15 | let victim = message.mentions.users.first() || client.users.cache.get(args[0]) || await Helper.GetUser(args[0]); 16 | if(!victim) return message.reply(`Geçerli bir \`@Yulaf/ID\` belirtmelisin.`); 17 | 18 | let reason = `Reklam` 19 | 20 | let member = await message.guild.getMember(victim.id); 21 | if(member && member.roles.highest.position >= message.member.roles.highest.position) return message.reply("senin rolünden üstte ya da aynı roldeki birisine ceza veremezsin.") 22 | 23 | if(member && member.manageable) PM.setRoles(member, Settings.Penals.Jail.Role); 24 | 25 | let document = await PM.addPenal(victim.id, message.author.id, PM.Types.REKLAM, reason); 26 | 27 | message.channel.send(`${victim}, ${message.author} Tarafından sunucuda \`Reklam\` yaptığı için cezalandırıldı, Ceza Numarası - (\`#${document.Id}\`) ${Settings.emojiler.tik}`) 28 | message.guild.log(message.author, victim, document, Settings.Penals.Jail.Log); 29 | } 30 | 31 | module.exports.settings = { 32 | Commands: ["Reklam","reklam"], 33 | Usage: "reklam <@user|id> ", 34 | Description: "Bahsettiğin kişiyi sunucuda kalıcı olarak cezalandırırsın.", 35 | Category: "Penal", 36 | Activity: true 37 | } -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/Criminal/C-Uyar.js: -------------------------------------------------------------------------------- 1 | const {Client, Message} = require("discord.js"); 2 | const Settings = require("../../Configuration/Settings.json"); 3 | const Helper = require("../../Utils/Helper"); 4 | 5 | const PM = require("../../Managers/PenalManager"); 6 | 7 | /** 8 | * @param {Client} client 9 | * @param {Message} message 10 | * @param {Array} args 11 | */ 12 | 13 | module.exports.execute = async (client, message, args) => { 14 | if(!message.member.hasPermission("ADMINISTRATOR") && !Settings.Penals.Warn.AuthRoles.some(authRole => message.member.roles.cache.has(authRole))) return message.reply("Bunu yapmaya yetkin yetmiyor :c"); 15 | 16 | let victim = message.mentions.users.first() || client.users.cache.get(args[0]) || await Helper.GetUser(args[0]); 17 | if(!victim) return message.reply(`Geçerli bir \`@Yulaf/ID\` belirtmelisin.`); 18 | 19 | let reason = args.splice(1).join(" "); 20 | if(!reason) return message.reply("Geçerli \`Uyarı\` sebebi belirtmelisin."); 21 | 22 | let member = await message.guild.getMember(victim.id); 23 | if(member && member.roles.highest.position >= message.member.roles.highest.position) return message.reply("Senin rolünden üstte ya da aynı roldeki birisine ceza veremezsin.") 24 | 25 | let document = await PM.addPenal(victim.id, message.author.id, PM.Types.WARN, reason); 26 | 27 | message.channel.csend(`${victim}, ${message.author} Tarafından __**${reason}**__ Sebebiyle sunucuda \`Uyarıldı\`, Ceza Numarası - (\`#${document.Id}\`) ${Settings.emojiler.tik}`) 28 | message.guild.log(message.author, victim, document, Settings.Penals.Warn.Log); 29 | } 30 | 31 | module.exports.settings = { 32 | Commands: ["warn", "uyarı", "uyar"], 33 | Usage: "warn <@user|id> [reason]", 34 | Description: "Bahsettiğin kişiyi sunucuda uyarırsın.", 35 | Category: "Penal", 36 | Activity: true 37 | } -------------------------------------------------------------------------------- /Astre_Statistic/src/configs/ranks.json: -------------------------------------------------------------------------------- 1 | { 2 | "ranks": [ 3 | { 4 | "role": [ 5 | "859068531597508659" 6 | ], 7 | "coin": 27000 8 | }, 9 | { 10 | "role": [ 11 | "859068817220173854" 12 | ], 13 | "coin": 44000 14 | }, 15 | { 16 | "role": [ 17 | "859069078962176020" 18 | ], 19 | "coin": 65000 20 | }, 21 | { 22 | "role": [ 23 | "859058278700023830" 24 | ], 25 | "coin": 95000 26 | }, 27 | { 28 | "role": [ 29 | "859069391877439519" 30 | ], 31 | "coin": 148000 32 | }, 33 | { 34 | "role": [ 35 | "859057520365404162" 36 | ], 37 | "coin": 190000 38 | }, 39 | { 40 | "role": [ 41 | "859057246456905758" 42 | ], 43 | "coin": 245000 44 | }, 45 | { 46 | "role": [ 47 | "859062836709687316" 48 | ], 49 | "coin": 305000 50 | }, 51 | { 52 | "role": [ 53 | "859057999560835123" 54 | ], 55 | "coin": 390000 56 | }, 57 | { 58 | "role": [ 59 | "859053685471313950" 60 | ], 61 | "coin": 475000 62 | }, 63 | { 64 | "role": [ 65 | "859048361248161802" 66 | ], 67 | "coin": 565000 68 | }, 69 | { 70 | "role": [ 71 | "864880312408211486" 72 | ], 73 | "coin": 660000 74 | }, 75 | { 76 | "role": [ 77 | "864880305792745502" 78 | ], 79 | "coin":840000 80 | }, 81 | { 82 | "role": [ 83 | "864880301838696498" 84 | ], 85 | "coin":1100000 86 | } 87 | 88 | ], 89 | "tasks": [ 90 | "858053717223800852" 91 | ] 92 | } -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/Criminal/C-Ban.js: -------------------------------------------------------------------------------- 1 | const {Client, Message} = require("discord.js"); 2 | const Settings = require("../../Configuration/Settings.json"); 3 | const Helper = require("../../Utils/Helper"); 4 | 5 | const PM = require("../../Managers/PenalManager"); 6 | 7 | /** 8 | * @param {Client} client 9 | * @param {Message} message 10 | * @param {Array} args 11 | */ 12 | module.exports.execute = async (client, message, args) => { 13 | if(!message.member.hasPermission("ADMINISTRATOR") && !Settings.Penals.Ban.AuthRoles.some(authRole => message.member.roles.cache.has(authRole))) return message.reply("Bunu yapmaya yetkin yetmiyor :c"); 14 | 15 | let victim = message.mentions.users.first() || client.users.cache.get(args[0]) || await Helper.GetUser(args[0]); 16 | if(!victim) return message.reply(`Geçerli bir \`@Yulaf/ID\` belirtmelisin`); 17 | 18 | let reason = args.splice(1).join(" "); 19 | if(!reason) return message.reply("Geçerli \`Ban\` sebebi belirtmelisin."); 20 | 21 | let member = await message.guild.getMember(victim.id); 22 | if(member && member.roles.highest.position >= message.member.roles.highest.position) return message.reply("Senin rolünden üstte ya da aynı roldeki birisini yasaklayamazsın.."); 23 | if(member && !member.bannable) return message.reply("Botta Bir Hata Var \`Yulaf'a\` Ulaşınız.") 24 | message.guild.members.ban(victim.id, { 25 | reason: `(${reason})` 26 | }).catch(); 27 | 28 | let document = await PM.addPenal(victim.id, message.author.id, PM.Types.BAN, reason); 29 | message.channel.send(`${victim}, ${message.author} tarafından **__${reason}__** sebebiyle sunucudan yasaklandı, Ceza Numarası - (\`#${document.Id}\`) ${Settings.emojiler.tik}`) 30 | message.react(Settings.emojiler.onayID) 31 | message.guild.log(message.author, victim, document, Settings.Penals.Ban.Log); 32 | } 33 | 34 | module.exports.settings = { 35 | Commands: ["ban", "cezalandır","yak","yasakla","yargı","yargi"], 36 | Usage: "ban <@user|id> [reason]", 37 | Description: "Bahsettiğin kişiyi sunucudan yasaklarsın.", 38 | Category: "Criminal", 39 | Activity: true 40 | } -------------------------------------------------------------------------------- /Astre_Executive/commands/G-Yasaklıtag.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require("discord.js"); 2 | const ayar = require("../config.json") 3 | const db = require("quick.db") 4 | exports.run = async(client, message, args) => { 5 | 6 | let embed = new MessageEmbed().setColor(ayar.embedColor).setTimestamp().setAuthor(message.author.tag, message.author.avatarURL({ dynamic: true })) 7 | if (args[0] === "ekle") { 8 | let data = await db.get(`yasaklitaglar.${message.guild.id}`) || [] 9 | let hedeftag = args[1] 10 | if (!hedeftag) return message.channel.send(embed.setDescription(`${message.author}, Bir tag belirtin.`)) 11 | if (data.includes(hedeftag)) return message.channel.send(embed.setDescription(`Bu tag zaten yasaklı listede bulunmakta.`)) 12 | db.push(`yasaklitaglar.${message.guild.id}`, hedeftag) 13 | message.channel.send(embed.setDescription(`\`${hedeftag}\` Tagı yasaklı taglar listesine eklendi. 14 | `)) 15 | } 16 | if (args[0] === "liste") { 17 | let data = await db.get(`yasaklitaglar.${message.guild.id}`) || [] 18 | message.channel.send(embed.setDescription(`\`•\` ${data.join('\n\`•\` ') || 'Bulunamadı.'}`)) 19 | } 20 | if (args[0] === "kaldır") { 21 | let data = await db.get(`yasaklitaglar.${message.guild.id}`) || [] 22 | let hedeftag = args[1] 23 | if (!hedeftag) return message.channel.send(embed.setDescription(`${message.author}, Bir tag belirtin.`)) 24 | if (!data.includes(hedeftag)) return message.channel.send(embed.setDescription(`Bu tag zaten yasaklı listede bulunmamakta.`)) 25 | db.set(`yasaklitaglar.${message.guild.id}`, data.filter(x => x !== hedeftag)) 26 | message.channel.send(embed.setDescription(`\`•\` \`${hedeftag}\` Tagı yasaklı tag listesinden kaldırıldı. 27 | `)) 28 | } 29 | if (!args[0]) { 30 | message.channel.send(embed.setDescription(`\`•\` Hatalı kullanım Örnek: .yasaklıtag ekle & kaldır & liste`)) 31 | } 32 | 33 | }; 34 | module.exports.config = { 35 | name: "yasaklı-tag", 36 | description: "", 37 | usage: "yasaklıtag", 38 | enabled: true, 39 | aliases: ["yasaklıtag"], 40 | }; 41 | -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/Criminal/C-Kick.js: -------------------------------------------------------------------------------- 1 | const {Client, Message} = require("discord.js"); 2 | const Settings = require("../../Configuration/Settings.json"); 3 | const Helper = require("../../Utils/Helper"); 4 | 5 | const PM = require("../../Managers/PenalManager"); 6 | 7 | /** 8 | * @param {Client} client 9 | * @param {Message} message 10 | * @param {Array} args 11 | */ 12 | module.exports.execute = async (client, message, args) => { 13 | if(!message.member.hasPermission("ADMINISTRATOR") && !Settings.Penals.Kick.AuthRoles.some(authRole => message.member.roles.cache.has(authRole))) 14 | return message.reply("Bu komudunu kullanmaya yetkin yetmiyor."); 15 | 16 | let victim = message.mentions.users.first() || client.users.cache.get(args[0]) || await Helper.GetUser(args[0]); 17 | if(!victim) return message.reply(`Geçerli bir \`@Yulaf/ID\` belirtmelisin.`); 18 | 19 | let reason = args.splice(1).join(" "); 20 | if(!reason) return message.reply("Geçerli \`Kick\` sebebi belirtmelisin."); 21 | 22 | let member = await message.guild.getMember(victim.id); 23 | if(!member) return message.reply(`${victim} Bu üye sunucuda bulunamıyor`); 24 | if(member && member.roles.highest.position >= message.member.roles.highest.position) return message.reply("Senden (Üst/Aynı) Roldeki birisini \`Kickleyemezsin.\`"); 25 | 26 | if(member && !member.kickable) return message.reply("Botta Bir Hata Var \`Yulaf'a\` Ulaşınız."); 27 | 28 | member.kick(`Atan kişi: ${message.author.tag}`).catch(); 29 | let document = await PM.addPenal(victim.id, message.author.id, PM.Types.KICK, reason); 30 | 31 | message.channel.send(`${victim}, ${message.author} Tarafından \`${reason}\` Sebebiyle sunucudan \`Atıldı\`, Ceza Numarası - (\`#${document.Id}\`) ${Settings.emojiler.tik}`) 32 | message.react(Settings.emojiler.onayID) 33 | message.guild.log(message.author, victim, document, Settings.Penals.Kick.Log); 34 | } 35 | 36 | module.exports.settings = { 37 | Commands: ["kick", "at"], 38 | Usage: "kick <@member/id> [reason]", 39 | Description: "Bahsettiğin kişiyi sunucudan atarsın.", 40 | Category: "Criminal", 41 | Activity: true 42 | } -------------------------------------------------------------------------------- /Astre_Executive/commands/G-Snipe.js: -------------------------------------------------------------------------------- 1 | const {MessageEmbed} = require('discord.js'); 2 | const db = require('quick.db'); 3 | const moment = require('moment'); 4 | require('moment-duration-format'); 5 | 6 | exports.run = async(client, message, args) => { 7 | 8 | let hembed = new MessageEmbed().setAuthor(message.member.displayName, message.author.avatarURL({dynamic: true})).setColor('RED') 9 | let embed = new MessageEmbed().setColor('#2F3136') 10 | 11 | if (message.member.roles.cache.has('859429678598979584') || message.member.roles.highest.position >= message.guild.roles.cache.get("859429678598979584").position) { 12 | let mesaj = db.get(`snipe.${message.guild.id}.${message.channel.id}`); 13 | if (!mesaj) { 14 | message.delete({timeout: 5000}) 15 | return message.channel.send(hembed.setDescription(`Bu kanalda silinmiş bir mesaj bulunmamakta.`)).then(msg => msg.delete({timeout: 5000}))} 16 | 17 | if(mesaj.icerik.toLowerCase().includes('discord.gg/') || mesaj.icerik.toLowerCase().includes('https') || mesaj.icerik.toLowerCase().includes('http') || mesaj.icerik.toLowerCase().includes('.com')) { 18 | message.delete({timeout: 5000}) 19 | return message.channel.send(hembed.setDescription(`Son silinen mesajda reklam bulunmakta.`)).then(msg => msg.delete({timeout: 5000}))} 20 | 21 | 22 | let mesajYazari = await message.guild.members.cache.get(mesaj.yazar); 23 | if (mesaj.icerik) { 24 | return message.channel.send(embed.setDescription(` 25 | Mesaj Sahibi: ${mesajYazari ? mesajYazari : mesajYazari.tag} ( \`${mesajYazari.id}\` ) 26 | Mesajın Yazılma Tarihi: \`${moment.duration(Date.now() - mesaj.yazilmaTarihi).format("D [gün], H [Saat], m [dakika], s [saniye]")}\` önce 27 | Mesajın Silinme Tarihi: \`${moment.duration(Date.now() - mesaj.silinmeTarihi).format("D [gün], H [Saat], m [dakika], s [saniye]")}\` önce 28 | 29 | Mesaj İçeriği: \`${mesaj.dosya ? "Atılan mesaj bir dosya içeriyor." : mesaj.icerik}\` 30 | `)) 31 | } 32 | } else { 33 | message.delete({timeout: 5000}) 34 | return message.channel.send(hembed.setDescription(`Bu komutu kullanmak için yetkin yetersiz.`)).then(msg => msg.delete({timeout: 5000})) 35 | } 36 | }; 37 | 38 | module.exports.config = { 39 | name: "snipe", 40 | guildOnly: true, 41 | aliases: [], 42 | cooldown: 0 43 | }; 44 | -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/Criminal/C-Karantina.js: -------------------------------------------------------------------------------- 1 | const {Client, Message} = require("discord.js"); 2 | const Settings = require("../../Configuration/Settings.json"); 3 | const Helper = require("../../Utils/Helper"); 4 | 5 | const ms = require("ms"); 6 | 7 | const PM = require("../../Managers/PenalManager"); 8 | 9 | /** 10 | * @param {Client} client 11 | * @param {Message} message 12 | * @param {Array} args 13 | */ 14 | module.exports.execute = async (client, message, args) => { 15 | if(!message.member.hasPermission("ADMINISTRATOR") && !Settings.Penals.Jail.AuthRoles.some(authRole => message.member.roles.cache.has(authRole))) return message.reply("Bunu yapmaya yetkin yetmiyor :c"); 16 | 17 | let victim = message.mentions.users.first() || client.users.cache.get(args[0]) || await Helper.GetUser(args[0]); 18 | if(!victim) return message.reply(`Geçerli bir \`@Yulaf/ID\`* belirtmelisin`); 19 | 20 | let time = args[1]; 21 | if(!time || !ms(time)) return message.reply("Lütfen geçerli bir süre girin."); 22 | time = ms(time); 23 | let reason = args.splice(2).join(" "); 24 | if(!reason) return message.reply("Geçerli \`Karantina\` sebebi belirtmelisin."); 25 | 26 | let member = await message.guild.getMember(victim.id); 27 | if(member && member.roles.highest.position >= message.member.roles.highest.position) return message.reply("Senin rolünden üstte ya da aynı roldeki birisine ceza veremezsin.") 28 | 29 | if(member && member.manageable) PM.setRoles(member, Settings.Penals.Jail.Role).catch(); 30 | 31 | let document = await PM.addPenal(victim.id, message.author.id, PM.Types.TEMP_JAIL, reason, true, Date.now(), time); 32 | 33 | message.channel.send(`${victim}, ${message.author} tarafından **${reason}** sebebiyle geçici olarak cezalandırıldı, Ceza Numarası - (\`#${document.Id}\`) ${Settings.emojiler.tik}`) 34 | message.react(Settings.emojiler.onayID) 35 | message.guild.log(message.author, victim, document, Settings.Penals.Jail.Log); 36 | } 37 | 38 | module.exports.settings = { 39 | Commands: ["jail", "cezalandır","karantina" ,"hapis","ceza"], 40 | Usage: "jail <@user|id> [reason]", 41 | Description: "Bahsettiğin kişiyi sunucuda geçici olarak cezalandırırsın.", 42 | Category: "Criminal", 43 | Activity: true 44 | } -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/Criminal/C-Chat-Mute.js: -------------------------------------------------------------------------------- 1 | const {Client, Message} = require("discord.js"); 2 | const Settings = require("../../Configuration/Settings.json"); 3 | const Helper = require("../../Utils/Helper"); 4 | 5 | const ms = require("ms"); 6 | 7 | const PM = require("../../Managers/PenalManager"); 8 | 9 | /** 10 | * @param {Client} client 11 | * @param {Message} message 12 | * @param {Array} args 13 | */ 14 | module.exports.execute = async (client, message, args) => { 15 | if(!message.member.hasPermission("ADMINISTRATOR") && !Settings.Penals.Mute.AuthRoles.some(authRole => message.member.roles.cache.has(authRole))) return message.reply("Bunu yapmaya yetkin yetmiyor :c"); 16 | 17 | let victim = message.mentions.users.first() || client.users.cache.get(args[0]) || await Helper.GetUser(args[0]); 18 | if(!victim) return message.reply(`Geçerli bir \`@Yulaf/ID\` belirtmelisin`); 19 | 20 | let time = args[1]; 21 | if(!time || !ms(time)) return message.reply("Lütfen geçerli bir süre girin."); 22 | time = ms(time); 23 | 24 | let reason = args.splice(2).join(" "); 25 | if(!reason) return message.reply("Geçerli \`Mute\` sebebi belirtmelisin."); 26 | 27 | let member = await message.guild.getMember(victim.id); 28 | if(member && member.roles.highest.position >= message.member.roles.highest.position) return message.reply("Senin rolünden üstte ya da aynı roldeki birisini susturamazsın.") 29 | 30 | if(member && member.manageable && !member.roles.cache.has(Settings.Penals.Mute.Role)) member.roles.add(Settings.Penals.Mute.Role).catch(); 31 | 32 | let document = await PM.addPenal(victim.id, message.author.id, PM.Types.TEMP_MUTE, reason, true, Date.now(), time); 33 | 34 | message.channel.send(`${victim}, ${message.author} tarafından **__${reason}__** sebebiyle geçici olarak metin kanallarında susturuldu, Ceza Numarası - (\`#${document.Id}\`) ${Settings.emojiler.tik}`) 35 | message.react(Settings.emojiler.onayID) 36 | message.guild.log(message.author, victim, document, Settings.Penals.Mute.Log); 37 | } 38 | 39 | module.exports.settings = { 40 | Commands: ["mute", "sustur"], 41 | Usage: "mute <@user|id> [reason]", 42 | Description: "Bahsettiğin kişiyi sunucuda geçici olarak susturursun.", 43 | Category: "Criminal", 44 | Activity: true 45 | } -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/Criminal/C-Voice-Mute.js: -------------------------------------------------------------------------------- 1 | const {Client, Message} = require("discord.js"); 2 | const Settings = require("../../Configuration/Settings.json"); 3 | const Helper = require("../../Utils/Helper"); 4 | 5 | const ms = require("ms"); 6 | 7 | const PM = require("../../Managers/PenalManager"); 8 | 9 | /** 10 | * @param {Client} client 11 | * @param {Message} message 12 | * @param {Array} args 13 | */ 14 | module.exports.execute = async (client, message, args) => { 15 | if(!message.member.hasPermission("ADMINISTRATOR") && !Settings.Penals.VoiceMute.AuthRoles.some(authRole => message.member.roles.cache.has(authRole))) return message.reply("Bunu yapmaya yetkin yetmiyor :c"); 16 | 17 | let victim = message.mentions.users.first() || client.users.cache.get(args[0]) || await Helper.GetUser(args[0]); 18 | if(!victim) return message.reply(`Geçerli bir **@Yulaf/ID** belirtmelisin`); 19 | 20 | let time = args[1]; 21 | if(!time || !ms(time)) return message.reply("Lütfen geçerli bir süre girin."); 22 | time = ms(time); 23 | let reason = args.splice(2).join(" "); 24 | if(!reason) return message.reply("Geçerli bir sebep belirtmelisin"); 25 | 26 | let member = await message.guild.getMember(victim.id); 27 | if(member && member.roles.highest.position >= message.member.roles.highest.position) return message.reply("Senin rolünden üstte ya da aynı roldeki birisini sesli susturamazsın.") 28 | 29 | if(member && member.manageable) { 30 | if(!member.roles.cache.has(Settings.Penals.VoiceMute.Role)) member.roles.add(Settings.Penals.VoiceMute.Role).catch(); 31 | if(member.voice.channelID && !member.voice.serverMute) member.voice.setMute(true).catch(); 32 | } 33 | 34 | let document = await PM.addPenal(victim.id, message.author.id, PM.Types.TEMP_VOICE_MUTE, reason, true, Date.now(), time); 35 | 36 | message.channel.send(`${victim}, ${message.author} tarafından **${reason}** sebebiyle geçici olarak seslide susturuldu, Ceza Numarası - (\`#${document.Id}\`) ${Settings.emojiler.tik}`) 37 | message.react(Settings.emojiler.onayID) 38 | message.guild.log(message.author, victim, document, Settings.Penals.VoiceMute.Log); 39 | } 40 | 41 | module.exports.settings = { 42 | Commands: ["voicemute", "seslisustur","vmute"], 43 | Usage: "voicemute <@user|id> [reason]", 44 | Description: "Bahsettiğin kişiyi sunucuda geçici olarak susturursun.", 45 | Category: "Criminal", 46 | Activity: true 47 | } -------------------------------------------------------------------------------- /Astre_Statistic/src/commands/rank.js: -------------------------------------------------------------------------------- 1 | const conf = require("../configs/config.json"); 2 | 3 | module.exports = { 4 | conf: { 5 | aliases: ["yetki"], 6 | name: "rank", 7 | help: "rank [ekle/sil] [coin] [rol] / [temizle] / [liste]", 8 | enabled: conf.coinSystem 9 | }, 10 | 11 | /** 12 | * @param {Client} client 13 | * @param {Message} message 14 | * @param {Array} args 15 | * @param {MessageEmbed} embed 16 | * @returns {Promise} 17 | */ 18 | run: async (client, message, args, embed) => { 19 | if (!message.member.hasPermission(8)) return; 20 | const coin = args[1]; 21 | if (["ekle", "add"].includes(args[0])) { 22 | if (!coin || isNaN(coin)) return message.channel.error(message, "Eklenecek yetkinin coinini belirtmelisin!"); 23 | if (client.ranks.some((x) => x.coin === coin)) return message.channel.error(message, `${coin} coine ulaşıldığında verilecek roller zaten ayarlanmış!`); 24 | const roles = message.mentions.roles.array(); 25 | if (!roles || !roles.length) return message.channel.error(message, "Eklenecek yetkinin rol(leri) belirtmelisin!"); 26 | client.ranks = global.rankdb.push("ranks", { role: roles.map((x) => x.id), coin: parseInt(coin) }).sort((a, b) => a.coin - b.coin); 27 | message.channel.send(embed.setColor('GRAY').setDescription(`${coin} coine ulaşıldığında verilecek roller ayarlandı! \nVerilecek Roller: ${roles.map((x) => `<@&${x.id}>`).join(", ")}`)); 28 | } else if (["sil", "delete", "remove"].includes(args[0])) { 29 | if (!coin|| isNaN(coin)) return message.channel.error(message, "Silinecek yetkinin coinini belirtmelisin!"); 30 | if (!client.ranks.some((x) => x.coin === coin)) return message.channel.error(message, `${coin} coine ulaşıldığında verilecek roller ayarlanmamış!`); 31 | client.ranks = global.rankdb.set("ranks", client.ranks.filter((x) => x.coin !== coin)).sort((a, b) => a.coin - b.coin); 32 | message.channel.send(embed.setColor('GRAY').setDescription(`${coin} coine ulaşıldığında verilecek roller silindi!`)); 33 | } else if (["temizle", "clear"].includes(args[0])) { 34 | global.rankdb.set("ranks", []); 35 | message.channel.send(embed.setColor('GRAY').setDescription("Tüm yetkiler başarıyla temizlendi!")); 36 | } else if (["liste", "list"].includes(args[0])) message.channel.send(embed.setColor('GRAY').setDescription(global.rankdb.get("ranks").sort((a, b) => a.coin - b.coin).map((x) => `${Array.isArray(x.role) ? x.role.map(x => `<@&${x}>`).join(", ") : `<@&${x.role}>`}: ${x.coin}`))); 37 | } 38 | }; 39 | -------------------------------------------------------------------------------- /Astre_Welcome/ses.js: -------------------------------------------------------------------------------- 1 | const Discord = require('discord.js'); 2 | const tokens = [ 3 | "TOKEN1", 4 | "TOKEN2", 5 | "TOKEN3", 6 | "TOKEN4", 7 | "TOKEN5" 8 | ]; 9 | const chnls = [ 10 | "KANAL1", 11 | "KANAL2", 12 | "KANAL3", 13 | "KANAL4", 14 | "KANAL5" 15 | ]; 16 | const selamlı = []; 17 | for (let index = 0; index < tokens.length; index++) { 18 | const token = tokens[index]; 19 | const client = new Discord.Client(); 20 | client.login(token); 21 | let concon; 22 | client.on('ready', async () => { 23 | console.log(client.user.username); 24 | await client.user.setActivity({ 25 | name: "Bu tarz ses sistemi için Uurdia#1845", 26 | type: "LISTENING" 27 | }); 28 | concon = await client.channels.cache.get(chnls[index]).join() 29 | }); 30 | let ses; 31 | client.on('voiceStateUpdate', async (prev, cur) => { 32 | if (cur.member.user.bot) return; 33 | if (cur.channel && (cur.channel.id === chnls[index])) { 34 | if (cur.channelID === prev.channelID) return; 35 | if (selamlı.includes(cur.member.id) && (cur.member.roles.highest.rawPosition < cur.guild.roles.cache.get("859369549366689792").rawPosition)) {//ROLID 36 | //console.log(selamlı); 37 | ses = await concon.play('./tekrardan.mp3'); 38 | return; 39 | } 40 | if ((cur.member.roles.highest.rawPosition < cur.guild.roles.cache.get("859369549366689792").rawPosition)) { //ROLID 41 | ses = await concon.play('./hosgeldin.mp3'); 42 | selamlı.push(cur.member.user.id); 43 | } else if (cur.member.roles.highest.rawPosition > cur.guild.roles.cache.get('859369549366689792').rawPosition) {//ROLID 44 | ses = await concon.play('./yetkili.mp3'); 45 | selamlı.push(cur.member.user.id); 46 | } 47 | } 48 | if (prev.channel && (prev.channel.id === chnls[index]) && (prev.channel.members.size === 1) && ses) ses.end(); 49 | }); 50 | client.on('guildMemberUpdate', async (prev, cur) => { 51 | if (concon.channel.members.some(biri => biri.user.id === cur.user.id)) { 52 | if ((prev.roles.highest.rawPosition < cur.roles.highest.rawPosition)) { 53 | ses = await concon.play('./elveda.mp3'); 54 | } 55 | } else return; 56 | }); 57 | client.on('voiceStateUpdate', async (prev, cur) => { 58 | if (cur.member.id === client.user.id) concon = await client.channels.cache.get(chnls[index]).join(); 59 | }) 60 | } -------------------------------------------------------------------------------- /Astre_Statistic/src/commands/tagaldır.js: -------------------------------------------------------------------------------- 1 | const coin = require("../schemas/coin"); 2 | const taggeds = require("../schemas/taggeds"); 3 | const conf = require("../configs/config.json"); 4 | const tasks = require("../schemas/task"); 5 | 6 | module.exports = { 7 | conf: { 8 | aliases: ["tag-aldır", "taglıaldır"], 9 | name: "tagaldır", 10 | help: "tagaldır [kullanıcı]", 11 | enabled: conf.coinSystem 12 | }, 13 | 14 | /** 15 | * @param {Client} client 16 | * @param {Message} message 17 | * @param {Array} args 18 | * @param {MessageEmbed} embed 19 | * @returns {Promise} 20 | */ 21 | run: async (client, message, args, embed) => { 22 | if (!conf.staffs.some(x => message.member.roles.cache.has(x))) return; 23 | const member = message.mentions.members.first() || message.guild.members.cache.get(args[0]); 24 | if (!member) return message.channel.send(embed.setColor("GRAY").setDescription("Bir üye belirtmelisin!")); 25 | if (!member.user.username.includes(conf.tag)) return message.channel.send(embed.setColor("GRAY").setDescription("Bu üye taglı değiL!")); 26 | const taggedData = await taggeds.findOne({ guildID: message.guild.id, userID: message.author.id }); 27 | if (taggedData && taggedData.taggeds.includes(member.user.id)) return message.channel.send(embed.setColor("GRAY").setDescription("Bu üyeye zaten daha önce tag aldırmışsın!")); 28 | 29 | embed.setColor("GRAY").setDescription(`${message.member.toString()} üyesi sana tag aldırmak istiyor. Kabul ediyor musun?`); 30 | const msg = await message.channel.send(member.toString(), { embed }); 31 | msg.react("✅"); 32 | msg.react("❌"); 33 | 34 | msg.awaitReactions((reaction, user) => ["✅", "❌"].includes(reaction.emoji.name) && user.id === member.user.id, { max: 1, time: 30000, errors: ["time"] }).then(async collected => { 35 | const reaction = collected.first(); 36 | if (reaction.emoji.name === "✅") { 37 | await coin.findOneAndUpdate({ guildID: member.guild.id, userID: message.author.id }, { $inc: { coin: conf.taggedCoin } }, { upsert: true }); 38 | embed.setColor("GREEN"); 39 | msg.edit(embed.setColor("GRAY").setDescription(`${member.toString()} üyesine başarıyla tag aldırıldı!`)); 40 | await taggeds.findOneAndUpdate({ guildID: message.guild.id, userID: message.author.id }, { $push: { taggeds: member.user.id } }, { upsert: true }); 41 | 42 | message.member.updateTask(message.guild.id, "mesaj", 1, message.channel); 43 | } else { 44 | embed.setColor("RED"); 45 | msg.edit(embed.setColor("GRAY").setDescription(`${member.toString()} üyesi, tag aldırma teklifini reddetti!`)); 46 | } 47 | }).catch(() => msg.edit(embed.setColor("GRAY").setDescription("Tag aldırma işlemi iptal edildi!"))); 48 | } 49 | }; -------------------------------------------------------------------------------- /Astre_Statistic/src/commands/senkronize.js: -------------------------------------------------------------------------------- 1 | const coin = require("../schemas/coin"); 2 | const conf = require("../configs/config.json"); 3 | 4 | module.exports = { 5 | conf: { 6 | aliases: ["senkron"], 7 | name: "senkronize", 8 | help: "senkronize [user] [kullanıcı] / [role] [rol]", 9 | enabled: conf.coinSystem 10 | }, 11 | 12 | /** 13 | * @param {Client} client 14 | * @param {Message} message 15 | * @param {Array} args 16 | * @param {MessageEmbed} embed 17 | * @returns {Promise} 18 | */ 19 | run: async (client, message, args, embed) => { 20 | if (!message.member.hasPermission(8)) return; 21 | if (args[0] === "kişi" || args[0] === "user") { 22 | const member = message.mentions.members.first() || message.guild.members.cache.get(args[1]); 23 | if (!member) return message.channel.send(embed.setColor("GRAY").setDescription("Bir kullanıcı belirtmelisin!")); 24 | 25 | if (client.ranks.some(x => member.hasRole(x.role))) { 26 | let rank = client.ranks.filter(x => member.hasRole(x.role)); 27 | rank = rank[rank.length-1]; 28 | await coin.findOneAndUpdate({ guildID: message.guild.id, userID: member.user.id }, { $set: { coin: rank.coin } }, { upsert: true }); 29 | message.channel.send(embed.setColor("GRAY").setDescription(`${member.toString()} üyesinde <@&${rank.role}> rolü bulundu ve coini ${rank.coin} olarak değiştirildi!`)); 30 | } else return message.channel.send(embed.setColor("GRAY").setDescription(`${member.toString()} üyesinde sistemde ayarlı bir rol bulunamadı!`)); 31 | } else if (args[0] === "role" || args[0] === "rol") { 32 | const role = message.mentions.roles.first() || message.guild.roles.cache.get(args[1]); 33 | if (!role) return message.channel.send(embed.setColor("GRAY").setDescription("Bir rol belirtmelisin!")); 34 | if (role.members.length === 0) return message.channel.send(embed.setColor("GRAY").setDescription("Bu rolde üye bulunmuyor!")); 35 | role.members.forEach(async member => { 36 | if (member.user.bot) return; 37 | if (client.ranks.some(x => member.hasRole(x.role))) { 38 | let rank = client.ranks.filter(x => member.hasRole(x.role)); 39 | rank = rank[rank.length-1]; 40 | await coin.findOneAndUpdate({ guildID: message.guild.id, userID: member.user.id }, { $set: { coin: rank.coin } }, { upsert: true }); 41 | message.channel.send(embed.setColor("GRAY").setDescription(`${member.toString()} üyesinde <@&${rank.role}> rolü bulundu ve coini ${rank.coin} olarak değiştirildi!`)); 42 | } else return message.channel.send(embed.setColor("GRAY").setDescription(`${member.toString()} üyesinde sistemde ayarlı bir rol bulunamadı!`)); 43 | }); 44 | } else return message.channel.send(embed.setColor("GRAY").setDescription("Bir argüman belirtmelisin!")); 45 | } 46 | }; 47 | -------------------------------------------------------------------------------- /Astre_Executive/commands/K-Erkek.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require("discord.js"); 2 | const teyitci = require("../models/Teyitci.js"); 3 | const kayitlar = require("../models/Kayıtlar.js"); 4 | const config = require("../config.json") 5 | 6 | 7 | module.exports.run = async (client, message, args) => { 8 | let member = message.mentions.members.first() || message.guild.members.cache.get(args[0]); 9 | let embed = new MessageEmbed().setAuthor(message.member.displayName, message.author.displayAvatarURL({ dynamic: true })) 10 | .setColor(client.config.embedColor); 11 | if (!member) return message.channel.send(embed 12 | .setDescription("Geçerli bir \`@Satuke/ID\` belirtmelisin")) 13 | .then(x => x.delete({ timeout: 5500 })); 14 | if (message.member.roles.highest.position <= member.roles.highest.position) 15 | return message.channel.send(embed.setDescription(`${member} Bu işlemi gerçekleştiremiyorum (üst/aynı) yetkidesiniz`)) 16 | .then(x => x.delete({ timeout: 5500 })); 17 | if (args[1]) { 18 | var newName; 19 | args = args.filter(a => a.trim().length).slice(1); 20 | if (client.config.name_age) { 21 | let name = args.filter(a => isNaN(a)).map(a => a.charAt(0).replace("i", "İ").toUpperCase() + a.slice(1)).join(" "); 22 | let age = args.find(a => !isNaN(a)) || undefined; 23 | if (!name || !age) return message.channel.send(embed.setDescription(`Geçerli bir isim ve yaş belirtmelisin!`)).then(x => x.delete({ timeout: 5000 })); 24 | newName = `${member.user.tag.includes(client.config.tag) ? client.config.tag : client.config.defaultTag} ${name} | ${age}`; 25 | } else { 26 | newName = `${member.user.tag.includes(client.config.tag) ? client.config.tag : client.config.defaultTag} ${args.join(" ")}`; 27 | }; 28 | await member.setNickname(newName).catch(err => { return undefined; }); 29 | }; 30 | message.react(client.config.onay); 31 | if (client.config.unregisterRoles.some(r => member.roles.cache.has(r))) { 32 | await teyitci.findByIdAndUpdate(message.author.id, { $inc: { teyitler: 1 } }, { upsert: true }); 33 | await kayitlar.findByIdAndUpdate(member.id, { $push: { kayitlar: [{ isim: member.displayName, roller: client.config.boyRoles, tarih: Date.now() }] } }, { upsert: true }); 34 | }; 35 | await member.roles.set(member.roles.cache.map(r => r.id).filter(r => !client.config.unregisterRoles.includes(r) && !client.config.girlRoles.includes(r)).concat(client.config.boyRoles)).catch(err => { return undefined; }); 36 | let kanal = member.guild.channels.cache.find(r => r.id === config.chatKanal); 37 | kanal.send(`${config.kalp} ${member} Aramıza katıldı, Hoşgeldin!`).then(x => x.delete({ timeout: 15000 })); 38 | }; 39 | module.exports.config = { 40 | name: "erkek", 41 | description: "Belirtilen üyeyi erkek olarak kaydeder.", 42 | usage: "erkek <@üye> [isim yaş]", 43 | aliases: ["e", "boy", "man","E","Erkek"], 44 | }; 45 | -------------------------------------------------------------------------------- /Astre_Executive/commands/K-Kız.js: -------------------------------------------------------------------------------- 1 | const { MessageEmbed } = require("discord.js"); 2 | const teyitci = require("../models/Teyitci.js"); 3 | const kayitlar = require("../models/Kayıtlar.js"); 4 | const config = require("../config.json") 5 | module.exports.run = async (client, message, args) => { 6 | 7 | let member = message.mentions.members.first() || message.guild.members.cache.get(args[0]); 8 | let embed = new MessageEmbed().setAuthor(message.member.displayName, message.author.displayAvatarURL({ dynamic: true })).setColor(client.config.embedColor); 9 | if (!member) return message.channel.send(embed.setDescription("Geçerli bir \`@Satuke/ID\` belirtmelisin")).then(x => x.delete({ timeout: 5500 })); 10 | if (message.member.roles.highest.position <= member.roles.highest.position) return message.channel.send(embed 11 | .setDescription(`${member} Bu işlemi gerçekleştiremiyorum (üst/aynı) yetkidesiniz`)).then(x => x.delete({ timeout: 5500 })); 12 | if (args[1]) { 13 | var newName; 14 | args = args.filter(a => a.trim().length).slice(1); 15 | if (client.config.name_age) { 16 | let name = args.filter(a => isNaN(a)).map(a => a.charAt(0).replace("i", "İ").toUpperCase() + a.slice(1)).join(" "); 17 | let age = args.find(a => !isNaN(a)) || undefined; 18 | if (!name || !age) return message.channel.send(embed.setDescription(`Geçerli bir isim ve yaş belirtmelisin!`)).then(x => x.delete({ timeout: 5000 })); 19 | newName = `${member.user.tag.includes(client.config.tag) ? client.config.tag : client.config.defaultTag} ${name} | ${age}`; 20 | } else { 21 | newName = `${member.user.tag.includes(client.config.tag) ? client.config.tag : client.config.defaultTag} ${args.join(" ")}`; 22 | }; 23 | await member.setNickname(newName).catch(err => { return undefined; }); 24 | }; 25 | message.react(client.config.onay); 26 | if (client.config.unregisterRoles.some(r => member.roles.cache.has(r))) { 27 | await teyitci.findByIdAndUpdate(message.author.id, { $inc: { teyitler: 1 } }, { upsert: true }); 28 | await kayitlar.findByIdAndUpdate(member.id, { $push: { kayitlar: [{ isim: member.displayName, roller: client.config.girlRoles, tarih: Date.now() }] } }, { upsert: true }); 29 | }; 30 | await member.roles.set(member.roles.cache.map(r => r.id).filter(r => !client.config.unregisterRoles.includes(r) && !client.config.boyRoles.includes(r)).concat(client.config.girlRoles)).catch(err => { return undefined; }); 31 | let kanal = member.guild.channels.cache.find(r => r.id === config.chatKanal); 32 | kanal.send(`${config.kalp} ${member} Aramıza katıldı, Hoşgeldin!`).then(x => x.delete({ timeout: 15000 })); 33 | }; 34 | 35 | module.exports.config = { 36 | name: "kız", 37 | description: "Belirtilen üyeyi kız olarak kaydeder.", 38 | usage: "kız <@üye> [isim yaş]", 39 | enabled: true, 40 | aliases: ["k", "kiz", "girl", "woman","kız","Kız","Kadın","K"], 41 | }; -------------------------------------------------------------------------------- /Astre_Statistic/src/commands/role.js: -------------------------------------------------------------------------------- 1 | const moment = require("moment"); 2 | require("moment-duration-format"); 3 | const messageUser = require("../schemas/messageUser"); 4 | const voiceUser = require("../schemas/voiceUser"); 5 | const coin = require("../schemas/coin"); 6 | const conf = require("../configs/config.json"); 7 | 8 | module.exports = { 9 | conf: { 10 | aliases: ["rol"], 11 | name: "role", 12 | help: "rol [rol]", 13 | enabled: true 14 | }, 15 | 16 | /** 17 | * @param {Client} client 18 | * @param {Message} message 19 | * @param {Array} args 20 | * @param {MessageEmbed} embed 21 | * @returns {Promise} 22 | */ 23 | run: async (client, message, args, embed) => { 24 | if (!message.member.hasPermission(8)) return; 25 | const role = message.mentions.roles.first() || message.guild.roles.cache.get(args[0]); 26 | if (!role) return message.channel.send(embed.setColor("GRAY").setDescription("Bir rol belirtmelisin!")); 27 | if (role.members.size === 0) return message.channel.send(embed.setColor("GRAY").setDescription("Bu rol kimsede bulunmuyor!")); 28 | 29 | const messageData = async (type) => { 30 | let data = await messageUser.find({ guildID: message.guild.id }).sort({ topStat: -1 }); 31 | data = data.filter(x => message.guild.members.cache.has(x.userID) && message.guild.members.cache.get(x.userID).roles.cache.has(role.id)); 32 | return data.length > 0 ? data.splice(0, 5).map((x, index) => `\`${index + 1}.\` <@${x.userID}> : \`${Number(x[type]).toLocaleString()} mesaj\``).join("\n") : "Veri bulunmuyor!"; 33 | }; 34 | 35 | const voiceData = async (type) => { 36 | let data = await voiceUser.find({ guildID: message.guild.id }).sort({ topStat: -1 }); 37 | data = data.filter(x => message.guild.members.cache.has(x.userID) && message.guild.members.cache.get(x.userID).roles.cache.has(role.id)); 38 | return data.length > 0 ? data.splice(0, 5).map((x, index) => `\`${index + 1}.\` <@${x.userID}> : \`${moment.duration(x[type]).format("H [saat], m [dakika] s [saniye]")}\``).join("\n") : "Veri bulunmuyor!"; 39 | }; 40 | 41 | const coinData = async () => { 42 | let data = await coin.find({ guildID: message.guild.id }).sort({ coin: -1 }); 43 | data = data.filter(x => message.guild.members.cache.has(x.userID) && message.guild.members.cache.get(x.userID).roles.cache.has(role.id)); 44 | return data.length > 0 ? data.splice(0, 5).map((x, index) => `\`${index+1}.\` <@${x.userID}>: \`${Number(x.coin).toLocaleString()} coin\``).join("\n") : "Veri bulunmuyor!"; 45 | }; 46 | 47 | embed.setAuthor(message.guild.name, message.guild.iconURL({ dynamic: true, size: 2048 })); 48 | embed.setThumbnail(message.guild.iconURL({ dynamic: true, size: 2048 })); 49 | message.channel.send(embed.setColor("GRAY").setDescription(` 50 | ${role.toString()} rolüne sahip üyelerin verileri 51 | **───────────────** 52 | 53 | **➥ Toplam Ses Bilgileri:** 54 | ${await voiceData("topStat")} 55 | 56 | **➥ Haftalık Ses Bilgileri:** 57 | ${await voiceData("weeklyStat")} 58 | 59 | **➥ Günlük Ses Bilgileri:** 60 | ${await voiceData("dailyStat")} 61 | 62 | **───────────────** 63 | 64 | **➥ Toplam Mesaj Bilgileri:** 65 | ${await messageData("topStat")} 66 | 67 | **➥ Haftalık Mesaj Bilgileri:** 68 | ${await messageData("weeklyStat")} 69 | 70 | **➥ Günlük Mesaj Bilgileri:** 71 | ${await messageData("dailyStat")} 72 | 73 | ${conf.coinSystem ? ` 74 | **───────────────** 75 | 76 | **➥ Toplam Coin Bilgileri:** 77 | ${await coinData()} 78 | ` : ""} 79 | `)); 80 | } 81 | }; -------------------------------------------------------------------------------- /Astre_Statistic/src/commands/top.js: -------------------------------------------------------------------------------- 1 | const moment = require("moment"); 2 | require("moment-duration-format"); 3 | const messageGuild = require("../schemas/messageGuild"); 4 | const messageGuildChannel = require("../schemas/messageGuildChannel"); 5 | const voiceGuild = require("../schemas/voiceGuild"); 6 | const voiceGuildChannel = require("../schemas/voiceGuildChannel"); 7 | const messageUser = require("../schemas/messageUser"); 8 | const voiceUser = require("../schemas/voiceUser"); 9 | const coin = require("../schemas/coin"); 10 | const conf = require("../configs/config.json"); 11 | 12 | module.exports = { 13 | conf: { 14 | aliases: [], 15 | name: "top", 16 | help: "top", 17 | enabled: true 18 | }, 19 | 20 | /** 21 | * @param {Client} client 22 | * @param {Message} message 23 | * @param {Array} args 24 | * @param {MessageEmbed} embed 25 | * @returns {Promise} 26 | */ 27 | run: async (client, message, args, embed) => { 28 | const messageChannelData = await messageGuildChannel.find({ guildID: message.guild.id }).sort({ channelData: -1 }); 29 | const voiceChannelData = await voiceGuildChannel.find({ guildID: message.guild.id }).sort({ channelData: -1 }); 30 | const messageUsersData = await messageUser.find({ guildID: message.guild.id }).sort({ topStat: -1 }); 31 | const voiceUsersData = await voiceUser.find({ guildID: message.guild.id }).sort({ topStat: -1 }); 32 | const messageGuildData = await messageGuild.findOne({ guildID: message.guild.id }); 33 | const voiceGuildData = await voiceGuild.findOne({ guildID: message.guild.id }); 34 | const coinData = await coin.find({ guildID: message.guild.id }).sort({ coin: -1 }); 35 | 36 | let coinSum = 0; 37 | 38 | const messageChannels = messageChannelData.splice(0, 5).map((x, index) => `\`${index+1}.\` <#${x.channelID}>: \`${Number(x.channelData).toLocaleString()} mesaj\``).join("\n"); 39 | const voiceChannels = voiceChannelData.splice(0, 5).map((x, index) => `\`${index+1}.\` <#${x.channelID}>: \`${moment.duration(x.channelData).format("H [saat], m [dakika] s [saniye]")}\``).join("\n"); 40 | const messageUsers = messageUsersData.splice(0, 5).map((x, index) => `\`${index+1}.\` <@${x.userID}>: \`${Number(x.topStat).toLocaleString()} mesaj\``).join("\n"); 41 | const voiceUsers = voiceUsersData.splice(0, 5).map((x, index) => `\`${index+1}.\` <@${x.userID}>: \`${moment.duration(x.topStat).format("H [saat], m [dakika] s [saniye]")}\``).join("\n"); 42 | const coinUsers = coinData.splice(0, 5).map((x, index) => { 43 | coinSum += x.coin; 44 | return `\`${index+1}.\` <@${x.userID}>: \`${Number(x.coin).toLocaleString()} coin\``; 45 | }).join("\n"); 46 | 47 | embed.setAuthor(message.guild.name, message.guild.iconURL({ dynamic: true, size: 2048 })); 48 | embed.setThumbnail(message.guild.iconURL({ dynamic: true, size: 2048 })); 49 | message.channel.send(embed.setColor("GRAY").setDescription(` 50 | ${message.guild.name} sunucusunun toplam verileri 51 | **───────────────** 52 | 53 | **➥ Ses Bilgileri: (\`Toplam ${moment.duration(voiceGuildData ? voiceGuildData.topStat : 0).format("H [saat], m [dakika] s [saniye]")}\`)** 54 | ${voiceUsers.length > 0 ? voiceUsers : "Veri Bulunmuyor."} 55 | 56 | **➥ Ses Kanal Bilgileri:** 57 | ${voiceChannels.length > 0 ? voiceChannels : "Veri Bulunmuyor."} 58 | 59 | **───────────────** 60 | 61 | **➥ Mesaj Bilgileri: (\`Toplam ${Number(messageGuildData ? messageGuildData.topStat : 0).toLocaleString()} mesaj\`)** 62 | ${messageUsers.length > 0 ? messageUsers : "Veri Bulunmuyor."} 63 | 64 | **➥ Mesaj Kanal Bilgileri:** 65 | ${messageChannels.length > 0 ? messageChannels : "Veri Bulunmuyor."} 66 | 67 | ${conf.coinSystem ? ` 68 | **───────────────** 69 | 70 | **➥ Coin Bilgileri: \`(Toplam ${coinSum})\`** 71 | ${coinUsers.length > 0 ? coinUsers : "Veri Bulunmuyor."} 72 | ` : ""} 73 | `)); 74 | } 75 | }; -------------------------------------------------------------------------------- /Astre_Moderator/TheYulaf/Commands/Criminal/KalkmazBan.js: -------------------------------------------------------------------------------- 1 | const Discord = require("discord.js") 2 | const db = require("quick.db") 3 | module.exports.execute = async (client, message, args) => { 4 | // if(!message.member.roles.cache.has("Owner Rolü")) // Owner Rol ID girebilirsiniz 5 | if(!message.member.roles.cache.has("OWNER")) return message.channel.send(new Discord.MessageEmbed().setDescription(`${message.member} Komutu kullanmak için yetkin bulunmamakta.`)).then(x => x.delete({timeout: 5500})); 6 | let embed = new Discord.MessageEmbed().setAuthor(message.member.displayName, message.author.avatarURL({dynamic: true})).setFooter(message.guild.name, message.guild.iconURL({dynamic: true})).setTimestamp() 7 | let member = args[0] 8 | let data = await db.get(`unremovableBan.${message.guild.id}`) 9 | if(data == null) await db.set(`unremovableBan.${message.guild.id}`, []) 10 | if(args[0] == "liste") { 11 | if(!data) return message.channel.send(embed.setDescription(`Herhangi biri kalkmaz ban ile yasaklanmamış.`)).then(x => x.delete({timeout: 7000})); 12 | let banList = data.length > 0 ? `Kalkmaz ban ile banlanmış üyeler;\n\n${data.map(user => `\`${data.indexOf(user)+1}.\` ${user.tag} - (\`${user.id}\`)`).join("\n")}` : `**Bu özellikle banlanmış üye bulunamadı.**` 13 | message.channel.send(embed.setDescription(`${banList}`)) 14 | return; 15 | } 16 | if(args[0] == "yardım") { 17 | message.channel.send(embed.setDescription(` 18 | \`kban id\` 19 | \`kban liste\` 20 | \`kban kaldır id\` 21 | \`kban sıfırla\` 22 | `)) 23 | return; 24 | } 25 | if(args[0] == "kaldır" || args[0] == "sil" || args[0] == "kunban") { 26 | if(!message.member.roles.cache.has("OWNER")) return message.channel.send(embed.setDescription(`Bu komutu sadece sunucu sahibi (${message.guild.owner}) kullanabilir.`)) 27 | let member = args[1] 28 | if(!member || isNaN(member)) return message.channel.send(embed.setDescription(`Geçerli bir id girmelisiniz veya \`urb yardım\` yazarak komutlara bakabilirsiniz.`)).then(x => x.delete({timeout: 6500})); 29 | let qwe = await client.users.fetch(member).catch(e => { }) 30 | if(!qwe) return message.channel.send(embed.setDescription(`Geçerli bir id girmelisiniz.`)).then(x => x.delete({timeout: 7000})); 31 | if(!data.some(s => s.id == member)) return message.channel.send(embed.setDescription(`${qwe.id} - (\`${qwe.username}\`) kullanıcısının idsi zaten bulunmuyor.`)).then(x => x.delete({timeout: 6500})); 32 | db.set(`unremovableBan.${message.guild.id}`, await data.filter(s => s.id != member)); 33 | await message.guild.members.unban(member).catch(e => { }); 34 | message.channel.send(embed.setDescription(`${qwe.id} - (\`${qwe.tag}\`) kullanıcısının kalkmaz banı başarıyla kaldırıldı.`)) 35 | return; 36 | } 37 | if(args[0] == "sıfırla") { 38 | if(!message.member.roles.cache.has("OWNER")) return message.channel.send(embed.setDescription(`Bu komutu sadece sunucu sahibi (${message.guild.owner}) kullanabilir.`)).then(x => x.delete({timeout: 5000})); 39 | await db.delete(`unremovableBan.${message.guild.id}`) 40 | message.channel.send(embed.setDescription(`${message.author} \`unremovableBan\` özelliğiyle yasaklanmış tüm üyelerin yasağı kaldırıldı.`)) 41 | return; 42 | } 43 | if(!message.member.roles.cache.has("OWNER")) return message.channel.send(embed.setDescription(`Bu komutu sadece sunucu sahibi (${message.guild.owner}) kullanabilir.`)) 44 | if(!member || isNaN(member)) return message.channel.send(embed.setDescription(`Geçerli bir id girmelisiniz veya \`urb yardım\` yazarak komutlara bakabilirsiniz.`)).then(x => x.delete({timeout: 6500})); 45 | let qwe = await client.users.fetch(member).catch(e => { }) 46 | if(!qwe) return message.channel.send(embed.setDescription(`Geçerli bir id girmelisiniz.`)).then(x => x.delete({timeout: 7000})); 47 | if(data.some(s => s.id == member)) return message.channel.send(embed.setDescription(`${qwe.id} - (\`${qwe.username}\`) kullanıcısının idsi zaten bulunuyor.`)).then(x => x.delete({timeout: 6500})); 48 | db.push(`unremovableBan.${message.guild.id}`, qwe) 49 | if(message.guild.members.cache.has(qwe.id)) message.guild.member(qwe).ban({reason: "'unremovableBan' özelliği ile banlandı."}).catch(e => { }) 50 | message.channel.send(embed.setDescription(`${qwe.id} - (\`${qwe.tag}\`) kullanıcısı kalkmaz ban listesine eklendi.`)) 51 | }; 52 | module.exports.settings = { 53 | Commands: ["kalkmazban", "kban","kalkmaz-ban"], 54 | Usage: "kban", 55 | Description: "Bahsettiğin kanalda herkesi susturursun.", 56 | Category: "Criminal", 57 | Activity: true 58 | } -------------------------------------------------------------------------------- /Astre_Angels/Angel I/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "yulaf-guard", 3 | "version": "0.0.1", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "@discordjs/collection": { 8 | "version": "0.1.6", 9 | "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.1.6.tgz", 10 | "integrity": "sha512-utRNxnd9kSS2qhyivo9lMlt5qgAUasH2gb7BEOn6p0efFh24gjGomHzWKMAPn2hEReOPQZCJaRKoURwRotKucQ==" 11 | }, 12 | "@discordjs/form-data": { 13 | "version": "3.0.1", 14 | "resolved": "https://registry.npmjs.org/@discordjs/form-data/-/form-data-3.0.1.tgz", 15 | "integrity": "sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg==", 16 | "requires": { 17 | "asynckit": "^0.4.0", 18 | "combined-stream": "^1.0.8", 19 | "mime-types": "^2.1.12" 20 | } 21 | }, 22 | "abort-controller": { 23 | "version": "3.0.0", 24 | "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", 25 | "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", 26 | "requires": { 27 | "event-target-shim": "^5.0.0" 28 | } 29 | }, 30 | "asynckit": { 31 | "version": "0.4.0", 32 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 33 | "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" 34 | }, 35 | "combined-stream": { 36 | "version": "1.0.8", 37 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", 38 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", 39 | "requires": { 40 | "delayed-stream": "~1.0.0" 41 | } 42 | }, 43 | "delayed-stream": { 44 | "version": "1.0.0", 45 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 46 | "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" 47 | }, 48 | "discord.js": { 49 | "version": "12.5.3", 50 | "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-12.5.3.tgz", 51 | "integrity": "sha512-D3nkOa/pCkNyn6jLZnAiJApw2N9XrIsXUAdThf01i7yrEuqUmDGc7/CexVWwEcgbQR97XQ+mcnqJpmJ/92B4Aw==", 52 | "requires": { 53 | "@discordjs/collection": "^0.1.6", 54 | "@discordjs/form-data": "^3.0.1", 55 | "abort-controller": "^3.0.0", 56 | "node-fetch": "^2.6.1", 57 | "prism-media": "^1.2.9", 58 | "setimmediate": "^1.0.5", 59 | "tweetnacl": "^1.0.3", 60 | "ws": "^7.4.4" 61 | } 62 | }, 63 | "event-target-shim": { 64 | "version": "5.0.1", 65 | "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", 66 | "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==" 67 | }, 68 | "mime-db": { 69 | "version": "1.48.0", 70 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", 71 | "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==" 72 | }, 73 | "mime-types": { 74 | "version": "2.1.31", 75 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", 76 | "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", 77 | "requires": { 78 | "mime-db": "1.48.0" 79 | } 80 | }, 81 | "node-fetch": { 82 | "version": "2.6.1", 83 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", 84 | "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" 85 | }, 86 | "prism-media": { 87 | "version": "1.3.1", 88 | "resolved": "https://registry.npmjs.org/prism-media/-/prism-media-1.3.1.tgz", 89 | "integrity": "sha512-nyYAa3KB4qteJIqdguKmwxTJgy55xxUtkJ3uRnOvO5jO+frci+9zpRXw6QZVcfDeva3S654fU9+26P2OSTzjHw==" 90 | }, 91 | "setimmediate": { 92 | "version": "1.0.5", 93 | "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", 94 | "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" 95 | }, 96 | "tweetnacl": { 97 | "version": "1.0.3", 98 | "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", 99 | "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" 100 | }, 101 | "ws": { 102 | "version": "7.4.6", 103 | "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", 104 | "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==" 105 | } 106 | } 107 | } 108 | -------------------------------------------------------------------------------- /Astre_Statistic/src/commands/user.js: -------------------------------------------------------------------------------- 1 | const moment = require("moment"); 2 | require("moment-duration-format"); 3 | const conf = require("../configs/config.json"); 4 | const messageUserChannel = require("../schemas/messageUserChannel"); 5 | const voiceUserChannel = require("../schemas/voiceUserChannel"); 6 | const messageUser = require("../schemas/messageUser"); 7 | const voiceUser = require("../schemas/voiceUser"); 8 | const voiceUserParent = require("../schemas/voiceUserParent"); 9 | const coin = require("../schemas/coin"); 10 | 11 | module.exports = { 12 | conf: { 13 | aliases: ["kullanıcı"], 14 | name: "user", 15 | help: "user [kullanıcı]", 16 | enabled: true 17 | }, 18 | 19 | /** 20 | * @param {Client} client 21 | * @param {Message} message 22 | * @param {Array} args 23 | * @param {MessageEmbed} embed 24 | * @returns {Promise} 25 | */ 26 | run: async (client, message, args, embed) => { 27 | const member = message.mentions.members.first() || message.guild.members.cache.get(args[0]); 28 | if (!member) return message.channel.send(embed.setColor("GRAY").setDescription("Bir kullanıcı belirtmelisin!")); 29 | 30 | const category = async (parentsArray) => { 31 | const data = await voiceUserParent.find({ guildID: message.guild.id, userID: member.user.id }); 32 | const voiceUserParentData = data.filter((x) => parentsArray.includes(x.parentID)); 33 | let voiceStat = 0; 34 | for (let i = 0; i <= voiceUserParentData.length; i++) { 35 | voiceStat += voiceUserParentData[i] ? voiceUserParentData[i].parentData : 0; 36 | } 37 | return moment.duration(voiceStat).format("H [saat], m [dakika]"); 38 | }; 39 | 40 | const Active1 = await messageUserChannel.find({ guildID: message.guild.id, userID: member.user.id }).sort({ channelData: -1 }); 41 | const Active2 = await voiceUserChannel.find({ guildID: message.guild.id, userID: member.user.id }).sort({ channelData: -1 }); 42 | const voiceLength = Active2 ? Active2.length : 0; 43 | let voiceTop; 44 | let messageTop; 45 | Active1.length > 0 ? messageTop = Active1.splice(0, 5).map(x => `<#${x.channelID}>: \`${Number(x.channelData).toLocaleString()} mesaj\``).join("\n") : messageTop = "Veri bulunmuyor."; 46 | Active2.length > 0 ? voiceTop = Active2.splice(0, 5).map(x => `<#${x.channelID}>: \`${moment.duration(x.channelData).format("H [saat], m [dakika]")}\``).join("\n") : voiceTop = "Veri bulunmuyor."; 47 | 48 | const messageData = await messageUser.findOne({ guildID: message.guild.id, userID: member.user.id }); 49 | const voiceData = await voiceUser.findOne({ guildID: message.guild.id, userID: member.user.id }); 50 | 51 | const messageDaily = messageData ? messageData.dailyStat : 0; 52 | const messageWeekly = messageData ? messageData.weeklyStat : 0; 53 | 54 | const voiceDaily = moment.duration(voiceData ? voiceData.dailyStat : 0).format("H [saat], m [dakika]"); 55 | const voiceWeekly = moment.duration(voiceData ? voiceData.weeklyStat : 0).format("H [saat], m [dakika]"); 56 | 57 | const coinData = await coin.findOne({ guildID: message.guild.id, userID: member.user.id }); 58 | 59 | const filteredParents = message.guild.channels.cache.filter((x) => 60 | x.type === "category" && 61 | !conf.publicParents.includes(x.id) && 62 | !conf.registerParents.includes(x.id) && 63 | !conf.solvingParents.includes(x.id) && 64 | !conf.privateParents.includes(x.id) && 65 | !conf.funParents.includes(x.id) && 66 | !conf.musicParents.includes(x.id) && 67 | !conf.streamerParents.includes(x.id) 68 | 69 | 70 | ); 71 | 72 | const maxValue = client.ranks[client.ranks.indexOf(client.ranks.find(x => x.coin >= (coinData ? coinData.coin : 0)))] || client.ranks[client.ranks.length-1]; 73 | 74 | const coinStatus = conf.coinSystem && message.member.hasRole(conf.staffs, false) && client.ranks.length > 0 ?` : ""} 75 | ${client.progressBar(coinData ? coinData.coin : 0, maxValue.coin, 8)} **${coinData ? coinData.coin : 0} / ${maxValue.coin}** 76 | ${currentRank ? `` : ` 77 | **Yetki Durumun:** 78 | ${Array.isArray(maxValue.role) ? maxValue.role.length > 1 ? maxValue.role.slice(0, -1).map(x => `<@&${x}>`).join(", ") + " ve " + maxValue.role.map(x => `<@&${x}>`).slice(-1) : maxValue.role.map(x => `<@&${x}>`).join("") : `<@&${maxValue.role}>`} rolüne ulaşmak için \`${maxValue.coin - (coinData ? coinData.coin : 0)}\` coin daha kazanmanız gerekiyor!`}` : ""; 79 | embed.setColor('WHITE') 80 | embed.setDescription(` 81 | ${message.author.toString()} (${message.member.roles.highest}) kişisinin sunucu verileri 82 | 83 | **Ses Bilgileri:** 84 | ${conf.emojis.nokta} Toplam Ses Saatin: \`${moment.duration(voiceData ? voiceData.topStat : 0).format("H [saat], m [dakika] s [saniye]")}\` 85 | ${conf.emojis.nokta} Public Odalar Odaları: \`${await category(conf.publicParents)}\` 86 | ${conf.emojis.nokta} Kayıt Odaları: \`${await category(conf.registerParents)}\` 87 | ${conf.emojis.nokta} Secret Odalar: \`${await category(conf.privateParents)}\` 88 | ${conf.emojis.nokta} Sorun Çözme Odaları: \`${await category(conf.solvingParents)}\` 89 | ${conf.emojis.nokta} Diğer Odalar: \`${await category(filteredParents.map(x => x.id))}\` 90 | 91 | **Mesaj Bilgileri:** 92 | ${conf.emojis.nokta} Haftalık Mesaj Verin: \`${messageData ? messageData.topStat : 0}\` 93 | 94 | **Puan Bar Durumun:** ${coinStatus}`); 95 | } 96 | }; -------------------------------------------------------------------------------- /Astre_Statistic/src/commands/me.js: -------------------------------------------------------------------------------- 1 | const moment = require("moment"); 2 | require("moment-duration-format"); 3 | const conf = require("../configs/config.json"); 4 | const messageUserChannel = require("../schemas/messageUserChannel"); 5 | const voiceUserChannel = require("../schemas/voiceUserChannel"); 6 | const messageUser = require("../schemas/messageUser"); 7 | const voiceUser = require("../schemas/voiceUser"); 8 | const voiceUserParent = require("../schemas/voiceUserParent"); 9 | const coin = require("../schemas/coin"); 10 | const taggeds = require("../schemas/taggeds"); 11 | 12 | module.exports = { 13 | conf: { 14 | aliases: [], 15 | name: "me", 16 | help: "me", 17 | enabled: true 18 | }, 19 | 20 | /** 21 | * @param {Client} client 22 | * @param {Message} message 23 | * @param {Array} args 24 | * @param {MessageEmbed} embed 25 | * @returns {Promise} 26 | */ 27 | run: async (client, message, args, embed) => { 28 | const category = async (parentsArray) => { 29 | const data = await voiceUserParent.find({ guildID: message.guild.id, userID: message.author.id }); 30 | const voiceUserParentData = data.filter((x) => parentsArray.includes(x.parentID)); 31 | let voiceStat = 0; 32 | for (var i = 0; i <= voiceUserParentData.length; i++) { 33 | voiceStat += voiceUserParentData[i] ? voiceUserParentData[i].parentData : 0; 34 | } 35 | return moment.duration(voiceStat).format("H [saat], m [dakika] s [saniye]"); 36 | }; 37 | 38 | const Active1 = await messageUserChannel.find({ guildID: message.guild.id, userID: message.author.id }).sort({ channelData: -1 }); 39 | const Active2 = await voiceUserChannel.find({ guildID: message.guild.id, userID: message.author.id }).sort({ channelData: -1 }); 40 | const voiceLength = Active2 ? Active2.length : 0; 41 | let voiceTop; 42 | let messageTop; 43 | Active1.length > 0 ? messageTop = Active1.splice(0, 5).map(x => `<#${x.channelID}>: \`${Number(x.channelData).toLocaleString()} mesaj\``).join("\n") : messageTop = "Veri bulunmuyor."; 44 | Active2.length > 0 ? voiceTop = Active2.splice(0, 5).map(x => `<#${x.channelID}>: \`${moment.duration(x.channelData).format("H [saat], m [dakika] s [saniye]")}\``).join("\n") : voiceTop = "Veri bulunmuyor."; 45 | 46 | const messageData = await messageUser.findOne({ guildID: message.guild.id, userID: message.author.id }); 47 | const voiceData = await voiceUser.findOne({ guildID: message.guild.id, userID: message.author.id }); 48 | 49 | const messageDaily = messageData ? messageData.dailyStat : 0; 50 | const messageWeekly = messageData ? messageData.weeklyStat : 0; 51 | 52 | const voiceDaily = moment.duration(voiceData ? voiceData.dailyStat : 0).format("H [saat], m [dakika] s [saniye]"); 53 | const voiceWeekly = moment.duration(voiceData ? voiceData.weeklyStat : 0).format("H [saat], m [dakika] s [saniye]"); 54 | 55 | const coinData = await coin.findOne({ guildID: message.guild.id, userID: message.author.id }); 56 | 57 | const filteredParents = message.guild.channels.cache.filter((x) => 58 | x.type === "category" && 59 | !conf.publicParents.includes(x.id) && 60 | !conf.registerParents.includes(x.id) && 61 | !conf.solvingParents.includes(x.id) && 62 | !conf.privateParents.includes(x.id) && 63 | !conf.funParents.includes(x.id) && 64 | !conf.musicParents.includes(x.id) && 65 | !conf.streamerParents.includes(x.id) 66 | 67 | ); 68 | 69 | const maxValue = client.ranks[client.ranks.indexOf(client.ranks.find(x => x.coin >= (coinData ? coinData.coin : 0)))] || client.ranks[client.ranks.length-1]; 70 | const taggedData = await taggeds.findOne({ guildID: message.guild.id, userID: message.author.id }); 71 | let currentRank = client.ranks.filter(x => (coinData ? coinData.coin : 0) >= x.coin); 72 | currentRank = currentRank[currentRank.length-1]; 73 | 74 | const coinStatus = conf.coinSystem && message.member.hasRole(conf.staffs, false) && client.ranks.length > 0 ?` : ""} 75 | ${client.progressBar(coinData ? coinData.coin : 0, maxValue.coin, 8)} **${coinData ? coinData.coin : 0} / ${maxValue.coin}** 76 | ${currentRank ? `` : ` 77 | **Yetki Durumun:** 78 | ${Array.isArray(maxValue.role) ? maxValue.role.length > 1 ? maxValue.role.slice(0, -1).map(x => `<@&${x}>`).join(", ") + " ve " + maxValue.role.map(x => `<@&${x}>`).slice(-1) : maxValue.role.map(x => `<@&${x}>`).join("") : `<@&${maxValue.role}>`} rolüne ulaşmak için \`${maxValue.coin - (coinData ? coinData.coin : 0)}\` coin daha kazanmanız gerekiyor!`}` : ""; 79 | 80 | embed.setColor('WHITE') 81 | embed.setDescription(` 82 | ${message.author.toString()} (${message.member.roles.highest}) kişisinin sunucu verileri 83 | 84 | **Ses Bilgileri:** 85 | ${conf.emojis.nokta} Toplam Ses Saatin: \`${moment.duration(voiceData ? voiceData.topStat : 0).format("H [saat], m [dakika] s [saniye]")}\` 86 | ${conf.emojis.nokta} Public Odalar Odaları: \`${await category(conf.publicParents)}\` 87 | ${conf.emojis.nokta} Kayıt Odaları: \`${await category(conf.registerParents)}\` 88 | ${conf.emojis.nokta} Secret Odalar: \`${await category(conf.privateParents)}\` 89 | ${conf.emojis.nokta} Sorun Çözme Odaları: \`${await category(conf.solvingParents)}\` 90 | ${conf.emojis.nokta} Diğer Odalar: \`${await category(filteredParents.map(x => x.id))}\` 91 | 92 | **Mesaj Bilgileri:** 93 | ${conf.emojis.nokta} Haftalık Mesaj Verin: \`${messageData ? messageData.topStat : 0}\` 94 | 95 | **Puan Bar Durumun:** ${coinStatus}`); 96 | message.channel.send(embed); 97 | } 98 | }; -------------------------------------------------------------------------------- /Astre_Statistic/src/commands/coin.js: -------------------------------------------------------------------------------- 1 | const coin = require("../schemas/coin"); 2 | const conf = require("../configs/config.json"); 3 | 4 | module.exports = { 5 | conf: { 6 | aliases: [], 7 | name: "coin", 8 | help: "coin [ekle/sil/gönder] [kullanıcı] [sayı]", 9 | enabled: conf.coinSystem 10 | }, 11 | 12 | /** 13 | * @param {Client} client 14 | * @param {Message} message 15 | * @param {Array} args 16 | * @param {MessageEmbed} embed 17 | * @returns {Promise} 18 | */ 19 | run: async (client, message, args, embed) => { 20 | const member = message.mentions.members.first() || message.guild.members.cache.get(args[1]); 21 | if (!member) return message.channel.send(embed.setColor("GRAY").setDescription("Bir kullanıcı belirtmelisin!")); 22 | 23 | if (args[0] === "ekle" || args[0] === "add") { 24 | if (!message.member.hasPermission(8)) return; 25 | if (member.user.id === message.author.id) return message.channel.send(embed.setColor("GRAY").setDescription("Kendine coin ekleyemezsin!")); 26 | const count = parseInt(args[2]); 27 | if (!count) return message.channel.send(embed.setColor("GRAY").setDescription("Eklemek için bir sayı belirtmelisin!")); 28 | if (!count < 0) return message.channel.send(embed.setColor("GRAY").setDescription("Eklenecek sayı 0'dan küçük olamaz!")); 29 | 30 | await coin.findOneAndUpdate({ guildID: message.guild.id, userID: member.user.id }, { $inc: { coin: count } }, { upsert: true }); 31 | const coinData = await coin.findOne({ guildID: message.guild.id, userID: member.user.id }); 32 | let addedRoles = ""; 33 | if (coinData && client.ranks.some(x => coinData.coin >= x.coin && !member.hasRole(x.role))) { 34 | const roles = client.ranks.filter(x => coinData.coin >= x.coin && !member.hasRole(x.role)); 35 | addedRoles = roles; 36 | member.roles.add(roles[roles.length-1].role); 37 | embed.setColor("GRAY"); 38 | message.guild.channels.cache.get(conf.rankLog).send(embed.setColor("GRAY").setDescription(`${member.toString()} üyesine ${message.member.toString()} tarafından **${count}** adet coin eklendi ve kişiye ${roles.filter(x => roles.indexOf(x) === roles.length-1).map(x => `<@&${x.role}>`).join("\n")} rolleri verildi!`)); 39 | } 40 | message.channel.send(embed.setColor("GRAY").setDescription(`Başarıyla ${member.toString()} kullanıcısına **${count}** adet coin eklendi! \n\n${addedRoles.length > 0 ? `Verilen roller: \n${addedRoles.filter(x => addedRoles.indexOf(x) === addedRoles.length-1).map(x => `<@&${x.role}>`).join("\n")}` : ""}`)); 41 | } else if (args[0] === "sil" || args[0] === "remove") { 42 | if (!message.member.hasPermission(8)) return; 43 | if (member.user.id === message.author.id) return message.channel.send(embed.setColor("GRAY").setDescription("Kendinden coin çıkaramazsın!")); 44 | const count = parseInt(args[2]); 45 | if (!count) return message.channel.send(embed.setColor("GRAY").setDescription("Çıkarılacak için bir sayı belirtmelisin!")); 46 | if (!count < 0) return message.channel.send(embed.setColor("GRAY").setDescription("Çıkarılacak sayı 0'dan küçük olamaz!")); 47 | let coinData = await coin.findOne({ guildID: message.guild.id, userID: member.user.id }); 48 | if (!coinData || coinData && count > coinData.coin) return message.channel.send(embed.setColor("GRAY").setDescription("Çıkarmak istediğiniz sayı, kişinin mevcut coininden büyük olamaz!")); 49 | 50 | await coin.findOneAndUpdate({ guildID: message.guild.id, userID: member.user.id }, { $inc: { coin: -count } }, { upsert: true }); 51 | coinData = await coin.findOne({ guildID: message.guild.id, userID: member.user.id }); 52 | let removedRoles = ""; 53 | if (coinData && client.ranks.some(x => coinData.coin < x.coin && member.hasRole(x.role))) { 54 | const roles = client.ranks.filter(x => coinData.coin < x.coin && member.hasRole(x.role)); 55 | removedRoles = roles; 56 | roles.forEach(x => { 57 | member.roles.remove(x.role); 58 | }); 59 | embed.setColor("RED"); 60 | message.guild.channels.cache.get(conf.rankLog).send(embed.setColor("GRAY").setDescription(`${member.toString()} üyesinden ${message.member.toString()} tarafından **${count}** adet coin çıkarıldı ve kişiden ${roles.map(x => `<@&${x.role}>`).join(", ")} rolleri alındı!`)); 61 | } 62 | message.channel.send(embed.setColor("GRAY").setDescription(`Başarıyla ${member.toString()} kullanıcısından **${count}** adet coin çıkarıldı! \n\n${removedRoles.length > 0 ? `Alınan roller: \n${removedRoles.map(x => `<@&${x.role}>`).join("\n")}` : ""}`)); 63 | } else if (args[0] === "ver" || args[0] === "give" || args[0] === "gönder") { 64 | if (member.user.id === message.author.id) return message.channel.send(embed.setColor("GRAY").setDescription("Kendine coin veremezsin!")); 65 | const count = parseInt(args[2]); 66 | if (!count) return message.channel.send(embed.setColor("GRAY").setDescription("Coin vermek için bir sayı belirtmelisin!")); 67 | if (!count < 0) return message.channel.send(embed.setColor("GRAY").setDescription("Verilecek sayı 0'dan küçük olamaz!")); 68 | let coinData = await coin.findOne({ guildID: message.guild.id, userID: message.author.id }); 69 | if (!coinData || coinData && count > coinData.coin) return message.channel.send(embed.setColor("GRAY").setDescription("Göndereceğin sayı kendi coininden yüksek olamaz!")); 70 | 71 | await coin.findOneAndUpdate({ guildID: message.guild.id, userID: member.user.id }, { $inc: { coin: count } }, { upsert: true }); 72 | await coin.findOneAndUpdate({ guildID: message.guild.id, userID: message.author.id }, { $inc: { coin: -count } }, { upsert: true }); 73 | coinData = await coin.findOne({ guildID: message.guild.id, userID: message.author.id }); 74 | if (coinData && client.ranks.some(x => coinData.coin < x.coin && message.member.hasRole(x.role))) { 75 | const roles = client.ranks.filter(x => coinData.coin < x.coin && message.member.hasRole(x.role)); 76 | roles.forEach(x => { 77 | message.member.roles.remove(x.role); 78 | }); 79 | } 80 | const coinData2 = await coin.findOne({ guildID: message.guild.id, userID: member.user.id }); 81 | if (coinData2 && client.ranks.some(x => coinData2.coin >= x.coin && !member.hasRole(x.role))) { 82 | const roles = client.ranks.filter(x => coinData2.coin >= x.coin && !member.hasRole(x.role)); 83 | member.roles.add(roles[roles.length-1].role); 84 | } 85 | 86 | message.channel.send(embed.setColor("GRAY").setDescription(`${member.toString()} kişisine başarıyla **${count}** coin gönderildi!`)); 87 | } 88 | } 89 | }; -------------------------------------------------------------------------------- /Astre_Database/YulafBackup.js: -------------------------------------------------------------------------------- 1 | const { Discord, Client, MessageEmbed } = require('discord.js'); 2 | const client = global.client = new Client({fetchAllMembers: true}); 3 | const ayarlar = require('./ayarlar.json'); 4 | const fs = require('fs'); 5 | const mongoose = require('mongoose'); 6 | 7 | mongoose.connect(ayarlar.mongoDB, {useNewUrlParser: true, useUnifiedTopology: true}); 8 | const Database = require("./Schema/RoleBackup.js"); 9 | 10 | client.on("ready", async () => { 11 | client.user.setPresence({ activity: { name: ayarlar.status }, status: "dnd" }); 12 | let botVoiceChannel = client.channels.cache.get(ayarlar.botVoiceChannelID); 13 | if (botVoiceChannel) botVoiceChannel.join().catch(err => console.error("Ses Kanalına Bağlanamadım")); 14 | console.log(`Bağlantı Kanalı Güncellendi`); 15 | }); 16 | 17 | // ************************************************************************************************************************************* // 18 | 19 | setRoleBackup(); 20 | setInterval(() => { 21 | setRoleBackup(); 22 | }, 1000*60*60*4);; 23 | 24 | // ************************************************************************************************************************************* // 25 | 26 | client.on("message", async message => { 27 | if (message.author.bot || !message.guild || !message.content.toLowerCase().startsWith(ayarlar.botPrefix)) return; 28 | if (message.author.id !== ayarlar.botOwner && message.author.id !== message.guild.owner.id) return; 29 | let args = message.content.split(' ').slice(1); 30 | let command = message.content.split(' ')[0].slice(ayarlar.botPrefix.length); 31 | let embed = new MessageEmbed().setColor(ayarlar.EmbedColor).setAuthor(message.member.displayName, message.author.avatarURL({ dynamic: true, })).setTimestamp(); 32 | 33 | if (command === "eval" && message.author.id === ayarlar.botOwner) { 34 | if (!args[0]) return message.channel.send(`Kodu belirt.`); 35 | let code = args.join(' '); 36 | function clean(text) { 37 | if (typeof text !== 'string') text = require('util').inspect(text, { depth: 0 }) 38 | text = text.replace(/`/g, '`' + String.fromCharCode(8203)).replace(/@/g, '@' + String.fromCharCode(8203)) 39 | return text; 40 | }; 41 | try { 42 | var evaled = clean(await eval(code)); 43 | if(evaled.match(new RegExp(`${client.token}`, 'g'))) evaled.replace(client.token, "Yasaklı komut"); 44 | message.channel.send(`${evaled.replace(client.token, "Yasaklı komut")}`, {code: "js", split: true}); 45 | } catch(err) { message.channel.send(err, {code: "js", split: true}) }; 46 | }; 47 | 48 | if(command === "restart") { 49 | message.channel.send("Bot yeniden başlatılıyor").then(msg => { 50 | console.log("[BOT] Yeniden başlatılıyor"); 51 | process.exit(0); 52 | }); 53 | 54 | }; 55 | 56 | 57 | // ************************************************************************************************************************************* // 58 | 59 | if(command === "kur" || command === "kurulum" || command === "backup" || command === "setup") { 60 | if (!args[0] || isNaN(args[0])) return message.channel.send(embed.setDescription("Geçerli bir \`Rol ID\` belirtmelisin.")); 61 | 62 | Database.findOne({guildID: ayarlar.guildID, roleID: args[0]}, async (err, roleData) => { 63 | if (!roleData) return message.channel.send(embed.setDescription("Belirttiğin \`Rol ID'sine\` ait veri bulamadım.")); 64 | message.react(ayarlar.onayID); 65 | let yeniRol = await message.guild.roles.create({ 66 | data: { 67 | name: roleData.name, 68 | color: roleData.color, 69 | hoist: roleData.hoist, 70 | permissions: roleData.permissions, 71 | position: roleData.position, 72 | mentionable: roleData.mentionable 73 | }, 74 | reason: "Rol silindiği için tekrar oluşturuldu." 75 | }); 76 | 77 | setTimeout(() => { 78 | let kanalPermVeri = roleData.channelOverwrites; 79 | if (kanalPermVeri) kanalPermVeri.forEach((perm, index) => { 80 | let kanal = message.guild.channels.cache.get(perm.id); 81 | if (!kanal) return; 82 | setTimeout(() => { 83 | let yeniKanalPermVeri = {}; 84 | perm.allow.forEach(p => { 85 | yeniKanalPermVeri[p] = true; 86 | }); 87 | perm.deny.forEach(p => { 88 | yeniKanalPermVeri[p] = false; 89 | }); 90 | kanal.createOverwrite(yeniRol, yeniKanalPermVeri).catch(console.error); 91 | }, index*5000); 92 | }); 93 | }, 5000); 94 | 95 | let roleMembers = roleData.members; 96 | roleMembers.forEach((member, index) => { 97 | let uye = message.guild.members.cache.get(member); 98 | if (!uye || uye.roles.cache.has(yeniRol.id)) return; 99 | setTimeout(() => { 100 | uye.roles.add(yeniRol.id).catch(console.error); 101 | }, index*3000); 102 | }); 103 | 104 | let logKanali = client.channels.cache.find(a => a.name == "database-log") 105 | if (logKanali) { logKanali.send(`🛡️ ${message.author} tarafından (\`${roleData.name}\`), (\`${roleData.roleID}\`) Rolün yedeği kurulmaya başladı, üyelere dağıtılmaya, kanalların izinlerine eklenmeye başlanıyor, @here`).catch(); } 106 | else { message.guild.owner.send(`🛡️ ${message.author} tarafından (\`${roleData.name}\`), (\`${roleData.roleID}\`) Rolün yedeği kurulmaya başladı, üyelere dağıtılmaya, kanalların izinlerine eklenmeye başlanıyor, @here`).catch(err => {}); }; 107 | }); 108 | }; 109 | }); 110 | 111 | function setRoleBackup() { 112 | let guild = client.guilds.cache.get(ayarlar.guildID); 113 | let DatabaseLog = client.channels.cache.find(a => a.name == "database-log") 114 | if (guild) { 115 | guild.roles.cache.filter(r => r.name !== "@everyone" && !r.managed).forEach(role => { 116 | let roleChannelOverwrites = []; 117 | guild.channels.cache.filter(c => c.permissionOverwrites.has(role.id)).forEach(c => { 118 | let channelPerm = c.permissionOverwrites.get(role.id); 119 | let pushlanacak = { id: c.id, allow: channelPerm.allow.toArray(), deny: channelPerm.deny.toArray() }; 120 | roleChannelOverwrites.push(pushlanacak); 121 | }); 122 | 123 | Database.findOne({guildID: ayarlar.guildID, roleID: role.id}, async (err, savedRole) => { 124 | if (!savedRole) { 125 | let newRoleSchema = new Database({ 126 | _id: new mongoose.Types.ObjectId(), 127 | guildID: ayarlar.guildID, 128 | roleID: role.id, 129 | name: role.name, 130 | color: role.hexColor, 131 | hoist: role.hoist, 132 | position: role.position, 133 | permissions: role.permissions, 134 | mentionable: role.mentionable, 135 | time: Date.now(), 136 | members: role.members.map(m => m.id), 137 | channelOverwrites: roleChannelOverwrites 138 | }); 139 | newRoleSchema.save(); 140 | } else { 141 | savedRole.name = role.name; 142 | savedRole.color = role.hexColor; 143 | savedRole.hoist = role.hoist; 144 | savedRole.position = role.position; 145 | savedRole.permissions = role.permissions; 146 | savedRole.mentionable = role.mentionable; 147 | savedRole.time = Date.now(); 148 | savedRole.members = role.members.map(m => m.id); 149 | savedRole.channelOverwrites = roleChannelOverwrites; 150 | savedRole.save(); 151 | }; 152 | }); 153 | }); 154 | 155 | Database.find({guildID: ayarlar.guildID}).sort().exec((err, roles) => { 156 | roles.filter(r => !guild.roles.cache.has(r.roleID) && Date.now()-r.time > 1000*60*60*24*3).forEach(r => { 157 | Database.findOneAndDelete({roleID: r.roleID}); 158 | 159 | 160 | }); 161 | }); 162 | console.log(`Rollerin Yedeğini MongoDB'Ye kaydetttim.`); 163 | DatabaseLog.send(`📕 Sunucunun Rollerinin Yedeği Başarıyla Alındı!`) 164 | }; 165 | } 166 | client.on("disconnect", () => console.log("Bot bağlantısı kesildi")) 167 | client.on("reconnecting", () => console.log("Bot tekrar bağlanıyor..")) 168 | client.login(ayarlar.botToken).then(x => console.log(`${client.user.tag} Bot Aktif`)).catch(err => console.error(`Bota Giriş Yapılamadı.!\n ∞ Hata : ${err}`)) -------------------------------------------------------------------------------- /Astre_Statistic/src/commands/task.js: -------------------------------------------------------------------------------- 1 | const task = require("../schemas/task"); 2 | const conf = require("../configs/config.json"); 3 | const ms = require("ms"); 4 | 5 | module.exports = { 6 | conf: { 7 | aliases: ["görev"], 8 | name: "task", 9 | help: "görev [ver/sil] [kullanıcı] [invite/ses/mesaj/taglı/kayıt] [süre] [miktar(ses)] [ödül miktarı] [kanallar(tercih)] / [sil] [görev ID] / al [görev tipi]? / şema [ekle/sil/liste/bilgi]", 10 | enabled: conf.coinSystem 11 | }, 12 | 13 | /** 14 | * @param {Client} client 15 | * @param {Message} message 16 | * @param {Array} args 17 | * @param {MessageEmbed} embed 18 | * @returns {Promise} 19 | */ 20 | run: async (client, message, args, embed) => { 21 | const type = args[2]; 22 | const duration = 1000 * 60 * (["hourly", "saatlik"].includes(args[3]) ? 60 : ["daily", "günlük"].includes(args[3]) ? 60 * 24 : ["weekly", "haftalık"].includes(args[3]) ? 60 * 24 * 7 : args[3]); 23 | let count = args[4]; 24 | const prizeCount = args[5]; 25 | const channels = message.mentions.channels.array(); 26 | embed.setThumbnail("https://img.itch.zone/aW1nLzIzNzE5MzEuZ2lm/original/GcEpW9.gif"); 27 | if (["ver", "give"].includes(args[0])) { 28 | if (!message.member.hasPermission(8)) return message.channel.error(message, "Yeterli yetkin bulunmuyor!"); 29 | const member = message.mentions.members.first() || message.guild.members.cache.get(args[1]); 30 | let role = null; 31 | if (!member && message.mentions.roles.first()) role = message.mentions.roles.first(); 32 | else if (!member) return message.channel.error(message, "Bir üye belirtmelisin!"); 33 | if (!role && !conf.staffs.some((x) => member.roles.cache.has(x))) return message.channel.error(message, "Bu üye bir yetkili değil!"); 34 | if (!type || !["invite", "ses", "mesaj", "taglı", "kayıt", "şema", "schema"].includes(type)) return message.channel.error(message, "Verilecek görev tipini belirtmelisin!"); 35 | if (["şema", "schema"].includes(args[2])) { 36 | const id = args[3]; 37 | if (!id) return message.channel.error(message, "Bir şema ID'si belirtmelisin!"); 38 | const schema = client.tasks.find((x) => x.id === parseInt(id)); 39 | if (!schema) return message.channel.error(message, `${id} ID'li bir görev şeması bulunamadı!`); 40 | if (role) { 41 | const members = role.members.filter((x) => conf.staffs.some((r) => x.roles.cache.has(r))); 42 | members.forEach(async (x) => await x.giveTask(message.guild.id, schema.type, schema.count, schema.prizeCount, true, schema.duration, schema.channels.length ? channels.map((x) => x.id) : null)); 43 | message.channel.send(embed.setColor("GRAY").setDescription(`${message.mentions.roles.first().toString()} rolüne sahip olan tüm üyelere başarıyla ${id} ID'li şemadan görevi verildi! \nGörev verilen üyeler: ${members.map((x) => x.toString()).join(", ")}`)); 44 | } else { 45 | await member.giveTask(message.guild.id, schema.type, schema.count, schema.prizeCount, true, schema.duration, schema.channels ? channels.map((x) => x.id) : null); 46 | message.channel.send(embed.setColor("GRAY").setDescription(`${member.toString()} üyesine başarıyla ${id} ID'li şemadan verildi!`)); 47 | } 48 | } 49 | if (type === "ses") count = 1000 * 60 * count; 50 | if (!args[3]) return message.channel.error(message, "Bir süre belirtmelisin!"); 51 | if (!count || isNaN(count)) return message.channel.error(message, "Bir miktar belirtmelisin!"); 52 | if (!prizeCount || isNaN(prizeCount)) return message.channel.error(message, "Bir ödül miktarı belirtmelisin!"); 53 | let taskMessage; 54 | switch (type) { 55 | case "invite": 56 | taskMessage = `**Sunucumuza ${count} kişi davet et!**`; 57 | break; 58 | case "mesaj": 59 | taskMessage = channels.length ? `**${channels.map((x) => `<#${x}>`).join(", ")} ${channels.length > 1 ? "kanallarında" : "kanalında"} ${count} mesaj at!**` : `**Metin kanallarında ${count} mesaj at!**`; 60 | break; 61 | case "ses": 62 | taskMessage = channels.length ? `**${channels.map((x) => `<#${x}>`).join(", ")} ${channels.length > 1 ? "kanallarında" : "kanalında"} ${count/1000/60} dakika vakit geçir!` : `**Seste ${count/1000/60} dakika vakit geçir!**`; 63 | break; 64 | case "taglı": 65 | taskMessage = `**${count} kişiye tag aldır!**`; 66 | break; 67 | case "kayıt": 68 | taskMessage = `**Sunucumuzda ${count} kişi kayıt et!**`; 69 | break; 70 | } 71 | if (role) { 72 | const members = role.members.filter((x) => conf.staffs.some((r) => x.roles.cache.has(r))); 73 | members.forEach(async (x) => await x.giveTask(message.guild.id, type, count, prizeCount, true, duration, channels.length ? channels.map((x) => x.id) : null, taskMessage)); 74 | message.channel.send(embed.setColor("GRAY").setDescription(`${message.mentions.roles.first().toString()} rolüne sahip olan tüm üyelere başarıyla ${type} görevi verildi! \nGörev verilen üyeler: ${members.map((x) => x.toString()).join(", ")}`)); 75 | } else { 76 | await member.giveTask(message.guild.id, type, count, prizeCount, true, duration, channels.length ? channels.map((x) => x.id) : null, taskMessage); 77 | message.channel.send(embed.setColor("GRAY").setDescription(`${member.toString()} üyesine başarıyla ${type} görevi verildi!`)); 78 | } 79 | } else if (["sil", "delete", "al"].includes(args[0])) { 80 | if (!message.member.hasPermission(8)) return message.channel.error(message, "Yeterli yetkin bulunmuyor!"); 81 | const id = args[1]; 82 | if (!id || isNaN(id)) return message.channel.error(message, "Bir görev ID'si belirtmelisin!"); 83 | await task.deleteOne({ guildID: message.guild.id, id }); 84 | message.channel.send(embed.setColor("GRAY").setDescription(`${id} ID'li görev başarıyla silindi!`)); 85 | } else if (["al", "take"].includes(args[0])) { 86 | if (!conf.staffs.some((x) => message.member.roles.cache.has(x))) return message.channel.error(message, "Yeterli yetkin bulunmuyor!"); 87 | if (!client.tasks.length) return message.channel.error(message, "Sunucuda herhangi bir görev şeması oluşturulmamış!"); 88 | const task = client.tasks.random(); 89 | await message.member.giveTask(message.guild.id, task.type, task.count, task.prizeCount, true, task.duration); 90 | message.channel.send(embed.setColor("GRAY").setDescription(` 91 | Başarıyla bir görev aldın! 92 | 93 | Görev Tipi: \`${task.type}\` 94 | Görev Süresi: \`${ms(task.duration).replace("h", " saat").replace("m", " dakika").replace("s", " saniye")}\` 95 | Görev Tamamlama Sayısı: \`${task.count}\` 96 | Görev Ödülü: \`${task.prizeCount} coin\` 97 | `)); 98 | } else if (["şema", "schema"].includes(args[0])) { 99 | if (!message.member.hasPermission(8)) return message.channel.error(message, "Yeterli yetkin bulunmuyor!"); 100 | if (["ekle", "add"].includes(args[1])) { 101 | if (!type || !["invite", "ses", "mesaj", "taglı", "kayıt"].includes(type)) return message.channel.error(message, "Verilecek görev tipini belirtmelisin!"); 102 | if (type === "ses") count = 1000 * 60 * count; 103 | if (!args[3]) return message.channel.error(message, "Bir süre belirtmelisin!"); 104 | if (!count || isNaN(count)) return message.channel.error(message, "Bir miktar belirtmelisin!"); 105 | if (!prizeCount || isNaN(prizeCount)) return message.channel.error(message, "Bir ödül miktarı belirtmelisin!"); 106 | const channels = message.mentions.channels.array(); 107 | client.tasks = global.rankdb.push("tasks", { id: client.tasks.length + 1, type, duration, count, prizeCount, channels: channels.length ? channels.map((x) => x.id) : null }); 108 | message.channel.send(embed.setColor("GRAY").setDescription(` 109 | Başarıyla yeni bir görev şeması eklendi! 110 | 111 | Şema ID: \`${client.tasks.length}\` 112 | Görev Tipi: \`${type}\` 113 | Görev Süresi: \`${ms(duration).replace("h", " saat").replace("m", " dakika").replace("s", " saniye")}\` 114 | Görev Tamamlama Sayısı: \`${type === "ses" ? count/1000/60 + "dakika" : count}\` 115 | Görev Ödülü: \`${prizeCount} coin\` 116 | `)); 117 | } else if (["sil", "delete"].includes(args[1])) { 118 | const id = args[2]; 119 | if (!client.tasks.some((x) => x.id !== id)) return message.channel.error(message, `${id} ID'li bir görev şeması bulunamadı!`); 120 | client.tasks = global.rankdb.set("tasks", client.tasks.filter((x) => x.id !== id)); 121 | message.channel.send(embed.setColor("GRAY").setDescription(`${id} ID'li görev şeması başarıyla silindi!`)); 122 | } else if (["liste", "list"].includes(args[1])) message.channel.sendEmbed(embed.setColor("GRAY").setDescription(client.tasks.map((x) => `\`#${x.id}\` ${x.type} ${x.count} ${x.prizeCount} ${x.channels ? x.channels.map((x) => `<#${x}>`) : ""}`).join("\n"))); 123 | else if (["bilgi", "info"].includes(args[1])) { 124 | const id = args[2]; 125 | if (!id) return message.channel.error(message, "Bir şema ID'si belirtmelisin!"); 126 | const schema = client.tasks.find((x) => x.id === parseInt(id)); 127 | if (!schema) return message.channel.error(message, `${id} ID'li bir görev şeması bulunamadı!`); 128 | message.channel.send(embed.setColor("GRAY").setDescription(` 129 | ${id} ID'li görev şemasının bilgileri; 130 | 131 | Görev Tipi: \`${schema.type}\` 132 | Görev Süresi: \`${ms(schema.duration).replace("h", " saat").replace("m", " dakika").replace("s", " saniye")}\` 133 | Görev Tamamlama Sayısı: \`${schema.count}\` 134 | Görev Ödülü: \`${schema.prizeCount} coin\` 135 | `)); 136 | } 137 | } else return message.channel.error(message, "Geçerli bir argüman belirtmelisin! `(ver, sil)`"); 138 | } 139 | }; 140 | -------------------------------------------------------------------------------- /Astre_Executive/Yulaf.js: -------------------------------------------------------------------------------- 1 | const { Client, Collection, MessageEmbed } = require("discord.js"); 2 | const client = new Client({ fetchAllMembers: true }); 3 | const fs = require("fs"); 4 | const config = client.config = require("./config.json"); 5 | const db = require('quick.db') 6 | const moment = require("moment"); 7 | require("moment-duration-format"); 8 | require("moment-timezone"); 9 | moment.locale("tr"); 10 | 11 | const mongoose = require("mongoose"); 12 | const { SSL_OP_ALL, SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION } = require("constants"); 13 | mongoose.connect(config.mongoDB, { useNewUrlParser: true, useUnifiedTopology: true, useFindAndModify: false }).then(x => 14 | console.log(`Mongo Bağlantısı Kuruldu.`)).catch(err => console.error(err)); 15 | mongoose.connection.on('error', (err) => { console.log(`MongoDB Error : ${err}`); 16 | }); 17 | 18 | Array.prototype.clear = function() { 19 | let newArray = []; 20 | for (let i of this) { 21 | if (!newArray.includes(i) && i !== "" && i !== " ") newArray.push(i); 22 | }; 23 | return newArray; 24 | }; 25 | 26 | Date.prototype.toTurkishFormat = function() { 27 | return moment.tz(this, "Europe/Istanbul").format('LLL'); 28 | }; 29 | 30 | const events = fs.readdirSync("./events"); 31 | for (let event of events) { 32 | if (!event.endsWith(".js")) continue; 33 | let prop = require(`./events/${event}`); 34 | if (!prop.config) continue; 35 | if (prop.config.name !== "ready") { 36 | client.on(prop.config.name, prop); 37 | } else { 38 | client.on(prop.config.name, () => prop(client)); 39 | }; 40 | }; 41 | 42 | client.commands = new Collection(); 43 | client.aliases = new Collection(); 44 | const commands = fs.readdirSync("./commands"); 45 | for (let command of commands) { 46 | if (!command.endsWith(".js")) continue; 47 | let prop = require(`./commands/${command}`); 48 | client.commands.set(prop.config.name, prop); 49 | if (prop.config.aliases) { 50 | prop.config.aliases.clear().forEach(aliase => { 51 | client.aliases.set(aliase, prop.config.name); 52 | }); 53 | }; 54 | }; 55 | 56 | client.on("guildMemberAdd", async(member) => { 57 | {member.roles.add(config.unregisterRoles)} 58 | }) 59 | 60 | client.on("guildMemberAdd", member => { 61 | require("moment-duration-format") 62 | var üyesayısı = member.guild.members.cache.size.toString().replace(/ /g, " ") 63 | var üs = üyesayısı.match(/([0-999])/g) 64 | üyesayısı = üyesayısı.replace(/([a-zA-Z])/g, "bilinmiyor").toLowerCase() 65 | if(üs) { 66 | üyesayısı = üyesayısı.replace(/([0-9999])/g, d => { 67 | return {'0': `:0_:`, '1': `:1_:`, '2': `:2_:`, '3': `:3_:`, '4': `:4_:`, '5': `:5_:`, '6': `:6_:`, '7': `:7_:`, '8': `:8_:`, '9': `:9_:`}[d];})} 68 | const kanal = member.guild.channels.cache.find(r => r.id === config.HoşgeldinKanalID) 69 | let user = client.users.cache.get(member.id); 70 | require("moment-duration-format"); 71 | const kurulus = new Date().getTime() - user.createdAt.getTime(); 72 | var kontrol; 73 | if (kurulus < 604800) kontrol = config.false 74 | if (kurulus > 604800) kontrol = config.True 75 | 76 | moment.locale("tr"); 77 | kanal.send(`${config.kalp} ${member} (\`${member.id}\`) Aramıza Hoşgeldin! ${config.kalp} 78 | 79 | Hesabın **${moment(member.user.createdTimestamp).format("LLL")}** tarihinde açılmış (**${moment(member.user.createdAt).add(5, 'days').fromNow().replace("Bir kaç saniye", " ")}**) önce oluşturulmuş `+kontrol+` 80 | 81 | Seninle beraber sunucumuz **${member.guild.memberCount}** kişi sayısına ulaştı, yetkililer senin ile ilgilenecektir! 82 | 83 | Sunucu kurallarımız <#${config.rules}> kanalında belirtilmiştir, Unutma sunucu içerisinde ki ceza işlemlerin kuralları okuduğunu varsayarak gerçekleştirilecek.`)}) 84 | 85 | client.on("message", async message => { 86 | if (message.content === "!gir") {if(!message.member.hasPermission("ADMINISTRATOR")) return message.channel.send("Bu komutu kullanabilmek için **Yönetici** yetkisine sahip değilsin!"); 87 | client.emit( 88 | "guildMemberAdd", 89 | message.member || (await message.guild.fetchMember(message.author)) 90 | ); 91 | } 92 | }); 93 | 94 | client.on("messageDelete", async message => { 95 | if (message.channel.type === "dm" || !message.guild || message.author.bot) return; 96 | await db.set(`snipe.${message.guild.id}.${message.channel.id}`, { yazar: message.author.id, yazilmaTarihi: message.createdTimestamp, silinmeTarihi: Date.now(), dosya: message.attachments.first() ? true : false }); 97 | if (message.content) db.set(`snipe.${message.guild.id}.${message.channel.id}.icerik`, message.content); 98 | }); 99 | 100 | client.on("guildMemberAdd", async yulaf => { 101 | const kanal = yulaf.guild.channels.cache.find(r => r.id === config.HoşgeldinKanalID); 102 | const tarih = new Date().getTime() - yulaf.user.createdAt.getTime(); 103 | if (tarih < 1000*360*247 ) { 104 | yulaf.roles.add(config.ŞüpheliHesap) 105 | yulaf.roles.remove(config.unregisterRoles) 106 | kanal.send(`${yulaf} ${yulaf.id} Adlı kullanıcının hesabı yeni açıldığı için jaile atıldı.`) 107 | yulaf.send(`Hesabın 7 günden az bi sürede açıldığı için jaile atıldın. Eğer bir yanlışlık olduğunu düşünüyorsan yanda bulunan yetkililere yazabilirsin.`)} 108 | }); 109 | 110 | const yavsamaSöz = [ 111 | 112 | 'Varlığın dünyada cenneti yaşatıyor bana.', 113 | 'Bir gülüşü var, kelebek görse ömrü uzar.', 114 | 'çünkü sen gittiğinde sokak lambaları gözümü kamaştırıyor', 115 | 'Seni düşlerken bir tebessüm beliriyor suretimde.', 116 | 'Gölgene sığınırım en çaresiz anımda.', 117 | 'Gamzen diyorum bir ömür sevmelik.', 118 | 'Sen sevilmek için yaratılmışsın.', 119 | 'Varsan var yoksan yokum.', 120 | 'Bu dünya için fazla mükemmelsin.', 121 | 'Yüzümdeki oluşan gülümsemenin sebebisin.', 122 | 'Damlaya damlaya büyütüyorum sevgimi.', 123 | 'Gecemi aydınlatan yıldızımsın.', 124 | 'Gözlerin gökyüzü kadar uçsuz bucaksız.', 125 | 'Ömrümün en güzel mevsimi sensin.', 126 | 'Başıma gelen güzel şeylerin nedeni hep sensin.', 127 | 'Gülüşünde bir şey var hep içime dokunur.', 128 | 'Kendimi sende bulduğum için bu kadar güzelsin.', 129 | 'Varlığın bir çocuğun gülüşü gibi; öyle güzel öyle masum ki.', 130 | 'Uyanmak istemediğim en güzel rüyam sensin.', 131 | 'Masallar elbette güzel; kahramanı sen isen.', 132 | 'Her adımımda senin adını fısıldar yollar…', 133 | 'Sen bana aitsin, Balık denize, bulut gökyüzüne ait.', 134 | 'Her bir kirpiğinin ayrı bir büyüsü var zihnimde.', 135 | 'Derdim de devam da sen oldun haberin yok.', 136 | 'Sen varsan yeter ömrüme. Gerisi hikâye.', 137 | 'Seni kokladığımda, nefes aldığımı hatırlıyorum.', 138 | 'Lütfen üzerine alın! Kimseyi görmedim ben, senden daha güzel gülen.', 139 | 'Fazlası zarar olmayan iki şey; biri sen biri kokun.', 140 | 'Kokunu içime çektiğimde nefes aldığımı anlıyorum.', 141 | 'Bir gülümse bana, o eşsiz gülüşünle güneş açsın hayatımda.', 142 | 'Nasıl anlatsam seni sana? Gökyüzü gibi gözlerinde kaybolabiliyormuş insan.', 143 | 'Sen varsın, bundan güzel bir teselli var mı dünyada?', 144 | 'Gözlerimin gördüğü en güzel şey sensin.', 145 | 'Sesini duydum, huzura kavuştum.', 146 | 'Kalbinin güzelliği yüzüne vurmuş, ben buna ilk kez şahit oluyorum.', 147 | 'Sen benim yeniden kendime gelişim gibisin. Seni görmek sarsıyor insanı, insan yeryüzünde melek görüyor sanki.', 148 | 'Sen hayatın bana verdiği en güzel armağansın.', 149 | 'Bu yeryüzünde sevilmeye dair her şey sende toplanmış', 150 | 'Her şey çirkinken sen nasıl bu kadar güzelsin?', 151 | 'Sen bu dünyada gülüşü olan tek manzaramsın.', 152 | 'Benim bütün hevesim sende. Seninle ilgili her şey heyecanlandırıyor beni.', 153 | 'Benim sadece seninle olmaya ihtiyacım var. Her şey sende toplanmış.', 154 | 'Sen bana hep öyle tatlı tatlı bak emi.', 155 | 'Sen benim için teksin ve bana yetersin.', 156 | 'Biliyor musun? ilk seninle bir dilenciye para verdim. İnanmadığım yapmam dediğim her şeyi seninle yaptım.', 157 | 'Bir buse misali öpünce izi kalansın.', 158 | 'Gel benim ekmeğim, suyum, aşım ol', 159 | 'Şimdi divaneye döndüm seni görünce.', 160 | 'Çiçekler bile kıskanıyor bak aşkımızı.', 161 | 'Senin aşkın beni gece gözlüm deli ediyor.', 162 | 'Kurumuş bir ağaç gibiydim, sen geldin yeniden yeşerdim', 163 | 'Küçük bir çocuğun masumiyeti gibisin sevmeye kıyamadığım.', 164 | 'Senle aşkı öğrendim, sevgiyi, paylaşmayı…', 165 | 'Gülerken kendini görsen inan kendi ömrüne ömür katardın.', 166 | 'Dertlerini bana ver sevinçler senin olsun..', 167 | 'Etrafımda olduğunda başka bir şeye ihtiyacım olmuyor.', 168 | 'Sen olmadan nasıl var olacağımı bilmiyorum.', 169 | 'Güneşe gerek yok, gözlerindeki sıcaklık içimi ısıtıyor.', 170 | 'Gözlerimi senden alamıyorum, benim tüm dünyam sensin.', 171 | 'Mutluluk ne diye sorsalar, cevabı gülüşünde ve o sıcak bakışında arardım.', 172 | 'Bir şeyler ters gittiğinde, aramak istediğim ilk kişi sensin.', 173 | 'Kusursuz tavırların var. Korkunç kararlar verdiğimde beni yargılamadığın için sana minnettarım.', 174 | 'Baharı anımsatan kokunu içime çektiğimde, her şey mümkün görünüyor.', 175 | 'Bu kadar güzel bakma, başka biri daha sana aşık olur diye ödüm kopuyor.', 176 | 'Güzel yüzünü göremediğim için geceleri hiç sevmiyorum.', 177 | 'Dünyadaki tüm şiirler sana yazılmış gibi hissettiriyorsun.', 178 | 'Sen benim aldığım en doğru kararsın.', 179 | 'Sen gülümseyince bulutlar dağılıyor göz bebeğim.', 180 | 'Sabah uykusu kadar güzelsin.', 181 | 'Onu Bunu Boşver de bize gel 2 bira içelim.', 182 | 'Seni anlatmaya kelimeler bulamıyorum. Nasıl anlatacağımı bilemediğim için seni kimselere anlatamıyorum', 183 | 'Yuva kokuyor kucağın. Sarılınca seninle yuva kurası geliyor insanın', 184 | 'Öyle bir duru güzelliğin var ki, seni gören şairler bile adına günlerce şiir yazardı.', 185 | 'Işık oluyorsun karanlık gecelerime.', 186 | 'Gözlerin adeta bir ay parçası.', 187 | 'Sen benim bu hayattaki en büyük duamsın.', 188 | 'Parlayan gözlerin ile karanlık gecelerime ay gibi doğuyorsun.', 189 | 'Huzur kokuyor geçtiğin her yer.', 190 | 'Bir gülüşün ile çiçek açıyor bahçemdeki her bir çiçek.', 191 | 'yulaf seni çok sevdi...', 192 | 'Sen benim düşlerimin surete bürünmüş halisin.', 193 | 'Mucizelerden bahsediyordum.', 194 | 'Yaşanılacak en güzel mevsim sensin.', 195 | 'Sıradanlaşmış her şeyi, ne çok güzelleştiriyorsun.', 196 | 'Gönlüm bir şehir ise o şehrin tüm sokakları sana çıkar.', 197 | 'Birilerinin benim için ettiğinin en büyük kanıtı seninle karşılaşmam.', 198 | 'Denize kıyısı olan şehrin huzuru birikmiş yüzüne.', 199 | 'Ben çoktan şairdim ama senin gibi şiiri ilk defa dinliyorum.', 200 | 'Gece yatağa yattığımda aklımda kalan tek gerçek şey sen oluyorsun.', 201 | 'Ne tatlısın sen öyle. Akşam gel de iki bira içelim.', 202 | 'Bir gamzen var sanki cennette bir çukur.', 203 | 'Gecemi aydınlatan yıldızımsın.', 204 | 'Ponçik burnundan ısırırım seni', 205 | 'Bu dünyanın 8. harikası olma ihtimalin?', 206 | 'fıstık naber?', 207 | 'Dilek tutman için yıldızların kayması mı gerekiyor illa ki? Gönlüm gönlüne kaydı yetmez mi?', 208 | 'Süt içiyorum yarım yağlı, mutluluğum sana bağlı.', 209 | 'Müsaitsen aklım bu gece sende kalacak.', 210 | 'Gemim olsa ne yazar liman sen olmadıktan sonra...', 211 | 'Gözlerimi senden alamıyorum çünkü benim tüm dünyam sensin.', 212 | 'Sabahları görmek istediğim ilk şey sensin.', 213 | 'Mutluluk ne diye sorsalar- cevabı gülüşünde ve o sıcak bakışında arardım.', 214 | 'Hayatım ne kadar saçma olursa olsun, tüm hayallerimi destekleyecek bir kişi var. O da sensin, mükemmel insan.', 215 | 'Bir adada mahsur kalmak isteyeceğim kişiler listemde en üst sırada sen varsın.', 216 | 'Sesini duymaktan- hikayelerini dinlemekten asla bıkmayacağım. Konuşmaktan en çok zevk aldığım kişi sensin.', 217 | 'Üzerinde pijama olsa bile, nasıl oluyor da her zaman bu kadar güzel görünüyorsun? Merhaba, neden bu kadar güzel olduğunu bilmek istiyorum.', 218 | 'Çok yorulmuş olmalısın. Bütün gün aklımda dolaşıp durdun.', 219 | 'Çocukluk yapsan da gönlüme senin için salıncak mı kursam?', 220 | 'Sen birazcık huzur aradığımda gitmekten en çok hoşlandığım yersin.', 221 | 'Hangi çiçek anlatır güzelliğini? Hangi mevsime sığar senin adın. Hiçbir şey yeterli değil senin güzelliğine erişmeye. Sen eşsizsin...', 222 | 'Rotanızı geçen her geminin ışığıyla değil, yıldızlara göre ayarlayın.', 223 | 'Telaşımı hoş gör, ıslandığım ilk yağmursun.', 224 | 'Gülüşün ne güzel öyle- cumhuriyetin gelişi gibi...', 225 | 'Domates biber patlıcan, bu gece sana saplıcam...', 226 | 'Bu ego nereden geliyor. Kuyudan mı çıkarıyorsun?', 227 | 'Çok tatlısın :blush:', 228 | ]; 229 | client.on("message", async message => { 230 | if(message.channel.id !== config.chatKanal) return; 231 | let YavsakBot = db.get('chatiltifat'); 232 | await db.add("chatiltifat", 1); 233 | if(YavsakBot >= 90) { 234 | db.delete("chatiltifat"); 235 | const random = Math.floor(Math.random() * ((yavsamaSöz).length - 1) + 1); 236 | message.reply(`${(yavsamaSöz)[random]}`); 237 | }; 238 | }); 239 | 240 | client.on("guildMemberAdd", member => { 241 | if(member.user.username.includes("ꑕ") && (member.user.username.includes("salvo")) && (member.user.username.includes("Salvo") && (member.user.username.includes("ˡᵒʳᶤᵉᶰ")))){ 242 | member.roles.add(config.yasaklitag) 243 | member.roles.remove(config.unregisterRoles) 244 | member.send("__Sunucumuzun Yasaklı Tagında Bulunuyorsunuz, Şüpheli Kısmına Atıldınız.__")} 245 | }) 246 | 247 | client.on("guildMemberAdd", member => { 248 | const yulafcik = member.guild.channels.cache.find(r => r.id === config.HoşgeldinKanalID); 249 | if(member.user.username.includes(config.tag)){ 250 | member.roles.add(config.Tagges) 251 | yulafcik.send(`${member} (\`${member.id}\`) Sunucuya Taglı Bir Şekilde Giriş Yaptı!`)} 252 | }) 253 | 254 | async function yasaklitag() { 255 | let guild = client.guilds.cache.get(config.guildID); 256 | let data = await db.get(`yasaklitaglar.${guild.id}`) || [] 257 | guild.members.cache.filter(s => data.some(x => s.user.username.includes(x)) && !s.roles.cache.has("860318251615911936")).forEach(m => m.roles.set(['860318251615911936']))} 258 | setInterval(async() => { 259 | yasaklitag() 260 | }, 60000) 261 | 262 | client.login(config.botToken).then(x => console.log(`${client.user.tag} Bot Aktif`)).catch(err => console.error(`Bota Giriş Yapılamadı.!\n ∞ Hata : ${err}`)) -------------------------------------------------------------------------------- /Astre_Welcome/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "dc-welcome-bot", 3 | "requires": true, 4 | "lockfileVersion": 1, 5 | "dependencies": { 6 | "@derhuerst/http-basic": { 7 | "version": "8.2.1", 8 | "resolved": "https://registry.npmjs.org/@derhuerst/http-basic/-/http-basic-8.2.1.tgz", 9 | "integrity": "sha512-Rmn7qQQulw2sxJ8qGfZ7OuqMWuhz8V+L5xnYKMF5cXVcYqmgWqlVEAme90pF7Ya8OVhxVxLmhh0rI2k6t7ITWw==", 10 | "requires": { 11 | "caseless": "^0.12.0", 12 | "concat-stream": "^1.6.2", 13 | "http-response-object": "^3.0.1", 14 | "parse-cache-control": "^1.0.1" 15 | } 16 | }, 17 | "@discordjs/collection": { 18 | "version": "0.1.6", 19 | "resolved": "https://registry.npmjs.org/@discordjs/collection/-/collection-0.1.6.tgz", 20 | "integrity": "sha512-utRNxnd9kSS2qhyivo9lMlt5qgAUasH2gb7BEOn6p0efFh24gjGomHzWKMAPn2hEReOPQZCJaRKoURwRotKucQ==" 21 | }, 22 | "@discordjs/form-data": { 23 | "version": "3.0.1", 24 | "resolved": "https://registry.npmjs.org/@discordjs/form-data/-/form-data-3.0.1.tgz", 25 | "integrity": "sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg==", 26 | "requires": { 27 | "asynckit": "^0.4.0", 28 | "combined-stream": "^1.0.8", 29 | "mime-types": "^2.1.12" 30 | } 31 | }, 32 | "@types/node": { 33 | "version": "10.17.60", 34 | "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", 35 | "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==" 36 | }, 37 | "abort-controller": { 38 | "version": "3.0.0", 39 | "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", 40 | "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", 41 | "requires": { 42 | "event-target-shim": "^5.0.0" 43 | } 44 | }, 45 | "agent-base": { 46 | "version": "6.0.2", 47 | "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", 48 | "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", 49 | "requires": { 50 | "debug": "4" 51 | } 52 | }, 53 | "asynckit": { 54 | "version": "0.4.0", 55 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 56 | "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" 57 | }, 58 | "buffer-from": { 59 | "version": "1.1.1", 60 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", 61 | "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" 62 | }, 63 | "caseless": { 64 | "version": "0.12.0", 65 | "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", 66 | "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" 67 | }, 68 | "combined-stream": { 69 | "version": "1.0.8", 70 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", 71 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", 72 | "requires": { 73 | "delayed-stream": "~1.0.0" 74 | } 75 | }, 76 | "concat-stream": { 77 | "version": "1.6.2", 78 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", 79 | "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", 80 | "requires": { 81 | "buffer-from": "^1.0.0", 82 | "inherits": "^2.0.3", 83 | "readable-stream": "^2.2.2", 84 | "typedarray": "^0.0.6" 85 | } 86 | }, 87 | "core-util-is": { 88 | "version": "1.0.2", 89 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 90 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" 91 | }, 92 | "debug": { 93 | "version": "4.3.1", 94 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", 95 | "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", 96 | "requires": { 97 | "ms": "2.1.2" 98 | } 99 | }, 100 | "delayed-stream": { 101 | "version": "1.0.0", 102 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 103 | "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" 104 | }, 105 | "discord.js": { 106 | "version": "12.5.1", 107 | "resolved": "https://registry.npmjs.org/discord.js/-/discord.js-12.5.1.tgz", 108 | "integrity": "sha512-VwZkVaUAIOB9mKdca0I5MefPMTQJTNg0qdgi1huF3iwsFwJ0L5s/Y69AQe+iPmjuV6j9rtKoG0Ta0n9vgEIL6w==", 109 | "requires": { 110 | "@discordjs/collection": "^0.1.6", 111 | "@discordjs/form-data": "^3.0.1", 112 | "abort-controller": "^3.0.0", 113 | "node-fetch": "^2.6.1", 114 | "prism-media": "^1.2.2", 115 | "setimmediate": "^1.0.5", 116 | "tweetnacl": "^1.0.3", 117 | "ws": "^7.3.1" 118 | } 119 | }, 120 | "env-paths": { 121 | "version": "2.2.1", 122 | "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", 123 | "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==" 124 | }, 125 | "event-target-shim": { 126 | "version": "5.0.1", 127 | "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", 128 | "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==" 129 | }, 130 | "ffmpeg-static": { 131 | "version": "4.2.7", 132 | "resolved": "https://registry.npmjs.org/ffmpeg-static/-/ffmpeg-static-4.2.7.tgz", 133 | "integrity": "sha512-SGnOr2d+k0/9toRIv9t5/hN/DMYbm5XMtG0wVwGM1tEyXJAD6dbcWOEvfHq4LOySm9uykKL6LMC4eVPeteUnbQ==", 134 | "requires": { 135 | "@derhuerst/http-basic": "^8.2.0", 136 | "env-paths": "^2.2.0", 137 | "https-proxy-agent": "^5.0.0", 138 | "progress": "^2.0.3" 139 | } 140 | }, 141 | "http-response-object": { 142 | "version": "3.0.2", 143 | "resolved": "https://registry.npmjs.org/http-response-object/-/http-response-object-3.0.2.tgz", 144 | "integrity": "sha512-bqX0XTF6fnXSQcEJ2Iuyr75yVakyjIDCqroJQ/aHfSdlM743Cwqoi2nDYMzLGWUcuTWGWy8AAvOKXTfiv6q9RA==", 145 | "requires": { 146 | "@types/node": "^10.0.3" 147 | } 148 | }, 149 | "https-proxy-agent": { 150 | "version": "5.0.0", 151 | "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", 152 | "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", 153 | "requires": { 154 | "agent-base": "6", 155 | "debug": "4" 156 | } 157 | }, 158 | "inherits": { 159 | "version": "2.0.4", 160 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 161 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" 162 | }, 163 | "isarray": { 164 | "version": "1.0.0", 165 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 166 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" 167 | }, 168 | "mime-db": { 169 | "version": "1.48.0", 170 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", 171 | "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==" 172 | }, 173 | "mime-types": { 174 | "version": "2.1.31", 175 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", 176 | "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", 177 | "requires": { 178 | "mime-db": "1.48.0" 179 | } 180 | }, 181 | "ms": { 182 | "version": "2.1.2", 183 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 184 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" 185 | }, 186 | "node-fetch": { 187 | "version": "2.6.1", 188 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", 189 | "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" 190 | }, 191 | "opusscript": { 192 | "version": "0.0.7", 193 | "resolved": "https://registry.npmjs.org/opusscript/-/opusscript-0.0.7.tgz", 194 | "integrity": "sha512-DcBadTdYTUuH9zQtepsLjQn4Ll6rs3dmeFvN+SD0ThPnxRBRm/WC1zXWPg+wgAJimB784gdZvUMA57gDP7FdVg==" 195 | }, 196 | "parse-cache-control": { 197 | "version": "1.0.1", 198 | "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz", 199 | "integrity": "sha1-juqz5U+laSD+Fro493+iGqzC104=" 200 | }, 201 | "prism-media": { 202 | "version": "1.3.1", 203 | "resolved": "https://registry.npmjs.org/prism-media/-/prism-media-1.3.1.tgz", 204 | "integrity": "sha512-nyYAa3KB4qteJIqdguKmwxTJgy55xxUtkJ3uRnOvO5jO+frci+9zpRXw6QZVcfDeva3S654fU9+26P2OSTzjHw==" 205 | }, 206 | "process-nextick-args": { 207 | "version": "2.0.1", 208 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", 209 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" 210 | }, 211 | "progress": { 212 | "version": "2.0.3", 213 | "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", 214 | "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" 215 | }, 216 | "readable-stream": { 217 | "version": "2.3.7", 218 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", 219 | "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", 220 | "requires": { 221 | "core-util-is": "~1.0.0", 222 | "inherits": "~2.0.3", 223 | "isarray": "~1.0.0", 224 | "process-nextick-args": "~2.0.0", 225 | "safe-buffer": "~5.1.1", 226 | "string_decoder": "~1.1.1", 227 | "util-deprecate": "~1.0.1" 228 | } 229 | }, 230 | "safe-buffer": { 231 | "version": "5.1.2", 232 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 233 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" 234 | }, 235 | "setimmediate": { 236 | "version": "1.0.5", 237 | "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", 238 | "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" 239 | }, 240 | "string_decoder": { 241 | "version": "1.1.1", 242 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", 243 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", 244 | "requires": { 245 | "safe-buffer": "~5.1.0" 246 | } 247 | }, 248 | "tweetnacl": { 249 | "version": "1.0.3", 250 | "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", 251 | "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" 252 | }, 253 | "typedarray": { 254 | "version": "0.0.6", 255 | "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", 256 | "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" 257 | }, 258 | "util-deprecate": { 259 | "version": "1.0.2", 260 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 261 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" 262 | }, 263 | "ws": { 264 | "version": "7.5.1", 265 | "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.1.tgz", 266 | "integrity": "sha512-2c6faOUH/nhoQN6abwMloF7Iyl0ZS2E9HGtsiLrWn0zOOMWlhtDmdf/uihDt6jnuCxgtwGBNy6Onsoy2s2O2Ow==" 267 | } 268 | } 269 | } 270 | -------------------------------------------------------------------------------- /Astre_Angels/Angel I/YulafGuard.js: -------------------------------------------------------------------------------- 1 | const { Discord, Client, MessageEmbed } = require('discord.js'); 2 | const client = global.client = new Client({fetchAllMembers: true}); 3 | const ayarlar = require('./ayarlar.json'); 4 | const korumalar = require('./Etkinlik/korumalar.json') 5 | const fs = require('fs'); 6 | const { type } = require('os'); 7 | 8 | client.on("ready", async () => { 9 | client.user.setPresence({ activity: { name: ayarlar.BotStatus }, status: "dnd" });}); 10 | 11 | ///--------------------------------- Yulaf Was Here ---------------------------------/// 12 | 13 | client.on("message", async message => { 14 | if (message.author.bot || !message.guild || !message.content.toLowerCase().startsWith(ayarlar.Prefix)) return; 15 | if (message.author.id !== ayarlar.Developer && message.author.id !== message.guild.owner.id) return; 16 | let args = message.content.split(' ').slice(1); 17 | let command = message.content.split(' ')[0].slice(ayarlar.Prefix.length); 18 | let embed = new MessageEmbed().setColor(ayarlar.EmbedRenk).setAuthor(message.member.displayName, message.author.avatarURL({ dynamic: true, })).setTimestamp(); 19 | 20 | ///--------------------------------- Eval Command ---------------------------------/// 21 | 22 | if (command === "eval" && message.author.id === ayarlar.Developer) { 23 | if (!args[0]) return message.channel.send(`Kodu Belirtmelisin!`); 24 | let code = args.join(' '); 25 | function clean(text) { 26 | if (typeof text !== 'string') text = require('util').inspect(text, { depth: 0 }) 27 | text = text.replace(/`/g, '`' + String.fromCharCode(8203)).replace(/@/g, '@' + String.fromCharCode(8203)) 28 | return text; 29 | }; 30 | try { 31 | var evaled = clean(await eval(code)); 32 | if(evaled.match(new RegExp(`${client.token}`, 'g'))) evaled.replace(client.token, "Yasaklı komut"); 33 | message.channel.send(`${evaled.replace(client.token, "Yasaklı komut")}`, {code: "js", split: true}); 34 | } catch(err) { message.channel.send(err, {code: "js", split: true}) }; 35 | }; 36 | 37 | if(command === "yetki") { 38 | let Yulaf= args[0] 39 | if(!Yulaf){message.channel.send("Yapılacak işlemi belirtmelisin.")} 40 | if(Yulaf == "Aç" || Yulaf == "aç" || Yulaf == "AÇ"){ 41 | message.guild.roles.cache.get("").setPermissions(8) 42 | message.guild.roles.cache.get("").setPermissions(8) 43 | return message.channel.send(`Yetkiler başarıyla açıldı!`) 44 | } 45 | if(Yulaf == "Kapat" || Yulaf == "kapat" || Yulaf == "KAPAT"){ 46 | let arr = ["ADMINISTRATOR","MANAGE_ROLES","KICK_MEMBERS","BAN_MEMBERS","MANAGE_CHANNELS","MANAGE_GUILD"]; 47 | message.guild.roles.cache.filter(a => arr.some(x => a.permissions.has(x)) == true).map(t => t.setPermissions(0)); 48 | message.channel.send(`Yetkiler başarıyla kapatıldı!`) 49 | } 50 | }; 51 | 52 | if(command == "liste") { 53 | let hedef; 54 | let rol = message.mentions.roles.first() || message.guild.roles.cache.get(args[0]) || message.guild.roles.cache.find(r => r.name === args.join(" ")); 55 | let uye = message.mentions.users.first() || message.guild.members.cache.get(args[0]); 56 | if (rol) hedef = rol; 57 | if (uye) hedef = uye; 58 | let guvenliler = ayarlar.whitelist || []; 59 | if (!hedef) return message.channel.send(embed 60 | .addField("Güvenli Liste (White List)",guvenliler.length > 0 ? guvenliler.map(g => (message.guild.roles.cache.has(g.slice(1)) || message.guild.members.cache.has(g.slice(1))) ? (message.guild.roles.cache.get(g.slice(1)) || message.guild.members.cache.get(g.slice(1))) : g).join('\n ') : "Burası Çok Issız.."));}; 61 | 62 | if(command === "restart") { 63 | message.channel.send("Bot Yeniden Başlatılıyor").then(msg => { 64 | console.log("[BOT] Yeniden başlatılıyor"); 65 | process.exit(0); 66 | }); 67 | }; 68 | 69 | if(command === "güvenli") { 70 | let hedef; 71 | let rol = message.mentions.roles.first() || message.guild.roles.cache.get(args[0]) || message.guild.roles.cache.find(r => r.name === args.join(" ")); 72 | let uye = message.mentions.users.first() || message.guild.members.cache.get(args[0]); 73 | if (rol) hedef = rol; 74 | if (uye) hedef = uye; 75 | let guvenliler = ayarlar.whitelist || []; 76 | if (!hedef) return message.channel.send(embed 77 | .setDescription(`Güvenli Listeye Eklemek/Kaldırmak İçin \`@Yulaf/ID\` Belirtmelisin.`)); 78 | if (guvenliler.some(g => g.includes(hedef.id))) { 79 | guvenliler = guvenliler.filter(g => !g.includes(hedef.id)); 80 | ayarlar.whitelist = guvenliler; 81 | fs.writeFile("./ayarlar.json", JSON.stringify(ayarlar), (err) => { 82 | if (err) console.log(err); 83 | }); 84 | message.channel.send(embed 85 | .setDescription(`${hedef}, ${message.author} Tarafından Güvenli Listeden \`Çıkarıldı.\``)); 86 | } else { 87 | ayarlar.whitelist.push(`y${hedef.id}`); 88 | fs.writeFile("./ayarlar.json", JSON.stringify(ayarlar), (err) => { 89 | if (err) console.log(err); 90 | }); 91 | message.channel.send(embed 92 | .setDescription(`${hedef}, ${message.author} Tarafından Güvenli Listeye \`Eklendi.\``)); 93 | }; 94 | }; 95 | }); 96 | 97 | function guvenli(kisiID) { 98 | let uye = client.guilds.cache.get(ayarlar.guildID).members.cache.get(kisiID); 99 | let guvenliler = ayarlar.whitelist || []; 100 | if (!uye || uye.id === client.user.id || uye.id === ayarlar.Developer || uye.id === uye.guild.owner.id || guvenliler.some(g => uye.id === g.slice(1) || uye.roles.cache.has(g.slice(1)))) return true 101 | else return false; 102 | }; 103 | 104 | function cezalandir(kisiID, tur) { 105 | let uye = client.guilds.cache.get(ayarlar.guildID).members.cache.get(kisiID); 106 | if (!uye) return; 107 | if (tur == "jail") return uye.roles.cache.has(ayarlar.boosterRole) ? uye.roles.set([ayarlar.boosterRole, ayarlar.jailRole]) : uye.roles.set([ayarlar.jailRole]); 108 | if (tur == "ban") return uye.ban({ reason: "Yulaf Koruma Sistemi" }).catch(); 109 | }; 110 | 111 | client.on("guildMemberRemove", async member => { 112 | let entry = await member.guild.fetchAuditLogs({type: 'MEMBER_KICK'}).then(audit => audit.entries.first()); 113 | if (!entry || !entry.executor || Date.now()-entry.createdTimestamp > 5000 || guvenli(entry.executor.id) || !korumalar.kickGuard) return; 114 | cezalandir(entry.executor.id, "ban"); 115 | let logKanali = client.channels.cache.find(a => a.name == "guard-log") 116 | if (logKanali) { logKanali.send(`🛡️ ${member} (\`${member.id}\`), adlı kullanıcıya ${entry.executor} (\`${entry.executor.id}\`) tarafından sağ tık \`Kick\` atıldı, @everyone`).catch(); } 117 | else { member.guild.owner.send(`🛡️ ${member} (\`${member.id}\`), adlı kullanıcıya ${entry.executor} (\`${entry.executor.id}\`) tarafından sağ tık \`Kick\` atıldı, @everyone`).catch(err => {}); }; 118 | }); 119 | 120 | client.on("guildBanAdd", async (guild, user) => { 121 | let entry = await guild.fetchAuditLogs({type: 'MEMBER_BAN_ADD'}).then(audit => audit.entries.first()); 122 | if (!entry || !entry.executor || guvenli(entry.executor.id) || !korumalar.banGuard) return; 123 | cezalandir(entry.executor.id, "ban"); 124 | guild.members.unban(user.id, "Kullanıcıya Sağ Tık Ban Atıldığı İçin Banı Açıldı.").catch(console.error); 125 | let logKanali = client.channels.cache.find(a => a.name == "guard-log") 126 | if (!logKanali) return console.log('Koruma Logu Yok'); 127 | if (logKanali) { logKanali.send(`${members} (\`${member.id}\`), adlı kullanıcıya ${entry.executor} (\`${entry.executor.id}\`) tarafından sağ tık \`Ban\` atıldı, @everyone`).catch(); } 128 | else {guild.owner.send(`🛡️ ${members} (\`${member.id}\`), adlı kullanıcıya ${entry.executor} (\`${entry.executor.id}\`) tarafından sağ tık \`Ban\` atıldı, @everyone`).catch(err => {}); }; 129 | }); 130 | 131 | client.on("guildMemberAdd", async member => { 132 | let entry = await member.guild.fetchAuditLogs({type: 'BOT_ADD'}).then(audit => audit.entries.first()); 133 | if (!member.user.bot || !entry || !entry.executor || Date.now()-entry.createdTimestamp > 5000 || guvenli(entry.executor.id) || !korumalar.botGuard) return; 134 | cezalandir(entry.executor.id, "ban"); 135 | cezalandir(member.id, "ban"); 136 | let logKanali = client.channels.cache.find(a => a.name == "guard-log") 137 | if (!logKanali) return console.log('Koruma Logu Yok'); 138 | if (logKanali) { logKanali.send(`🛡️ ${member} (\`${member.id}\`), adlı bot ${entry.executor} (\`${entry.executor.id}\`) tarafından sunucuya \`Eklendi\`, @everyone`).catch(); } 139 | else{ member.guild.owner.send(`🛡️ ${member} (\`${member.id}\`), adlı bot ${entry.executor} (\`${entry.executor.id}\`) tarafından sunucuya \`Eklendi\`, @everyone`).catch(err => {}); }; 140 | }); 141 | 142 | client.on("guildUpdate", async (oldGuild, newGuild) => { 143 | let entry = await newGuild.fetchAuditLogs({type: 'GUILD_UPDATE'}).then(audit => audit.entries.first()); 144 | if (!entry || !entry.executor || Date.now()-entry.createdTimestamp > 3000 || guvenli(entry.executor.id) || !korumalar.serverGuard) return; 145 | cezalandir(entry.executor.id, "ban"); 146 | if (newGuild.name !== oldGuild.name) newGuild.setName(oldGuild.name); 147 | if (newGuild.iconURL({dynamic: true, size: 2048}) !== oldGuild.iconURL({dynamic: true, size: 2048})) newGuild.setIcon(oldGuild.iconURL({dynamic: true, size: 2048})); 148 | let logKanali = client.channels.cache.find(a => a.name == "guard-log") 149 | if (!logKanali) return console.log('Koruma Logu Yok'); 150 | if (logKanali) { logKanali.send(`${entry.executor} (\`${entry.executor.id}\`) adlı kullanıcı tarafından \`Sunucu Ayarları'nı\` güncellendi, @everyone`).catch(); } 151 | else { newGuild.owner.send(`🛡️ ${entry.executor} (\`${entry.executor.id}\`) adlı kullanıcı tarafından \`Sunucu Ayarları'nı\` güncellendi, @everyone `).catch(err => {}); }; 152 | }); 153 | 154 | client.on("webhookUpdate", async (channel) => { 155 | const entry = await channel.guild.fetchAuditLogs({type: 'WEBHOOK_CREATE'}).then(audit => audit.entries.first()); 156 | if(!entry || !entry.executor || Date.now()-entry.createdTimestamp > 10000) return; 157 | if (!entry || !entry.executor || guvenli(entry.executor.id) || !korumalar.webhookGuard) return; 158 | const webhooks = await channel.fetchWebhooks(); 159 | await webhooks.map(x => x.delete({reason: "Yulaf || Webhook Sistemi"})) 160 | cezalandir(entry.executor.id, "ban"); 161 | let logKanali = client.channels.cache.find(a => a.name == "guard-log") 162 | if (!logKanali) return console.log('Koruma Logu Yok'); 163 | if (logKanali) { logKanali.send(`🛡️ ${entry.executor} (\`${entry.executor.id}\`) adlı kullanıcı tarafından izinsiz şekilde \`Webhook\` açıldı, @everyone`).catch(err => {}); }; 164 | }); 165 | 166 | client.on("emojiDelete", async (emoji, message) => { 167 | const entry = await emoji.guild.fetchAuditLogs({ type: "EMOJI_DELETE" }).then(audit => audit.entries.first()); 168 | if(!entry || !entry.executor || Date.now()-entry.createdTimestamp > 10000) return; 169 | if (!entry || !entry.executor || guvenli(entry.executor.id) || !korumalar.emojiDelete) return; 170 | emoji.guild.emojis.create(`${emoji.url}`, `${emoji.name}`).catch(console.error); 171 | cezalandir(entry.executor.id, "jail"); 172 | let logKanali = client.channels.cache.find(a => a.name == "guard-log") 173 | if (!logKanali) return console.log('Koruma Logu Yok'); 174 | if (logKanali) { logKanali.send(`🛡️ ${entry.executor} (\`${entry.executor.id}\`) adlı kullanıcı tarafından, \`Emoji\` silindi.`).catch(err => {}); }; 175 | }); 176 | 177 | client.on("emojiCreate", async (emoji, message) => { 178 | const entry = await emoji.guild.fetchAuditLogs({ type: "EMOJI_CREATE" }).then(audit => audit.entries.first()); 179 | if(!entry || !entry.executor || Date.now()-entry.createdTimestamp > 10000) return; 180 | if (!entry || !entry.executor || guvenli(entry.executor.id) || !korumalar.emojiCreate) return; 181 | emoji.delete({reason: "Yulaf | Emoji Koruma Sistemi"}); 182 | cezalandir(entry.executor.id, "jail"); 183 | let logKanali = client.channels.cache.find(a => a.name == "guard-log") 184 | if (!logKanali) return console.log('Koruma Logu Yok'); 185 | if (logKanali) { logKanali.send(`🛡️ ${entry.executor} (\`${entry.executor.id}\`) adlı kullanıcı tarafından, \`Emoji\` yüklendi, @everyone`).catch(err => {}); }; 186 | }); 187 | 188 | client.on("emojiUpdate", async (oldEmoji, newEmoji) => { 189 | if(oldEmoji === newEmoji) return; 190 | const entry = await oldEmoji.guild.fetchAuditLogs({ type: "EMOJI_UPDATE" }).then(audit => audit.entries.first()); 191 | if(!entry || !entry.executor || Date.now()-entry.createdTimestamp > 10000) return; 192 | if (!entry || !entry.executor || guvenli(entry.executor.id) || !korumalar.emojiUpdate) return; 193 | cezalandir(entry.executor.id, "jail"); 194 | await newEmoji.setName(oldEmoji.name); 195 | let logKanali = client.channels.cache.find(a => a.name == "guard-log") 196 | if (!logKanali) return console.log('Koruma Logu Yok'); 197 | if (logKanali) { logKanali.send(`🛡️ ${entry.executor} (\`${entry.executor.id}\`) adlı kullanıcı tarafından, \`Emoji\` güncellendi, @everyone `).catch(err => {}); }; 198 | }); 199 | 200 | client.on("guildBanRemove", async(guild, user) => { 201 | let entry = await guild.fetchAuditLogs({ type: "MEMBER_BAN_REMOVE" }).then((audit) => audit.entries.first()); 202 | if (!entry || !entry.executor || guvenli(entry.executor.id) || !korumalar.banRemove) return; 203 | cezalandir(entry.executor.id, "jail"); 204 | guild.members.ban(entry.executor.id, { reason: "Banı Kaldırıldı Tekrar Atıldı || Yulaf Security System" }); 205 | guild.members.ban(user.id, { reason: "Banı Kaldırıldı Tekrar Atıldı || Yulaf Security System" }); 206 | let logKanali = client.channels.cache.find(a => a.name == "guard-log") 207 | if (!logKanali) return console.log('Koruma Logu Yok'); 208 | if (logKanali) { logKanali.send(`🛡️ ${entry.executor} (\`${entry.executor.id}\`) adlı kullanıcı birisinin İzinsiz \`Banını\` kaldırdı, @everyone`).catch(err => {}); }; 209 | }); 210 | 211 | 212 | client.on('guildUpdate', async (oldGuild, newGuild) => { 213 | if (oldGuild.vanityURLCode === newGuild.vanityURLCode) return; 214 | let entry = await newGuild.fetchAuditLogs({ 215 | type: 'GUILD_UPDATE' 216 | }).then(audit => audit.entries.first()); 217 | if (!entry || !entry.executor || guvenli(entry.executor.id) || !korumalar.Vanity_Guard) return; 218 | let channel = client.channels.cache.find(a => a.name == "guard-log"); 219 | if (channel) channel.send(`️ ${entry.executor} ${entry.executor.id} Sunucunun Özel URL'sini değişti, @everyone`) 220 | if (!channel) newGuild.owner.send(`🛡️ ${entry.executor} ${entry.executor.id} Sunucunun Özel URL'sini değişti, @everyone`) 221 | newGuild.members.ban(entry.executor.id, { 222 | reason: `Url Guard | Yulaf.` 223 | }); 224 | const settings = { 225 | url: `https://discord.com/api/v6/guilds/${newGuild.id}/vanity-url`, 226 | body: { 227 | code: ayarlar.Vanity_URL 228 | }, 229 | json: true, 230 | method: 'PATCH', 231 | headers: { 232 | "Authorization": `Bot ${ayarlar.Token}` 233 | } 234 | }; 235 | request(settings, (err, res, body) => { 236 | if (err) { 237 | return console.log(err); 238 | } 239 | }); 240 | }); 241 | client.on("disconnect", () => console.log("Bot bağlantısı kesildi")) 242 | client.on("reconnecting", () => console.log("Bot tekrar bağlanıyor...")) 243 | client.login(ayarlar.Token).then(x => console.log(`${client.user.tag} Bot Aktif`)).catch(err => console.error(`Bota Giriş Yapılamadı.!\n ∞ Hata : ${err}`)) -------------------------------------------------------------------------------- /Astre_Database/yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@discordjs/collection@^0.1.6": 6 | version "0.1.6" 7 | resolved "https://registry.yarnpkg.com/@discordjs/collection/-/collection-0.1.6.tgz#9e9a7637f4e4e0688fd8b2b5c63133c91607682c" 8 | integrity sha512-utRNxnd9kSS2qhyivo9lMlt5qgAUasH2gb7BEOn6p0efFh24gjGomHzWKMAPn2hEReOPQZCJaRKoURwRotKucQ== 9 | 10 | "@discordjs/form-data@^3.0.1": 11 | version "3.0.1" 12 | resolved "https://registry.yarnpkg.com/@discordjs/form-data/-/form-data-3.0.1.tgz#5c9e6be992e2e57d0dfa0e39979a850225fb4697" 13 | integrity sha512-ZfFsbgEXW71Rw/6EtBdrP5VxBJy4dthyC0tpQKGKmYFImlmmrykO14Za+BiIVduwjte0jXEBlhSKf0MWbFp9Eg== 14 | dependencies: 15 | asynckit "^0.4.0" 16 | combined-stream "^1.0.8" 17 | mime-types "^2.1.12" 18 | 19 | "@types/bson@*": 20 | version "4.0.4" 21 | resolved "https://registry.yarnpkg.com/@types/bson/-/bson-4.0.4.tgz#79d2d26e81070044db2a1a8b2cc2f673c840e1e5" 22 | integrity sha512-awqorHvQS0DqxkHQ/FxcPX9E+H7Du51Qw/2F+5TBMSaE3G0hm+8D3eXJ6MAzFw75nE8V7xF0QvzUSdxIjJb/GA== 23 | dependencies: 24 | "@types/node" "*" 25 | 26 | "@types/mongodb@^3.5.27": 27 | version "3.6.20" 28 | resolved "https://registry.yarnpkg.com/@types/mongodb/-/mongodb-3.6.20.tgz#b7c5c580644f6364002b649af1c06c3c0454e1d2" 29 | integrity sha512-WcdpPJCakFzcWWD9juKoZbRtQxKIMYF/JIAM4JrNHrMcnJL6/a2NWjXxW7fo9hxboxxkg+icff8d7+WIEvKgYQ== 30 | dependencies: 31 | "@types/bson" "*" 32 | "@types/node" "*" 33 | 34 | "@types/node@*": 35 | version "16.3.2" 36 | resolved "https://registry.yarnpkg.com/@types/node/-/node-16.3.2.tgz#655432817f83b51ac869c2d51dd8305fb8342e16" 37 | integrity sha512-jJs9ErFLP403I+hMLGnqDRWT0RYKSvArxuBVh2veudHV7ifEC1WAmjJADacZ7mRbA2nWgHtn8xyECMAot0SkAw== 38 | 39 | "@types/node@14.x || 15.x": 40 | version "15.14.2" 41 | resolved "https://registry.yarnpkg.com/@types/node/-/node-15.14.2.tgz#7af8ab20156586f076f4760bc1b3c5ddfffd1ff2" 42 | integrity sha512-dvMUE/m2LbXPwlvVuzCyslTEtQ2ZwuuFClDrOQ6mp2CenCg971719PTILZ4I6bTP27xfFFc+o7x2TkLuun/MPw== 43 | 44 | abort-controller@^3.0.0: 45 | version "3.0.0" 46 | resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" 47 | integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== 48 | dependencies: 49 | event-target-shim "^5.0.0" 50 | 51 | asynckit@^0.4.0: 52 | version "0.4.0" 53 | resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" 54 | integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= 55 | 56 | bl@^2.2.1: 57 | version "2.2.1" 58 | resolved "https://registry.yarnpkg.com/bl/-/bl-2.2.1.tgz#8c11a7b730655c5d56898cdc871224f40fd901d5" 59 | integrity sha512-6Pesp1w0DEX1N550i/uGV/TqucVL4AM/pgThFSN/Qq9si1/DF9aIHs1BxD8V/QU0HoeHO6cQRTAuYnLPKq1e4g== 60 | dependencies: 61 | readable-stream "^2.3.5" 62 | safe-buffer "^5.1.1" 63 | 64 | bluebird@3.5.1: 65 | version "3.5.1" 66 | resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9" 67 | integrity sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA== 68 | 69 | bson@^1.1.4: 70 | version "1.1.6" 71 | resolved "https://registry.yarnpkg.com/bson/-/bson-1.1.6.tgz#fb819be9a60cd677e0853aee4ca712a785d6618a" 72 | integrity sha512-EvVNVeGo4tHxwi8L6bPj3y3itEvStdwvvlojVxxbyYfoaxJ6keLgrTuKdyfEAszFK+H3olzBuafE0yoh0D1gdg== 73 | 74 | combined-stream@^1.0.8: 75 | version "1.0.8" 76 | resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" 77 | integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== 78 | dependencies: 79 | delayed-stream "~1.0.0" 80 | 81 | core-util-is@~1.0.0: 82 | version "1.0.2" 83 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" 84 | integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= 85 | 86 | debug@3.1.0: 87 | version "3.1.0" 88 | resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" 89 | integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== 90 | dependencies: 91 | ms "2.0.0" 92 | 93 | delayed-stream@~1.0.0: 94 | version "1.0.0" 95 | resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" 96 | integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= 97 | 98 | denque@^1.4.1: 99 | version "1.5.0" 100 | resolved "https://registry.yarnpkg.com/denque/-/denque-1.5.0.tgz#773de0686ff2d8ec2ff92914316a47b73b1c73de" 101 | integrity sha512-CYiCSgIF1p6EUByQPlGkKnP1M9g0ZV3qMIrqMqZqdwazygIA/YP2vrbcyl1h/WppKJTdl1F85cXIle+394iDAQ== 102 | 103 | discord.js@^12.3.1: 104 | version "12.5.3" 105 | resolved "https://registry.yarnpkg.com/discord.js/-/discord.js-12.5.3.tgz#56820d473c24320871df9ea0bbc6b462f21cf85c" 106 | integrity sha512-D3nkOa/pCkNyn6jLZnAiJApw2N9XrIsXUAdThf01i7yrEuqUmDGc7/CexVWwEcgbQR97XQ+mcnqJpmJ/92B4Aw== 107 | dependencies: 108 | "@discordjs/collection" "^0.1.6" 109 | "@discordjs/form-data" "^3.0.1" 110 | abort-controller "^3.0.0" 111 | node-fetch "^2.6.1" 112 | prism-media "^1.2.9" 113 | setimmediate "^1.0.5" 114 | tweetnacl "^1.0.3" 115 | ws "^7.4.4" 116 | 117 | event-target-shim@^5.0.0: 118 | version "5.0.1" 119 | resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" 120 | integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== 121 | 122 | inherits@~2.0.3: 123 | version "2.0.4" 124 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 125 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 126 | 127 | isarray@~1.0.0: 128 | version "1.0.0" 129 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 130 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= 131 | 132 | kareem@2.3.2: 133 | version "2.3.2" 134 | resolved "https://registry.yarnpkg.com/kareem/-/kareem-2.3.2.tgz#78c4508894985b8d38a0dc15e1a8e11078f2ca93" 135 | integrity sha512-STHz9P7X2L4Kwn72fA4rGyqyXdmrMSdxqHx9IXon/FXluXieaFA6KJ2upcHAHxQPQ0LeM/OjLrhFxifHewOALQ== 136 | 137 | memory-pager@^1.0.2: 138 | version "1.5.0" 139 | resolved "https://registry.yarnpkg.com/memory-pager/-/memory-pager-1.5.0.tgz#d8751655d22d384682741c972f2c3d6dfa3e66b5" 140 | integrity sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg== 141 | 142 | mime-db@1.48.0: 143 | version "1.48.0" 144 | resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.48.0.tgz#e35b31045dd7eada3aaad537ed88a33afbef2d1d" 145 | integrity sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ== 146 | 147 | mime-types@^2.1.12: 148 | version "2.1.31" 149 | resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.31.tgz#a00d76b74317c61f9c2db2218b8e9f8e9c5c9e6b" 150 | integrity sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg== 151 | dependencies: 152 | mime-db "1.48.0" 153 | 154 | moment@^2.27.0: 155 | version "2.29.1" 156 | resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3" 157 | integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ== 158 | 159 | mongodb@3.6.10: 160 | version "3.6.10" 161 | resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.6.10.tgz#f10e990113c86b195c8af0599b9b3a90748b6ee4" 162 | integrity sha512-fvIBQBF7KwCJnDZUnFFy4WqEFP8ibdXeFANnylW19+vOwdjOAvqIzPdsNCEMT6VKTHnYu4K64AWRih0mkFms6Q== 163 | dependencies: 164 | bl "^2.2.1" 165 | bson "^1.1.4" 166 | denque "^1.4.1" 167 | optional-require "^1.0.3" 168 | safe-buffer "^5.1.2" 169 | optionalDependencies: 170 | saslprep "^1.0.0" 171 | 172 | mongoose-legacy-pluralize@1.0.2: 173 | version "1.0.2" 174 | resolved "https://registry.yarnpkg.com/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz#3ba9f91fa507b5186d399fb40854bff18fb563e4" 175 | integrity sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ== 176 | 177 | mongoose@^5.12.3: 178 | version "5.13.3" 179 | resolved "https://registry.yarnpkg.com/mongoose/-/mongoose-5.13.3.tgz#42cb40207bbcaca9c6fa94b0a8c0a38181c1965e" 180 | integrity sha512-q+zX6kqHAvwxf5speMWhq6qF4vdj+x6/kfD5RSKdZKNm52yGmaUygN+zgrtQjBZPFEzG0B3vF6GP0PoAGadE+w== 181 | dependencies: 182 | "@types/mongodb" "^3.5.27" 183 | "@types/node" "14.x || 15.x" 184 | bson "^1.1.4" 185 | kareem "2.3.2" 186 | mongodb "3.6.10" 187 | mongoose-legacy-pluralize "1.0.2" 188 | mpath "0.8.3" 189 | mquery "3.2.5" 190 | ms "2.1.2" 191 | regexp-clone "1.0.0" 192 | safe-buffer "5.2.1" 193 | sift "13.5.2" 194 | sliced "1.0.1" 195 | 196 | mpath@0.8.3: 197 | version "0.8.3" 198 | resolved "https://registry.yarnpkg.com/mpath/-/mpath-0.8.3.tgz#828ac0d187f7f42674839d74921970979abbdd8f" 199 | integrity sha512-eb9rRvhDltXVNL6Fxd2zM9D4vKBxjVVQNLNijlj7uoXUy19zNDsIif5zR+pWmPCWNKwAtqyo4JveQm4nfD5+eA== 200 | 201 | mquery@3.2.5: 202 | version "3.2.5" 203 | resolved "https://registry.yarnpkg.com/mquery/-/mquery-3.2.5.tgz#8f2305632e4bb197f68f60c0cffa21aaf4060c51" 204 | integrity sha512-VjOKHHgU84wij7IUoZzFRU07IAxd5kWJaDmyUzQlbjHjyoeK5TNeeo8ZsFDtTYnSgpW6n/nMNIHvE3u8Lbrf4A== 205 | dependencies: 206 | bluebird "3.5.1" 207 | debug "3.1.0" 208 | regexp-clone "^1.0.0" 209 | safe-buffer "5.1.2" 210 | sliced "1.0.1" 211 | 212 | ms@2.0.0: 213 | version "2.0.0" 214 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 215 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 216 | 217 | ms@2.1.2: 218 | version "2.1.2" 219 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 220 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 221 | 222 | node-fetch@^2.6.1: 223 | version "2.6.1" 224 | resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" 225 | integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== 226 | 227 | optional-require@^1.0.3: 228 | version "1.0.3" 229 | resolved "https://registry.yarnpkg.com/optional-require/-/optional-require-1.0.3.tgz#275b8e9df1dc6a17ad155369c2422a440f89cb07" 230 | integrity sha512-RV2Zp2MY2aeYK5G+B/Sps8lW5NHAzE5QClbFP15j+PWmP+T9PxlJXBOOLoSAdgwFvS4t0aMR4vpedMkbHfh0nA== 231 | 232 | prism-media@^1.2.9: 233 | version "1.3.1" 234 | resolved "https://registry.yarnpkg.com/prism-media/-/prism-media-1.3.1.tgz#418acd2b122bedea2e834056d678f9a5ad2943ae" 235 | integrity sha512-nyYAa3KB4qteJIqdguKmwxTJgy55xxUtkJ3uRnOvO5jO+frci+9zpRXw6QZVcfDeva3S654fU9+26P2OSTzjHw== 236 | 237 | process-nextick-args@~2.0.0: 238 | version "2.0.1" 239 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" 240 | integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== 241 | 242 | readable-stream@^2.3.5: 243 | version "2.3.7" 244 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" 245 | integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== 246 | dependencies: 247 | core-util-is "~1.0.0" 248 | inherits "~2.0.3" 249 | isarray "~1.0.0" 250 | process-nextick-args "~2.0.0" 251 | safe-buffer "~5.1.1" 252 | string_decoder "~1.1.1" 253 | util-deprecate "~1.0.1" 254 | 255 | regexp-clone@1.0.0, regexp-clone@^1.0.0: 256 | version "1.0.0" 257 | resolved "https://registry.yarnpkg.com/regexp-clone/-/regexp-clone-1.0.0.tgz#222db967623277056260b992626354a04ce9bf63" 258 | integrity sha512-TuAasHQNamyyJ2hb97IuBEif4qBHGjPHBS64sZwytpLEqtBQ1gPJTnOaQ6qmpET16cK14kkjbazl6+p0RRv0yw== 259 | 260 | safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: 261 | version "5.1.2" 262 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" 263 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 264 | 265 | safe-buffer@5.2.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2: 266 | version "5.2.1" 267 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" 268 | integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== 269 | 270 | saslprep@^1.0.0: 271 | version "1.0.3" 272 | resolved "https://registry.yarnpkg.com/saslprep/-/saslprep-1.0.3.tgz#4c02f946b56cf54297e347ba1093e7acac4cf226" 273 | integrity sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag== 274 | dependencies: 275 | sparse-bitfield "^3.0.3" 276 | 277 | setimmediate@^1.0.5: 278 | version "1.0.5" 279 | resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" 280 | integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= 281 | 282 | sift@13.5.2: 283 | version "13.5.2" 284 | resolved "https://registry.yarnpkg.com/sift/-/sift-13.5.2.tgz#24a715e13c617b086166cd04917d204a591c9da6" 285 | integrity sha512-+gxdEOMA2J+AI+fVsCqeNn7Tgx3M9ZN9jdi95939l1IJ8cZsqS8sqpJyOkic2SJk+1+98Uwryt/gL6XDaV+UZA== 286 | 287 | sliced@1.0.1: 288 | version "1.0.1" 289 | resolved "https://registry.yarnpkg.com/sliced/-/sliced-1.0.1.tgz#0b3a662b5d04c3177b1926bea82b03f837a2ef41" 290 | integrity sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E= 291 | 292 | sparse-bitfield@^3.0.3: 293 | version "3.0.3" 294 | resolved "https://registry.yarnpkg.com/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz#ff4ae6e68656056ba4b3e792ab3334d38273ca11" 295 | integrity sha1-/0rm5oZWBWuks+eSqzM004JzyhE= 296 | dependencies: 297 | memory-pager "^1.0.2" 298 | 299 | string_decoder@~1.1.1: 300 | version "1.1.1" 301 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" 302 | integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== 303 | dependencies: 304 | safe-buffer "~5.1.0" 305 | 306 | tweetnacl@^1.0.3: 307 | version "1.0.3" 308 | resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-1.0.3.tgz#ac0af71680458d8a6378d0d0d050ab1407d35596" 309 | integrity sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw== 310 | 311 | util-deprecate@~1.0.1: 312 | version "1.0.2" 313 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 314 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= 315 | 316 | ws@^7.4.4: 317 | version "7.5.3" 318 | resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.3.tgz#160835b63c7d97bfab418fc1b8a9fced2ac01a74" 319 | integrity sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg== 320 | --------------------------------------------------------------------------------