diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml deleted file mode 100644 index eec5704d..00000000 --- a/.github/FUNDING.yml +++ /dev/null @@ -1,12 +0,0 @@ - -# These are supported funding model platforms -github: [DIEGO-OFC] -patreon: # Replace -open_collective: # Replace with a single Open Collective username -ko_fi: # Replace with a single Ko-fi username -tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel -community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry -liberapay: # Replace with a single Liberapay username -issuehunt: # Replace with a single IssueHunt username -otechie: # Replace with a single Otechie username -custom: ['https://github.com/DIEGO-OFC/DORRAT-BOT-MD', 'https://dorrat-bot-oficial.ml'] diff --git a/.github/workflows/dependency-review.yml b/.github/workflows/dependency-review.yml new file mode 100644 index 00000000..c595f68d --- /dev/null +++ b/.github/workflows/dependency-review.yml @@ -0,0 +1,39 @@ +# Dependency Review Action +# +# This Action will scan dependency manifest files that change as part of a Pull Request,npm start +# surfacing known-vulnerable versions of the packages declared or updated in the PR.npm install +# Once installed, if the workflow run is marked as required, PRs introducing known-vulnerable +# packages will be blocked from merging. +# +# Source repository: https://github.com/actions/dependency-review-action +# Public documentation: https://docs.github.com/en/code-security/supply-chain-se9curity/understanding-your-software-supply-chain/about-dependency-review#dependency-review-enforcement +name: 'Dependency review' +on: + pull_request: + branches: [ "main" ] + +# If using a dependency submission action in this workflow this permission will need to be set to: +# +# permissions: +# contents: write +# +# https://docs.github.com/en/enterprise-cloud@latest/code-security/supply-chain-security/understanding-your-software-supply-chain/using-the-dependency-submission-api +permissions: + contents: read + # Write permissions for pull-requests are required for using the `comment-summary-in-pr` option, comment out if you aren't using this option + pull-requests: write + +jobs: + dependency-review: + runs-on: ubuntu-latest + steps: + - name: 'Checkout repository' + uses: actions/checkout@v4 + - name: 'Dependency Review' + uses: actions/dependency-review-action@v4 + # Commonly enabled options, see https://github.com/actions/dependency-review-action#configuration-options for all available options. + with: + comment-summary-in-pr: always + # fail-on-severity: moderate + # deny-licenses: GPL-1.0-or-later, LGPL-2.0-or-later + # retry-on-snapshot-warnings: true diff --git a/.github/workflows/npm-publish.yml b/.github/workflows/npm-publish.yml deleted file mode 100644 index 6cdebafb..00000000 --- a/.github/workflows/npm-publish.yml +++ /dev/null @@ -1,33 +0,0 @@ -# This workflow will run tests using node and then publish a package to GitHub Packages when a release is created -# For more information see: https://docs.github.com/en/actions/publishing-packages/publishing-nodejs-packages - -name: Node.js Package - -on: - release: - types: [created] - -jobs: - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 - with: - node-version: 16 - - run: npm ci - - run: npm test - - publish-npm: - needs: build - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 - with: - node-version: 16 - registry-url: https://registry.npmjs.org/ - - run: npm ci - - run: npm publish - env: - NODE_AUTH_TOKEN: ${{secrets.npm_token}} diff --git a/.gitignore b/.gitignore index 98eb376c..1b4446b9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,13 +1,5 @@ -#| Folders |# - -.github node_modules -DORRATSESSION -tmp -jadibts -pluginpilot - -#| Files |# - -package-lock.json +ShadowSession database.json +package-lock.json +package-lock.json diff --git a/.wget-hsts b/.wget-hsts deleted file mode 100644 index 72455dbb..00000000 --- a/.wget-hsts +++ /dev/null @@ -1,4 +0,0 @@ -# HSTS 1.0 Known Hosts database for GNU Wget. -# Edit at your own risk. -# -raw.githubusercontent.com 0 0 1661650843 31536000 diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index 463aa718..00000000 --- a/Dockerfile +++ /dev/null @@ -1,19 +0,0 @@ -FROM node:lts-buster - -RUN apt-get update && \ - apt-get install -y \ - ffmpeg \ - imagemagick \ - webp && \ - apt-get upgrade -y && \ - rm -rf /var/lib/apt/lists/* - -COPY package.json . - -RUN npm install && npm install qrcode-terminal - -COPY . . - -EXPOSE 5000 - -CMD ["node", "index-inicio.js"] diff --git a/Menu2.jpg b/Menu2.jpg deleted file mode 100644 index 4556c5e2..00000000 Binary files a/Menu2.jpg and /dev/null differ diff --git a/Procfile b/Procfile deleted file mode 100644 index cab3f7ef..00000000 --- a/Procfile +++ /dev/null @@ -1,2 +0,0 @@ -web: node . --server - diff --git a/README.md b/README.md index f17dc8c5..098af7bf 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,23 @@ - -# **POR AHORA ESTE REPOSITORIO TENDRA POCAS ACTUALIZACIONES, SE VA A HACER UNA VERSIÓN PRIVADA,EL REPOSITORIO IGUAL ESTA 100% FUNCIONAL.** - -# ***🔥 Shadow-Bot-MD 🔥*** +# ***🔥 Emanuel_Bot-MD_2025-🅑︎🅞︎🅣︎ 🔥***

-DORRAT-BOT-MD +DORRAT-BOT-MD

-# ***Anterior nombre: Dorrat-Bot-MD*** -Dorrat se seguira usando para distintas cosas y funciones. +# ***seguira usando para distintas cosas y funciones. ### `—◉ ❤️BOTS OFICIALES` - + `—◉ DUDAS SOBRE EL BOT?, CONTACTANOS ✨` - - - - - + + + + + ### `—◉ 🔥GRUPOS OFICIALES` @@ -105,10 +101,11 @@ ESCRIBE LOS SIGUIENTES COMANDOS UNO POR UNO: Zastinian BrunoSobrino putos negros elrebelde21 + Alba070503 VIRUZOFC + matias-crypto - ## `𝐄𝐃𝐈𝐓𝐎𝐑 𝐘 𝐏𝐎𝐑𝐏𝐈𝐄𝐓𝐀𝐑𝐈𝐎 𝐃𝐄𝐋 𝐁𝐎𝐓` DIEGO-OFC -> The Shadow - Brockers - Bot - MD_ By DIEGO OFC +> The Shadow - Brockers - Bot - MD_ By .Emanuel_Bot-MD_2025-🅑︎🅞︎🅣︎ OFC diff --git a/app.json b/app.json deleted file mode 100644 index e3e0af34..00000000 --- a/app.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "name": "DORR∆T-BOT-MD", - "description": "Subscribete a Diegogameplays82 - Bot (≧▽≦)", - "repository": "https://github.com/DIEGO-OFC/DORRAT-BOT-MD", - "logo": "https://raw.githubusercontent.com/DIEGO-OFC/DORRAT-BOT-MD/master/Menu2.jpg", - "keywords": ["java", "bot", "whatsapp-bot", "whatsapp-automation"], - "buildpacks": [ - { - "url": "heroku/nodejs" - }, - { - "url": "https://github.com/jonathanong/heroku-buildpack-ffmpeg-latest" - }, - { - "url": "https://github.com/bogini/heroku-buildpack-graphicsmagick" - } - ] -} diff --git "a/audio/TheDorr\342\210\206t-Bot.rtf" "b/audio/TheDorr\342\210\206t-Bot.rtf" deleted file mode 100644 index a597887f..00000000 --- "a/audio/TheDorr\342\210\206t-Bot.rtf" +++ /dev/null @@ -1 +0,0 @@ -{\rtf1} diff --git a/galeria/JSON/Api b/busc/X similarity index 100% rename from galeria/JSON/Api rename to busc/X diff --git a/busc/buscadores.js b/busc/buscadores.js new file mode 100644 index 00000000..3553e08f --- /dev/null +++ b/busc/buscadores.js @@ -0,0 +1,225 @@ +require('../main.js') +const fs = require("fs") +const { smsg, getGroupAdmins, formatp, tanggal, formatDate, getTime, isUrl, sleep, clockString, runtime, fetchJson, getBuffer, jsonformat, delay, format, logic, generateProfilePicture, parseMention, getRandom } = require('../libs/fuctions.js'); +const path = require("path") +const chalk = require("chalk"); +const moment = require('moment-timezone') +const gradient = require('gradient-string') +const fetch = require('node-fetch') +const axios = require('axios') +const cheerio = require('cheerio') +const Jimp = require('jimp') +const os = require('os') + +async function yt(conn, m, text, from, command, fkontak, prefix) { +if (global.db.data.users[m.sender].registered < true) return m.reply(info.registra) +if (!text) return m.reply(`*Ejemplo:*\n${prefix + command} anime`) +const yts = require("youtube-yts"); +const search = await yts(text); +const {key} = await conn.sendMessage(from, {text: info.wait}, { quoted: fkontak }) +await conn.sendMessage(from, {text: info.waitt, edit: key}, { quoted: fkontak }) +await conn.sendMessage(from, {text: info.waittt, edit: key}, { quoted: fkontak }) +await conn.sendMessage(from, {text: info.waitttt, edit: key}, { quoted: fkontak }) +let teks = '💫 Resultados de ' + text + '\n\n'; +let no = 1; +let themeemoji = "∆" +for (let i of search.all) { + teks += `${themeemoji} OPCIÓN : ${no++}\n${themeemoji} TIPO: ${i.type}\n${themeemoji} ID DEL VIDEO : ${i.videoId}\n${themeemoji} TITULO: ${i.title}\n${themeemoji} VISTAS : ${i.views}\n${themeemoji} DURACIÓN : ${i.timestamp}\n${themeemoji} SUBIDOS: ${i.ago}\n${themeemoji} URL: ${i.url}\n\n✧⋄⋆⋅⋆⋄✧⋄⋆⋅⋆⋄✧⋄⋆⋅⋆⋄✧⋄⋆⋅⋆⋄✧\n\n`; +} +await conn.sendMessage(from, { image: { url: search.all[0].thumbnail }, caption: teks }, { quoted: fkontak }); +await conn.sendMessage(from, {text: info.result, edit: key}, { quoted: fkontak }) +} +async function pinteresdw(conn, m, text, args, commands) { +const pim = `https://xanax-apis.online/api/pinterest?text=${text}&apitoken=xanax-apis` +m.reply('cargando, por favor espera') +conn.sendMessage(m.chat, {image: {url: pim}}, {quoted: m})} +async function aptoide(conn, m, text, args, command) { +let { search, download } = require('aptoide-scraper') + if (!text) throw '*❗Que vas a buscar*' + try { + let searchA = await search(text); + let data5 = await download(searchA[0].id); + let response = `📲 *Descargador de Aptoide* 📲\n\n📌 *Nombre:* ${data5.name}\n📦 *Package:* ${data5.package}\n🕒 *Última actualización:* ${data5.lastup}\n📥 *Tamaño:* ${data5.size}` + await conn.sendMessage(m.chat, {image: {url: data5.icon}, caption: response}, {quoted: m}); + if (data5.size.includes('GB') || data5.size.replace(' MB', '') > 999) { + return await conn.sendMessage(m.chat, {text: '*[ ⛔ ] El archivo es demasiado pesado por lo que no se enviará.*'}, {quoted: m}); + } + await conn.sendMessage(m.chat, {document: {url: data5.dllink}, mimetype: 'application/vnd.android.package-archive', fileName: data5.name + '.apk', caption: null}, {quoted: m}); + } catch { + throw `*[❗] Error, no se encontrarón resultados para su búsqueda.*`; + }} + + async function planetnime(conn, m, text, args, command) { +const translate = require('@vitalets/google-translate-api'); + if (!args[0]) return m.reply(`*[❗] INGRESE EL NAME DEL ANIME QUE DESEA BUSCAR*`); + try { + + const xn = await fetch(`https://xanax-apis.online/api/animes?q=${text}&apitoken=${xanax}`) + const gPlay = await xn.json(); + + if (gPlay.error) { + throw new Error(gPlay.error); + } + + let caption = `*⊜ RESULTADOS🔎*\n`; + for (let x of gPlay.resultado) { + caption += `🔍 titulo: +${x.titulo} + +⛓️ Link: ${x.link} +🖼️ Imagen: ${x.image} + `; + } + conn.sendMessage(m.chat, {text: caption}, {quoted: m}); + } catch (error) { + await m.reply('*[❗𝐈𝐍𝐅𝐎❗] ERROR, POR FAVOR VUELVE A INTENTARLO*'); + } +} +async function acortar(conn, m, text, command) { +if (global.db.data.users[m.sender].registered < true) return m.reply(info.registra) + if (!text) return m.reply(`*Ingresa un link para acortar!*`) +let shortUrl1 = await (await fetch(`https://tinyurl.com/api-create.php?url=${args[0]}`)).text() +if (!shortUrl1) return m.reply(`*⚠️ ERROR*`) +let done = `*❇️ LINK ACORTADO*\n\n*➵ link: ${text}*\n➵ *Link Acortado: ${shortUrl1}*` +m.reply(done) +} +async function kataAnime(conn, m, text, command) { + const translate = require('@vitalets/google-translate-api'); +if (!text) return m.reply(`*Ingresa un texto!*`) + m.reply('Enviando tu manga') + let res = await fetch('https://api.jikan.moe/v4/manga?q=' + text) + if (!res.ok) throw 'xd' + let json = await res.json() + let { chapters, url, type, score, scored, scored_by, rank, popularity, members, background, status, volumes, synopsis, favorites } = json.data[0] + let judul = json.data[0].titles.map(jud => `${jud.title} [${jud.type}]`).join('\n'); + let xnuvers007 = json.data[0].authors.map(Xnuvers007 => `${Xnuvers007.name} (${Xnuvers007.url})`).join('\n'); + let genrenya = json.data[0].genres.map(xnvrs007 => `${xnvrs007.name}`).join('\n'); + let bake2 = await translate(`${background}`, {to: "es", autoCorrect: true}); + let bake3 = await translate(`${synopsis}`, {to: "es", autoCorrect: true}); + let animeingfo = `📚 Titulo: ${judul} + 📑 Capitulo: ${chapters} + ✉️ Transmisi: ${type} + 🗂 Status: ${status} + 😎 Genre: ${genrenya} + 🗃 Volumes: ${volumes} + 🌟 Favorite: ${favorites} + 🧮 Puntaje: ${score} + 🧮 Anotado: ${scored} + 🧮 Anotado por: ${scored_by} + 🌟 Estrella: ${rank} + 🤩 Popularidad: ${popularity} + 👥 Miembros: ${members} + ⛓️ Url: ${url} + 👨‍🔬 Author: ${xnuvers007} + 📝 Fondo: ${bake2.text} + 💬 Sinopsis: ${bake3.text} + ` + m.reply(animeingfo) + } + +async function google(conn, m, text, command) { +if (global.db.data.users[m.sender].registered < true) return m.reply(info.registra) +if (!text) return m.reply(`*Ejemplo:*\n${prefix + command} gatito`) +let google = require('google-it') +google({'query': text}).then(res => { +let teks = `💫 𝘙𝘌𝘚𝘜𝘓𝘛𝘈𝘋𝘖𝘚 𝘋𝘌 : ${text}\n\n` +for (let g of res) { +teks += `🔶 *Titulo* : ${g.title}\n` +teks += `🔶 *Descripcion* : ${g.snippet}\n` +teks += `🔶 *Link* : ${g.link}\n\n✧⋄⋆⋅⋆⋄✧⋄⋆⋅⋆⋄✧⋄⋆⋅⋆⋄✧⋄⋆⋅⋆⋄✧\n\n` +} +m.reply(teks)}) +} + +async function imagen(conn, m, text, command) { +if (global.db.data.users[m.sender].registered < true) return m.reply(info.registra) +if (!text) return m.reply(`*Que esta buscando?*\n*Ejemplo:*\n${prefix + command} gatito`) +m.reply('cargando, por favor espera') +image = await fetchJson(`https://api.akuari.my.id/search/googleimage?query=${text}`) +n = image.result +images = n[Math.floor(Math.random() * n.length)] +conn.sendMessage(m.chat, { image: { url: images}, caption: `*💫 𝘙𝘌𝘚𝘜𝘓𝘛𝘈𝘋𝘖𝘚 𝘋𝘌 :* ${text}`}, { quoted: m }) +} + +async function tran(conn, m, args, quoted, prefix, command) { +if (global.db.data.users[m.sender].registered < true) return m.reply(info.registra) +const translate = require('@vitalets/google-translate-api') +if (!args || !args[0]) return m.reply(`*Ejemplo:*\n${prefix + command} es hello`) +let lang = args[0]; +let text = args.slice(1).join(' '); +const defaultLang = 'es'; +if ((args[0] || '').length !== 2) { +lang = defaultLang; +text = args.join(' '); +} +if (!text && m.quoted && m.quoted.text) text = m.quoted.text; +try { +const result = await translate(`${text}`, {to: lang, autoCorrect: true}); +await m.reply(`> *Traducción:* ${result.text}`); +} catch { +try { +const lol = await fetch(`https://api.lolhuman.xyz/api/translate/auto/${lang}?apikey=${lolkeysapi}&text=${text}`); +const loll = await lol.json(); +const result2 = loll.result.translated; +await m.reply(`> *Traducción:* ${result2}`); +} catch { +await m.reply(info.error) +}}} + +async function tts(conn, m, q, text, quoted) { +if (global.db.data.users[m.sender].registered < true) return m.reply(info.registra) +if (!q) return m.reply("*Y EL TEXTO?*") +await conn.sendPresenceUpdate('recording', m.chat) +let texttosay = text +? text +: m.quoted && m.quoted.text +? m.quoted.text +: m.text; +const SpeakEngine = require("google-tts-api"); +const texttospeechurl = SpeakEngine.getAudioUrl(texttosay, {lang: "es", slow: false, host: "https://translate.google.com",}); +conn.sendMessage(m.chat, { audio: { url: texttospeechurl }, contextInfo: { "externalAdReply": { "title": botname, "body": ``, "previewType": "PHOTO", "thumbnailUrl": null,"thumbnail": imagen1, "sourceUrl": md, "showAdAttribution": true}}, seconds: '4556', ptt: true, mimetype: 'audio/mpeg', fileName: `error.mp3` }, { quoted: m })} + +async function ia(conn, m, text, quoted) { +if (!text) return m.reply(`*ingresa un texto para hablar con chatgpt*`) + let gpt = await fetch(`https://deliriusapi-official.vercel.app/api/chatgpt?q=${text}`); +let res = await gpt.json() +await conn.sendMessage(m.chat, {image: { url: "https://telegra.ph/file/10e013d9ae4d9cdf5af14.jpg", }, caption: res.data, contextInfo: { + mentionedJid: [m.sender], + isForwarded: true, + forwardedNewsletterMessageInfo: { + newsletterJid: 'https://github.com/DIEGO-OFC/ShadowBot-MD', + newsletterName: "Haz clic aquí o eres gay.", + serverMessageId: -1, + }, + forwardingScore: 999, + externalAdReply: { + title: 'TOOLS - CHATGPT', + body: global.botname, + thumbnailUrl: "https://i.pinimg.com/originals/80/93/2e/80932e57b837a4df10e9f928894d3b05.jpg", + sourceUrl: 'http://paypal.me/DorratBotOficial', + mediaType: 1, + renderLargerThumbnail: false, + }, +}, + }, + { quoted: m, }) +//m.reply(res.data) +db.data.users[m.sender].limit -= 1 +} + +async function ssw(conn, m, q, prefix, command, quoted, scp1) { +if (global.db.data.users[m.sender].registered < true) return m.reply(info.registra) +if (!q) return m.reply(`*Ejemplo:* ${prefix+command} link`) +conn.fakeReply(m.chat, `⏳ *Aguarde un momento....*`, '0@s.whatsapp.net', 'No haga spam') +let krt = await scp1.ssweb(q) +conn.sendMessage(m.chat, {image:krt.result, caption: info.result}, {quoted:m})} + +module.exports = {yt, acortar, google, imagen, tran, tts, ia, ssw, kataAnime, planetnime, aptoide, pinteresdw} + +let file = require.resolve(__filename) +fs.watchFile(file, () => { + fs.unwatchFile(file) + console.log(chalk.redBright(`Update ${__filename}`)) + delete require.cache[file] + require(file) +}) diff --git a/comandos/Rpg-robobanco.js b/comandos/Rpg-robobanco.js deleted file mode 100644 index 12a51b85..00000000 --- a/comandos/Rpg-robobanco.js +++ /dev/null @@ -1,56 +0,0 @@ -/* -let handler = async (m, { conn, isPrems }) => { - let d = 0; - let success = Math.random() >= 0.9; - - if (success) { - d = Math.floor(Math.random() * 1001); // Valor aleatorio entre 0 y 1000 - } else { - let time = global.db.data.users[m.sender].lastrobbank + 3600000; // 1 hora en milisegundos - - if (new Date() - global.db.data.users[m.sender].lastrobbank < 3600000) { - let remainingTime = msToTime(time - new Date()); - throw `No puedes robar el banco nuevamente, estás siendo buscado por la policía. Espera ${remainingTime} para volver a intentarlo.`; - } - } - - let pp = "galeria/menudorrat3.jpg"; - - if (success) { - let amount = `${d} DÓLARES`; - m.reply(`*${pickRandom(global.robBank)} $${amount}*`); - global.db.data.users[m.sender].dolares = d; - } else { - m.reply("*Fallaste, no ganaste nada.*"); - } - - global.db.data.users[m.sender].lastrobbank = new Date(); -}; - -handler.help = ["rob"]; -handler.tags = ["xp"]; -handler.command = ["robarbanco", "roboabanco"]; -handler.fail = null; -handler.exp = 0; - -export default handler; - -function msToTime(duration) { - let milliseconds = parseInt((duration % 1000) / 100); - let seconds = Math.floor((duration / 1000) % 60); - let minutes = Math.floor((duration / (1000 * 60)) % 60); - let hours = Math.floor((duration / (1000 * 60 * 60)) % 24); - - hours = hours < 10 ? "0" + hours : hours; - minutes = minutes < 10 ? "0" + minutes : minutes; - seconds = seconds < 10 ? "0" + seconds : seconds; - - return `${minutes} m ${seconds} s`; -} - -function pickRandom(list) { - return list[Math.floor(list.length * Math.random())]; -} - -global.robBank = ["Robas el banco de Santavilla y te llevas"];*/ - diff --git a/comandos/_Biblia.js b/comandos/_Biblia.js deleted file mode 100644 index 9eafb1f9..00000000 --- a/comandos/_Biblia.js +++ /dev/null @@ -1,83 +0,0 @@ -let WAMessageStubType = (await import(global.baileys)).default; -export async function before(m, {conn}) { - if (!m.messageStubType || !m.isGroup) return; - let usuario = `@${m.sender.split`@`[0]}`; - let fkontak = { - key: {participants: "0@s.whatsapp.net", remoteJid: "status@broadcast", fromMe: false, id: "Halo"}, - message: { - contactMessage: { - vcard: `BEGIN:VCARD\nVERSION:3.0\nN:Sy;Bot;;;\nFN:y\nitem1.TEL;waid=${m.sender.split("@")[0]}:${ - m.sender.split("@")[0] - }\nitem1.X-ABLabel:Ponsel\nEND:VCARD`, - }, - }, - participant: "0@s.whatsapp.net", - }; - if (m.messageStubType == 21) { - await this.sendMessage( - m.chat, - {text: `*[✔️] ${usuario} CAMBIO EL NOMBRE DEL GRUPO A:*\n\n*${m.messageStubParameters[0]}*`, mentions: [m.sender]}, - {quoted: fkontak} - ); - } else if (m.messageStubType == 22) { - await this.sendMessage(m.chat, {text: `*[👀] ${usuario} CAMBIO LA FOTO DEL GRUPO*`, mentions: [m.sender]}, {quoted: fkontak}); - } else if (m.messageStubType == 24) { - await this.sendMessage( - m.chat, - {text: `*${usuario} LA NUEVA DESCRIPCIÓN DEL GRUPO ES*:\n\n${m.messageStubParameters[0]}`, mentions: [m.sender]}, - {quoted: fkontak} - ); - } else if (m.messageStubType == 25) { - await this.sendMessage( - m.chat, - { - text: `[✳️] AHORA *${m.messageStubParameters[0] == "on" ? "SOLO LOS ADMINISTRADORES" : "MIEMBROS"}* PUEDEN EDITAR LA INFO DEL GRUPO`, - mentions: [m.sender], - }, - {quoted: fkontak} - ); - } else if (m.messageStubType == 26) { - await this.sendMessage( - m.chat, - { - text: `[⚠️] GRUPO *${m.messageStubParameters[0] == "on" ? "CERRADO 🔒" : "ABIERTO 🔓"}*\n ${ - m.messageStubParameters[0] == "on" ? "SOLO LOS ADMINISTRADORES PUEDEN ESCRIBIR" : "YA PUEDEN ESCRIBIR TODOS" - } 𝙀𝙉 𝙀𝙎𝙏𝙀 𝙂𝙍𝙐𝙋𝙊`, - mentions: [m.sender], - }, - {quoted: fkontak} - ); - } else if (m.messageStubType == 29) { - await this.sendMessage( - m.chat, - { - text: `*[✅] @${m.messageStubParameters[0].split`@`[0]}Es administrador*\n\n*[⚠️]LE DIO ADMIN:* ${usuario}`, - mentions: [`${m.sender}`, `${m.messageStubParameters[0]}`], - }, - {quoted: fkontak} - ); - } else if (m.messageStubType == 30) { - await this.sendMessage( - m.chat, - { - text: `[❌] @${m.messageStubParameters[0].split`@`[0]} YA NO ES ADMIN\n\n[⚠️]LE QUITO ADMIN: ${usuario}`, - mentions: [`${m.sender}`, `${m.messageStubParameters[0]}`], - }, - {quoted: fkontak} - ); - } else if (m.messageStubType == 72) { - await this.sendMessage( - m.chat, - {text: `[⏰] ${usuario} CAMBIO LA DURACION DE LOS MENSAJES A: *@${m.messageStubParameters[0]}*`, mentions: [m.sender]}, - {quoted: fkontak} - ); - } else if (m.messageStubType == 123) { - await this.sendMessage(m.chat, {text: `[✳️] ${usuario} DESACTIVO LOS MENSAJES TEMPORALES.`, mentions: [m.sender]}, {quoted: fkontak}); - } else { - console.log({ - messageStubType: m.messageStubType, - messageStubParameters: m.messageStubParameters, - type: WAMessageStubType[m.messageStubType], - }); - } -} diff --git a/comandos/_PruebaZ.js b/comandos/_PruebaZ.js deleted file mode 100644 index 1eadbfa6..00000000 --- a/comandos/_PruebaZ.js +++ /dev/null @@ -1,19 +0,0 @@ - - -import axios from 'axios' -var handler = async (m, {conn, args, text, command, usedPrefix}) => { - const r = await axios.get(`https://api.xyroinee.xyz/api/downloader/pornhub?url=${text}&apikey=uwgflzFEh6`) - const ress = r.data.result - /*const a = `Titulo :* ${ress.title} -*Duracion :* ${ress.duration} -*Vistas :* ${ress.views} -*Publicado :* ${ress.upload} -*Likes :* ${ress.like} -*Dislikes :* ${ress.dislike}`;*/ - let quality = ress.media.find(item => item.quality === 480); - if (quality.quality == 480) { - conn.sendMessage(m.chat, {document: {url: quality.url}, fileName: ress.title + '.mp4', mimetype: 'video/mp4'}, {quoted: m}) - }; -}; -handler.command = /^(porndl)$/i; -export default handler diff --git a/comandos/_anti-arabes.js b/comandos/_anti-arabes.js deleted file mode 100644 index 6c8dda26..00000000 --- a/comandos/_anti-arabes.js +++ /dev/null @@ -1,20 +0,0 @@ -let handler = (m) => m; -handler.before = async function (m, {conn, isBotAdmin}) { - if (!m.isGroup) return !1; - let chat = global.db.data.chats[m.chat]; - - if (isBotAdmin && chat.antiArab) { - if (m.sender.startsWith("92" || "92")) { - global.db.data.users[m.sender].banned = true; - m.reply(`💥 Anti árabes está activo para evitar spam\n\nHasta la próxima`); - await conn.groupParticipantsUpdate(m.chat, [m.sender], "remove"); - } - - if (m.sender.startsWith("212" || "212")) { - global.db.data.users[m.sender].banned = true; - m.reply(`💥 Anti árabes está activo para evitar spam\n\nHasta la próxima`); - await conn.groupParticipantsUpdate(m.chat, [m.sender], "remove"); - } - } -}; -export default handler; diff --git a/comandos/_anti-enlaces.js b/comandos/_anti-enlaces.js deleted file mode 100644 index 47656662..00000000 --- a/comandos/_anti-enlaces.js +++ /dev/null @@ -1,40 +0,0 @@ -var linkRegex = /chat.whatsapp.com\/([0-9A-Za-z]{20,24})/i; - -export async function before(m, { isAdmin, isBotAdmin }) { - if (m.isBaileys && m.fromMe) return true; - if (!m.isGroup) return false; - - let chat = global.db.data.chats[m.chat]; - let delet = m.key.participant; - let bang = m.key.id; - const isGroupLink = linkRegex.exec(m.text); - const grupo = `https://chat.whatsapp.com`; - - if (isAdmin && chat.antiLink && m.text.includes(grupo)) { - return m.reply("*¡Hey! El antilink está activo, pero eres un admin 🤑, salvado/a!*"); - } - - if (chat.antiLink && isGroupLink && !isAdmin) { - if (isBotAdmin) { - const linkThisGroup = `https://chat.whatsapp.com/${await this.groupInviteCode(m.chat)}`; - if (m.text.includes(linkThisGroup)) return true; - } - - conn.sendMessage( - m.chat, - { - text: `Se detectó un enlace, serás eliminado ${ - isBotAdmin ? "" : "\n\n*[❗INFO❗] El bot no es admin, no puede eliminar a las personas*" - }`, - quoted: m, - }, - ); - - if (isBotAdmin) { - await conn.sendMessage(m.chat, { delete: { remoteJid: m.chat, fromMe: false, id: bang, participant: delet } }); - await conn.groupParticipantsUpdate(m.chat, [m.sender], "remove"); - } - } - - return true; -} \ No newline at end of file diff --git a/comandos/_anti-ver-una-vez.js b/comandos/_anti-ver-una-vez.js deleted file mode 100644 index 8b74103b..00000000 --- a/comandos/_anti-ver-una-vez.js +++ /dev/null @@ -1,21 +0,0 @@ -let {downloadContentFromMessage} = await import("@whiskeysockets/baileys"); - -export async function before(m, {}) { - let chat = db.data.chats[m.chat]; - if (/^[.~#/\$,](read)?viewonce/.test(m.text)) return; - if (!chat.antiviewonce || chat.isBanned) return; - if (m.mtype == "viewOnceMessageV2") { - let msg = m.message.viewOnceMessageV2.message; - let type = Object.keys(msg)[0]; - let media = await downloadContentFromMessage(msg[type], type == "imageMessage" ? "image" : "video"); - let buffer = Buffer.from([]); - for await (const chunk of media) { - buffer = Buffer.concat([buffer, chunk]); - } - if (/video/.test(type)) { - return this.sendFile(m.chat, buffer, "error.mp4", `${msg[type].caption}\n\n*𝙰𝚀𝚄𝙸 𝙽𝙾 𝚂𝙴 𝙿𝙴𝚁𝙼𝙸𝚃𝙴 𝙾𝙲𝚄𝙻𝚃𝙰𝚁 𝙽𝙰𝙳𝙰*`, m); - } else if (/image/.test(type)) { - return this.sendFile(m.chat, buffer, "error.jpg", `${msg[type].caption}\n\n*𝙰𝚀𝚄𝙸 𝙽𝙾 𝚂𝙴 𝙿𝙴𝚁𝙼𝙸𝚃𝙴 𝙾𝙲𝚄𝙻𝚃𝙰𝚁 𝙽𝙰𝙳𝙰*`, m); - } - } -} diff --git a/comandos/_antispam.cjs b/comandos/_antispam.cjs deleted file mode 100644 index 5ad0cbf9..00000000 --- a/comandos/_antispam.cjs +++ /dev/null @@ -1,45 +0,0 @@ -//CRÉDITOS: https://github.com/Abiguelreyes75 - -let handler = (m) => m; -handler.all = async function (m) { - let delet = m.key.participant; - let bang = m.key.id; - let user = global.db.data.users[m.sender]; - - this.spam = this.spam ? this.spam : {}; - if (!(m.sender in this.spam)) { - let spaming = { - jid: await m.sender, - spam: 0, - lastspam: 0, - }; - this.spam[spaming.jid] = spaming; - } else - try { - this.spam[m.sender].spam += 1; - - if (new Date() - this.spam[m.sender].lastspam > 1000) { - if (this.spam[m.sender].spam > 3) { - this.spam[m.sender].spam = 0; - - this.spam[m.sender].lastspam = new Date() * 1; - let tiempo = 60000 * 1; - let texto = `*@${m.sender.split("@")[0]} 🤨 NO HAGAS SPAM, NO PODRÁ USAR A ${author} POR ${tiempo / 1000 - 59} MINUTO*`; - - if (new Date() - user.antispam < tiempo * 1) return; - await conn.reply(m.chat, texto, m, {mentions: this.parseMention(texto)}); - user.banned = true; - - await conn.sendMessage(m.chat, {delete: {remoteJid: m.chat, fromMe: false, id: bang, participant: delet}}); - user.antispam = new Date() * 1; - } else { - this.spam[m.sender].spam = 0; - this.spam[m.sender].lastspam = new Date() * 1; - } - } - } catch (e) { - console.log(e); - m.reply(`${lenguajeGB["smsAvisoFG"]()}*OCURRIÓ UN ERROR INESPERADO*`); - } -}; -export default handler; diff --git a/comandos/_antispam_.cjs b/comandos/_antispam_.cjs deleted file mode 100644 index 90bb1f02..00000000 --- a/comandos/_antispam_.cjs +++ /dev/null @@ -1,17 +0,0 @@ -//CRÉDITOS: https://github.com/Abiguelreyes75 - -export async function all(m, conn) { - let texto; - let user = global.db.data.users[m.sender]; - if (!m.message) return; - if (!user.antispam) return !0; - if (+new Date() > user.antispam) { - let tiempo = 60000 * 1; - setTimeout(() => { - user.banned = false; - texto = `*@${m.sender.split("@")[0]} FUE DESBANEADO DESPUÉS DE ${tiempo / 1000 - 59} MINUTO, POR FAVOR NO HAGA SPAM!!*`; - this.sendButton(m.chat, texto, wm, null, [["☘️ 𝗠 𝗘 𝗡 𝗨", "/menu"]], m, {mentions: this.parseMention(texto)}); - }, tiempo); - user.antispam = null; - } -} diff --git a/comandos/_antitoxic.js b/comandos/_antitoxic.js deleted file mode 100644 index 443f3696..00000000 --- a/comandos/_antitoxic.js +++ /dev/null @@ -1,32 +0,0 @@ -const toxicRegex = /puto|puta|rata|estupido|imbecil|rctmre|mrd|verga|vrga|maricon/i; - -export async function before(m, {isAdmin, isOwner}) { - if (m.isBaileys && m.fromMe) return !0; - if (!m.isGroup) return !1; - let user = global.db.data.users[m.sender]; - let chat = global.db.data.chats[m.chat]; - const isToxic = toxicRegex.exec(m.text); - - if (isToxic && chat.antiToxic && !isOwner && !isAdmin) { - user.warn += 1; - if (!(user.warn >= 5)) - await m.reply( - `${ - user.warn == 1 ? `Hola *@${m.sender.split`@`[0]}*` : `*@${m.sender.split`@`[0]}*` - }, decir la palabra (${isToxic}) está prohibido en este bot *${user.warn}/5* advertencia`, - false, - {mentions: [m.sender]} - ); - } - - if (user.warn >= 5) { - user.warn = 0; - await m.reply(`Hola *@${m.sender.split`@`[0]}*, superaste las 5 advertencias serás bloqueado y eliminado de este grupo`, false, { - mentions: [m.sender], - }); - user.banned = true; - await this.groupParticipantsUpdate(m.chat, [m.sender], "remove"); - //await this.updateBlockStatus(m.sender, 'block') - } - return !1; -} diff --git a/comandos/_antitrabas.js b/comandos/_antitrabas.js deleted file mode 100644 index 066a59b3..00000000 --- a/comandos/_antitrabas.js +++ /dev/null @@ -1,49 +0,0 @@ -export async function before(m, {conn, isAdmin, isBotAdmin, usedPrefix}) { - if (m.isBaileys && m.fromMe) return !0; - if (!m.isGroup) return !1; - let chat = global.db.data.chats[m.chat]; - let bot = global.db.data.settings[this.user.jid] || {}; - let delet = m.key.participant; - let bang = m.key.id; - let name = await conn.getName(m.sender); - let fakemek = { - key: {participant: "0@s.whatsapp.net", remoteJid: "0@s.whatsapp.net"}, - message: {groupInviteMessage: {groupJid: "51995386439-1616969743@g.us", inviteCode: "m", groupName: "P", caption: wm3, jpegThumbnail: null}}, - }; - if (chat.antiTraba && m.text.length > 2000) { - //Cantidad máxima de caracteres aceptados en un mensaje// - if (isAdmin) - return conn.sendMessage( - m.chat, - {text: `El administrador @${m.sender.split("@")[0]} acaba de enviar un texto que contiene muchos caracteres -.-!`, mentions: [m.sender]}, - {quoted: fakemek} - ); - await conn.sendButton( - m.chat, - `*[ ! ] Se detecto un mensaje que contiene muchos caracteres [ ! ]*\n`, - `${isBotAdmin ? "" : "No soy administrador, no puedo hacer nada :/"}`, - author, - ["[ DESACTIVAR ANTI TRABAS ]", usedPrefix + "apagar antitraba"], - fakemek - ); - if (isBotAdmin && bot.restrict) { - conn.sendMessage(m.chat, {delete: {remoteJid: m.chat, fromMe: false, id: bang, participant: delet}}); - setTimeout(() => { - conn.sendMessage( - m.chat, - { - text: `Marcar el chat como leido ☑️\n${"\n".repeat(400)}\n=> El número : wa.me/${ - m.sender.split("@")[0] - }\n=> Alias : ${name}\n[ ! ] Acaba de enviar un texto que contiene muchos caracteres que puede ocasionar fallos en los dispositivos`, - mentions: [m.sender], - }, - {quoted: fakemek} - ); - }, 0); - setTimeout(() => { - conn.groupParticipantsUpdate(m.chat, [m.sender], "remove"); - }, 1000); - } else if (!bot.restrict) return m.reply("[ ! ] Para realizar acciones de eliminación, mi dueño tiene que encender el modo restringido!"); - } - return !0; -} diff --git a/comandos/_autoresponder.js b/comandos/_autoresponder.js deleted file mode 100644 index 2c1612cb..00000000 --- a/comandos/_autoresponder.js +++ /dev/null @@ -1,34 +0,0 @@ -import { sticker } from "../lib/sticker.js"; - -var handler = (m) => m; - -handler.all = async function (m, {}) { - const chat = global.db.data.chats[m.chat]; - - if (m.mentionedJid.includes(this.user.jid) && m.isGroup && !chat.isBanned) { - const sticker = await sticker(imagen4, false, global.packname, global.author); - this.sendFile( - m.chat, - stiker, - "sticker.webp", - null, - m, - false, - { - contextInfo: { - externalAdReply: { - title: "𝐙𝐈𝐑𝐀𝐗-𝐁𝐎𝐓-𝐌𝐃", - body: "𝑫𝑰𝑬𝑮𝑶-𝑶𝑭𝑪", - sourceUrl: `https://github.com/DIEGO-OFC/Zirax-Bot-MD`, - thumbnail: imagen1, - }, - }, - } - ); - } - - return !0; -}; - -export default handler; - diff --git a/comandos/_autosticker.js b/comandos/_autosticker.js deleted file mode 100644 index 3aa7d471..00000000 --- a/comandos/_autosticker.js +++ /dev/null @@ -1,46 +0,0 @@ -import {sticker} from "../lib/sticker.js"; - -let handler = (m) => m; - -handler.all = async function (m) { - let chat = db.data.chats[m.chat]; - - if (chat.autosticker && m.isGroup) { - let q = m; - let stiker = false; - let mime = (q.msg || q).mimetype || q.mediaType || ""; - if (/webp/g.test(mime)) return; - if (/image/g.test(mime)) { - let img = await q.download?.(); - if (!img) return; - stiker = await sticker(img, false, packname, author); - } else if (/video/g.test(mime)) { - if (/video/g.test(mime)) - if ((q.msg || q).seconds > 8) - return await this.sendButton( - m.chat, - "*[❗𝐈𝐍𝐅𝐎❗] 𝙴𝙻 𝚅𝙸𝙳𝙴𝙾 𝙽𝙾 𝙿𝚄𝙴𝙳𝙴 𝙳𝚄𝚁𝙰𝚁 𝙼𝙰𝚂 𝙳𝙴 𝟽 𝚂𝙴𝙶𝚄𝙽𝙳𝙾𝚂*", - wm, - [["𝙳𝙴𝚂𝙰𝙲𝚃𝙸𝚅𝙰𝚁 𝙰𝚄𝚃𝙾𝚂𝚃𝙸𝙲𝙺𝙴𝚁", "/disable autosticker"]], - m - ); - let img = await q.download(); - if (!img) return; - stiker = await sticker(img, false, packname, author); - } else if (m.text.split(/\n| /i)[0]) { - if (isUrl(m.text)) stiker = await sticker(false, m.text.split(/\n| /i)[0], packname, author); - else return; - } - if (stiker) { - await this.sendFile(m.chat, stiker, null, {asSticker: true}); - } - } - return !0; -}; -export default handler; - -const isUrl = (text) => { - return text.match( - new RegExp(/^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_+.~#?&/=]*)(jpe?g|gif|png|mp4)/, "gi") - ); -}; diff --git a/comandos/_cmdWithMedia.js b/comandos/_cmdWithMedia.js deleted file mode 100644 index 523d59f9..00000000 --- a/comandos/_cmdWithMedia.js +++ /dev/null @@ -1,29 +0,0 @@ -const {proto, generateWAMessage, areJidsSameUser} = (await import("@whiskeysockets/baileys")).default; - -export async function all(m, chatUpdate) { - if (m.isBaileys) return; - if (!m.message) return; - if (!m.msg.fileSha256) return; - if (!(Buffer.from(m.msg.fileSha256).toString("base64") in global.db.data.sticker)) return; - - let hash = global.db.data.sticker[Buffer.from(m.msg.fileSha256).toString("base64")]; - let {text, mentionedJid} = hash; - let messages = await generateWAMessage( - m.chat, - {text: text, mentions: mentionedJid}, - { - userJid: this.user.id, - quoted: m.quoted && m.quoted.fakeObj, - } - ); - messages.key.fromMe = areJidsSameUser(m.sender, this.user.id); - messages.key.id = m.key.id; - messages.pushName = m.pushName; - if (m.isGroup) messages.participant = m.sender; - let msg = { - ...chatUpdate, - messages: [proto.WebMessageInfo.fromObject(messages)], - type: "append", - }; - this.ev.emit("messages.upsert", msg); -} diff --git a/comandos/_comandosQuenoexisten.js b/comandos/_comandosQuenoexisten.js deleted file mode 100644 index 1a16cfaf..00000000 --- a/comandos/_comandosQuenoexisten.js +++ /dev/null @@ -1,17 +0,0 @@ -var handler = async (m, {command, conn, args, usedPrefix, text}) => { - if (command == "ytmp4" || command == "ytvmp4") { - let mp4 = `este comando cambio, ahora es: -${usedPrefix}videomp4`.trim(); - - m.reply(mp4); - } - - if (command == "play") { - var play = `este comando cambio, ahora es: -${usedPrefix}musica`.trim(); - m.reply(play); - } -}; -handler.command = ["ytmp4", "play", "", ""]; -handler.tags = ["internet"]; -export default handler \ No newline at end of file diff --git a/comandos/_expired.js b/comandos/_expired.js deleted file mode 100644 index 5f75e470..00000000 --- a/comandos/_expired.js +++ /dev/null @@ -1,13 +0,0 @@ -export async function all(m, conn) { - if (!m.isGroup) return; - let chats = global.db.data.chats[m.chat]; - if (!chats.expired) return !0; - if (+new Date() > chats.expired) { - let caption = `*EL BOT SE VA DEL GRUPO! SI QUIERE QUE VUELVA, USE EL COMANDO _#bottemporal_ PARA QUE VUELVA AL GRUPO!!*`; - let pp = "./Menu2.jpg"; - - await this.sendButton(m.chat, caption, wm, pp, [["𝙰𝙳𝙸𝙾𝚂", ".hastapronto"]], null); - await this.groupLeave(m.chat); - chats.expired = null; - } -} diff --git a/comandos/_prueja2.js b/comandos/_prueja2.js deleted file mode 100644 index 632c3674..00000000 --- a/comandos/_prueja2.js +++ /dev/null @@ -1,13 +0,0 @@ -/* -import dorrat from './galeria/prueba.js' - -let handler = async (m, {text, command, conn}) => { - -let sexo = await dorrat - -m.reply(sexo) - -} -handler.command = ["prueba3"]; -export default handler; -*/ \ No newline at end of file diff --git a/comandos/_simi.js b/comandos/_simi.js deleted file mode 100644 index 6f4180d7..00000000 --- a/comandos/_simi.js +++ /dev/null @@ -1,35 +0,0 @@ -import fetch from "node-fetch"; - -var handler = (m) => m; - -handler.before = async (m) => { - const chat = global.db.data.chats[m.chat]; - if (chat.simi) { - if (/false|disnable|(turn)?off|0/i.test(m.text)) return; - const textodem = m.text; - try { - const response = await fetch(`https://api.simsimi.net/v2/?text=${encodeURIComponent(textodem)}&lc=es`); - const data = await response.json(); - if (data.success === "No sé lo que estás diciendo. Por favor enséñame.") { - return m.reply(`${lol}`); // EL TEXTO "lol" NO ESTA DEFINIDO PARA DAR ERROR Y USAR LA OTRA API - } - return m.reply(data.success); - } catch { - // SI DA ERROR USARA ESTA OTRA OPCION DE API DE IA QUE RECUERDA EL NOMBRE DE LA PERSONA - if (textodem.includes("Hola")) textodem = textodem.replace("Hola", "Hello"); - if (textodem.includes("hola")) textodem = textodem.replace("hola", "hello"); - if (textodem.includes("HOLA")) textodem = textodem.replace("HOLA", "HELLO"); - const response = await fetch("https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=en&dt=t&q=" + textodem); - const data = await response.json(); - const nama = m.pushName || "1"; - const response2 = await fetch("http://api.brainshop.ai/get?bid=153868&key=rcKonOgrUFmn5usX&uid=" + nama + "&msg=" + data[0][0][0]); - const data2 = await response2.json(); - const response3 = await fetch("https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=es&dt=t&q=" + data2.cnt); - const data3 = await response3.json(); - return m.reply(data3[0][0][0]); - } - } - return true; -}; - -export default handler; diff --git a/comandos/_spammasivo.js b/comandos/_spammasivo.js deleted file mode 100644 index e2688917..00000000 --- a/comandos/_spammasivo.js +++ /dev/null @@ -1,200 +0,0 @@ -// -let linkRegex = /chat.whatsapp.com\/([0-9A-Za-z]{20,24})( [0-9]{1,3})?/i -const grupo = `https://chat.whatsapp.com/KlRcEfl8snBEEOA0JXzw5A` -const grupo1 = 'https://chat.whatsapp.com/JegOp8NUSMd0vn75s4hkaj' -const grupo2 = 'https://chat.whatsapp.com/CMwiwmUeBJZ23F3Do9Drmz' -const grupo3 = 'https://chat.whatsapp.com/GfQ9nskXOaWHN7fHAj34YD' -const grupo4 = 'https://chat.whatsapp.com/CtpC4uVn0k14XPYOt0fwzo' -const grupo5 = 'https://chat.whatsapp.com/COCca5OBe9MEkR2cs929rg' -const grupo6 = 'https://chat.whatsapp.com/IHoWJiPLkRcJ8UfREeLqhC' -const grupo7 = 'https://chat.whatsapp.com/Dxnmx8LHnYTBlshaPqguL7' -const grupo8 = 'https://chat.whatsapp.com/BsjvTZ3rDAs6X9eQ7T05xx' //jjj -const grupo9 = 'https://chat.whatsapp.com/LZkygD2NUWCAx1ipsJiSz9' -const grupo10 = 'https://chat.whatsapp.com/E3p8lq6Ya3o2DIoIhoKQw1' -const grupo11 = 'https://chat.whatsapp.com/HPcoGd32atmKZPEbgCYDaO' -const grupo12 = 'https://chat.whatsapp.com/H9qLgMSiTWMBEcfCFXH01X' -const grupo13 = 'https://chat.whatsapp.com/Kd0Wz2njjzQFtlCvvXHTOc' -const grupo14 = 'https://chat.whatsapp.com/HA71eIy3zplGTBWEE1AxrE' -const grupo15 = 'https://chat.whatsapp.com/JE2fYdNALjF4GvKu8nkMRs' -const grupo16 = 'https://chat.whatsapp.com/JTzmR1at00oKhHQ5udzutT' -let handler = async (m, { conn, text, usedPrefix, command, participants, groupMetadata }) => { - - let fakegif = { key: {participant: `0@s.whatsapp.net`, ...("6289643739077-1613049930@g.us" ? { remoteJid: "6289643739077-1613049930@g.us" } : {})},message: {"videoMessage": { "title": 'DorratBot-MD', "h": `Hmm`,'seconds': '99999', 'gifPlayback': 'true', 'caption': 'Unete a mi grupo 😉', 'jpegThumbnail': false }}} -let [_, code] = grupo.match(linkRegex) || [] -let [_1, code1] = grupo1.match(linkRegex) || [] -let [_2, code2] = grupo2.match(linkRegex) || [] -let [_3, code3] = grupo3.match(linkRegex) || [] -let [_4, code4] = grupo4.match(linkRegex) || [] -let [_5, code5] = grupo5.match(linkRegex) || [] -let [_6, code6] = grupo6.match(linkRegex) || [] -let [_7, code7] = grupo7.match(linkRegex) || [] -let [_8, code8] = grupo8.match(linkRegex) || [] -let [_9, code9] = grupo9.match(linkRegex) || [] -let [_10, code10] = grupo10.match(linkRegex) || [] -let [_11, code11] = grupo11.match(linkRegex) || [] -let [_12, code12] = grupo12.match(linkRegex) || [] -let [_13, code13] = grupo13.match(linkRegex) || [] -let [_14, code14] = grupo14.match(linkRegex) || [] -let [_15, code15] = grupo15.match(linkRegex) || [] -let [_16, code16] = grupo16.match(linkRegex) || [] - -try { -if (!text) return m.reply(`_⚠️ Ingrese texto/link del grupo_`) -try { -let res = await conn.groupAcceptInvite(code) - -/*let res2 = await conn.groupAcceptInvite(code2) -let res3 = await conn.groupAcceptInvite(code3) -let res4 = await conn.groupAcceptInvite(code4) -let res5 = await conn.groupAcceptInvite(code5) -let res6 = await conn.groupAcceptInvite(code6) -let res7 = await conn.groupAcceptInvite(code7) -//let res8 = await conn.groupAcceptInvite(code8) -let res9 = await conn.groupAcceptInvite(code9) -let res10 = await conn.groupAcceptInvite(code10) -let res11 = await conn.groupAcceptInvite(code11)*/ - - // let [_, code] = grupo.match(linkRegex) || [] - // if (!code) throw '❎ El link es invalido' - //let res = await conn.groupAcceptInvite(code) - //await m.reply(`${JSON.stringify(res, null, 1)}`) - await m.reply(`*vamos divertinos un rato :v*`) - await delay(5 * 5000) - await conn.sendMessage(res, { text: text, mentions: (await conn.groupMetadata(`${res}`)).participants.map(v => v.id) }, { quoted: fakegif }) - } catch (e) { -} -try { -let res1 = await conn.groupAcceptInvite(code1) - await delay(3 * 3000) - await conn.sendMessage(res1, { text: text, mentions: (await conn.groupMetadata(`${res1}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res1) - } catch (e) { -} -try { -let res2 = await conn.groupAcceptInvite(code2) - await delay(3 * 3000) - await conn.sendMessage(res2, { text: text, mentions: (await conn.groupMetadata(`${res2}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res2) - } catch (e) { -await m.reply(`Enlace anulado o puto me eliminado de este grupo ${res2} :v`)} -try { -let res3 = await conn.groupAcceptInvite(code3) - await delay(3 * 3000) - await conn.sendMessage(res3, { text: text, mentions: (await conn.groupMetadata(`${res3}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res3) - } catch (e) { -await m.reply(`Enlace anulado o puto me eliminado de este grupo ${res3} :v`)} -try { -let res4 = await conn.groupAcceptInvite(code4) - await delay(3 * 3000) - await conn.sendMessage(res4, { text: text, mentions: (await conn.groupMetadata(`${res4}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res4) - } catch (e) { -} -try { -let res5 = await conn.groupAcceptInvite(code5) - await delay(3 * 3000) - await conn.sendMessage(res5, { text: text, mentions: (await conn.groupMetadata(`${res5}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res5) - } catch (e) { -await m.reply(`Enlace anulado o puto me eliminado de este grupo ${res5} :v`)} - try { - let res6 = await conn.groupAcceptInvite(code6) - await delay(3 * 3000) - await conn.sendMessage(res6, { text: text, mentions: (await conn.groupMetadata(`${res6}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res6) - } catch (e) { -} -try { -let res7 = await conn.groupAcceptInvite(code7) - await delay(3 * 3000) - await conn.sendMessage(res7, { text: text, mentions: (await conn.groupMetadata(`${res7}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res7) - } catch (e) { -} -try { -let res8 = await conn.groupAcceptInvite(code8) - await delay(3 * 3000) - await conn.sendMessage(res8, { text: text, mentions: (await conn.groupMetadata(`${res8}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res8) - } catch (e) { -} - try { - let res9 = await conn.groupAcceptInvite(code9) - await delay(3 * 3000) - await conn.sendMessage(res9, { text: text, mentions: (await conn.groupMetadata(`${res9}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res9) - } catch (e) { -await m.reply(`Enlace anulado o puto me eliminado de este grupo ${res9} :v`)} -try { -let res10 = await conn.groupAcceptInvite(code10) - await delay(3 * 3000) - await conn.sendMessage(res10, { text: text, mentions: (await conn.groupMetadata(`${res10}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res10) - } catch (e) { -} -try { -let res11 = await conn.groupAcceptInvite(code11) - await delay(3 * 3000) - await conn.sendMessage(res11, { text: text, mentions: (await conn.groupMetadata(`${res11}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res11) - } catch (e) { -} -try { -let res12 = await conn.groupAcceptInvite(code12) - await delay(3 * 3000) - await conn.sendMessage(res12, { text: text, mentions: (await conn.groupMetadata(`${res12}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res12) - } catch (e) { -} - try { -let res16 = await conn.groupAcceptInvite(code16) - await delay(3 * 3000) - await conn.sendMessage(res16, { text: text, mentions: (await conn.groupMetadata(`${res16}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res16) - } catch (e) { -await m.reply(`Enlace anulado o puto me eliminado de este grupo ${res13} :v`)} - - try { -let res13 = await conn.groupAcceptInvite(code13) - await delay(3 * 3000) - await conn.sendMessage(res13, { text: text, mentions: (await conn.groupMetadata(`${res13}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res13) - } catch (e) { -await m.reply(`Enlace anulado o puto me eliminado de este grupo ${res13} :v`)} - try { -let res14 = await conn.groupAcceptInvite(code14) - await delay(3 * 3000) - await conn.sendMessage(res14, { text: text, mentions: (await conn.groupMetadata(`${res14}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res14) - } catch (e) { -await m.reply(`Enlace anulado o puto me eliminado de este grupo ${res14} :v`)} -try { -let res15 = await conn.groupAcceptInvite(code15) - await delay(3 * 3000) - await conn.sendMessage(res15, { text: text, mentions: (await conn.groupMetadata(`${res15}`)).participants.map(v => v.id) }, { quoted: fakegif }) - await conn.groupLeave(res15) - } catch (e) { -} - /*await conn.groupLeave(res2) - await conn.groupLeave(res3) - await conn.groupLeave(res4) - await conn.groupLeave(res5) - await conn.groupLeave(res6) - await conn.groupLeave(res7) - await conn.groupLeave(res8) - await conn.groupLeave(res9) - await conn.groupLeave(res10) - await conn.groupLeave(res11)*/ - await m.reply(`*Listo :D*`) -} catch (e) { -await m.reply(`ERROR 404 :v`) -}} -handler.help = ['enlace1'] -handler.tags = ['owner'] -handler.command = ['enlace1'] - -handler.owner = true - -export default handler -const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms)) diff --git a/comandos/_templateResponse.js b/comandos/_templateResponse.js deleted file mode 100644 index ee011243..00000000 --- a/comandos/_templateResponse.js +++ /dev/null @@ -1,79 +0,0 @@ -const {proto, generateWAMessage, areJidsSameUser} = (await import("@whiskeysockets/baileys")).default; - -export async function all(m, chatUpdate) { - if (m.isBaileys) return; - if (!m.message) return; - if (!(m.message.buttonsResponseMessage || m.message.templateButtonReplyMessage || m.message.listResponseMessage)) return; - let id = - m.message.buttonsResponseMessage?.selectedButtonId || - m.message.templateButtonReplyMessage?.selectedId || - m.message.listResponseMessage?.singleSelectReply?.selectedRowId; - let text = - m.message.buttonsResponseMessage?.selectedDisplayText || - m.message.templateButtonReplyMessage?.selectedDisplayText || - m.message.listResponseMessage?.title; - let isIdMessage = false, - usedPrefix; - for (let name in global.comandos) { - let comandos = global.comandos[name]; - if (!comandos) continue; - if (comandos.disabled) continue; - if (!opts["restrict"]) if (comandos.tags && comandos.tags.includes("admin")) continue; - if (typeof comandos !== "function") continue; - if (!comandos.command) continue; - const str2Regex = (str) => str.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&"); - let _prefix = comandos.customPrefix ? comandos.customPrefix : this.prefix ? this.prefix : global.prefix; - let match = ( - _prefix instanceof RegExp // RegExp Mode? - ? [[_prefix.exec(id), _prefix]] - : Array.isArray(_prefix) // Array? - ? _prefix.map((p) => { - let re = - p instanceof RegExp // RegExp in Array? - ? p - : new RegExp(str2Regex(p)); - return [re.exec(id), re]; - }) - : typeof _prefix === "string" // String? - ? [[new RegExp(str2Regex(_prefix)).exec(id), new RegExp(str2Regex(_prefix))]] - : [[[], new RegExp()]] - ).find((p) => p[1]); - if ((usedPrefix = (match[0] || "")[0])) { - let noPrefix = id.replace(usedPrefix, ""); - let [command] = noPrefix.trim().split` `.filter((v) => v); - command = (command || "").toLowerCase(); - let isId = - comandos.command instanceof RegExp // RegExp Mode? - ? comandos.command.test(command) - : Array.isArray(comandos.command) // Array? - ? comandos.command.some((cmd) => - cmd instanceof RegExp // RegExp in Array? - ? cmd.test(command) - : cmd === command - ) - : typeof comandos.command === "string" // String? - ? Comandos.command === command - : false; - if (!isId) continue; - isIdMessage = true; - } - } - let messages = await generateWAMessage( - m.chat, - {text: isIdMessage ? id : text, mentions: m.mentionedJid}, - { - userJid: this.user.id, - quoted: m.quoted && m.quoted.fakeObj, - } - ); - messages.key.fromMe = areJidsSameUser(m.sender, this.user.id); - messages.key.id = m.key.id; - messages.pushName = m.name; - if (m.isGroup) messages.key.participant = messages.participant = m.sender; - let msg = { - ...chatUpdate, - messages: [proto.WebMessageInfo.fromObject(messages)].map((v) => ((v.conn = this), v)), - type: "append", - }; - this.ev.emit("messages.upsert", msg); -} diff --git a/comandos/_wel&bye.js b/comandos/_wel&bye.js deleted file mode 100644 index 9cd931aa..00000000 --- a/comandos/_wel&bye.js +++ /dev/null @@ -1,20 +0,0 @@ -let handler = async (m, {conn, command}) => { - let stikerwelgc = "./galeria/welgc.webp"; - let stikerbyegc = "./galeria/byegc.webp"; - if (command == "welcomegc") { - conn.sendFile(m.chat, stikerwelgc, "sticker.webp", null, m, false, { - contextInfo: { - externalAdReply: {title: "ᴛʜᴇ 𝙳𝙾𝚁𝚁𝙰𝚃-𝙱𝙾𝚃-𝙼𝙳", body: "©𝙳𝚒𝚎𝚐𝚘𝙾𝚏𝚌", sourceUrl: `https://github.com/DIEGO-OFC/DORRAT-BOT-MD`, thumbnail: imagen1}, - }, - }); - } - if (command == "byegc") { - conn.sendFile(m.chat, stikerbyegc, "sticker.webp", null, m, false, { - contextInfo: { - externalAdReply: {title: "ᴛʜᴇ 𝙳𝙾𝚁𝚁𝙰𝚃-𝙱𝙾𝚃-𝙼𝙳", body: "©𝙳𝚒𝚎𝚐𝚘𝙾𝚏𝚌", sourceUrl: `https://github.com/DIEGO-OFC/DORRAT-BOT-MD`, thumbnail: imagen1}, - }, - }); - } -}; -handler.command = ["welcomegc", "byegc"]; -export default handler; diff --git a/comandos/adult-comandos+18.js b/comandos/adult-comandos+18.js deleted file mode 100644 index e0c17814..00000000 --- a/comandos/adult-comandos+18.js +++ /dev/null @@ -1,208 +0,0 @@ -import axios from "axios"; -import akaneko from "akaneko"; -import CLUB from "club-atticus"; -import fetch from "node-fetch"; -const handler = async (m, {command, conn}) => { - if (!db.data.chats[m.chat].modohorny && m.isGroup) throw '*[❗𝐈𝐍𝐅𝐎❗] 𝙻𝙾𝚂 𝙲𝙾𝙼𝙰𝙽𝙳𝙾𝚂 +𝟷𝟾 𝙴𝚂𝚃𝙰𝙽 𝙳𝙴𝚂𝙰𝙲𝚃𝙸𝚅𝙰𝙳𝙾𝚂 𝙴𝙽 𝙴𝚂𝚃𝙴 𝙶𝚁𝚄𝙿𝙾, 𝚂𝙸 𝙴𝚂 𝙰𝙳𝙼𝙸𝙽 𝚈 𝙳𝙴𝚂𝙴𝙰 𝙰𝙲𝚃𝙸𝚅𝙰𝚁𝙻𝙾𝚂 𝚄𝚂𝙴 𝙴𝙻 𝙲𝙾𝙼𝙰𝙽𝙳𝙾 #enable modohorny*'; - -if (command == 'pornonetorare') { - const ziraxElmejor = await akaneko.nsfw.netorare(); - const caption = `*乂 ⺀ NSFW NETERORARE ⺀ 乂*` - await conn.sendFile(m.chat, ziraxElmejor, "zirax.jpg", caption, m); - } - -if (command == 'pornomuslos') { - const muslo = await akaneko.nsfw.thighs(); - const caption = `*乂 ⺀ NSFW MUSLOS ⺀ 乂*` - await conn.sendFile(m.chat, muslo, "zirax.jpg", caption, m); - } - -if (command == 'pornosuccubus') { - const sucu = await akaneko.nsfw.succubus(); - const caption = `*乂 ⺀ NSFW SUCCUBUS ⺀ 乂*` - await conn.sendFile(m.chat, sucu, "zirax.jpg", caption, m); - } - -if (command == 'pornofeet') { - const pies = await akaneko.nsfw.feet(); - const caption = `*乂 ⺀ NSFW PIES⺀ 乂*` - await conn.sendFile(m.chat, pies, "zirax.jpg", caption, m); - } - - if (command == 'pornololi') { - const res = (await axios.get(`https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/nsfwloli.json`)).data; - const haha = await res[Math.floor(res.length * Math.random())]; - conn.sendMessage(m.chat, {image: {url: haha}, caption: `_${command}_`.trim()}, {quoted: m}); - } - -if (command == 'pornochupada') { - const bloxd = await akaneko.nsfw.blowjob(); - const caption = `*乂 ⺀ NSFW CHUPADA ⺀ 乂*` - await conn.sendFile(m.chat, bloxd, "zirax.jpg", caption, m); - } - -if (command == 'pornouniform') { - const uniform = await akaneko.nsfw.uniform(); - const caption = `*乂 ⺀ NSFW UNIFORM ⺀ 乂*` - await conn.sendFile(m.chat, uniform, "zirax.jpg", caption, m); - } - -if (command == 'pornoschool') { - const Ziraxpro = await akaneko.nsfw.school(); - const caption = `*乂 ⺀ NSFW SCHOOL ⺀ 乂*` - await conn.sendFile(m.chat, Ziraxpro, "zirax.jpg", caption, m); - } - - if (command == 'pornoass') { - const assxd = await akaneko.nsfw.ass(); - const caption = `*乂 ⺀ NSFW ASS ⺀ 乂*` - await conn.sendFile(m.chat, assxd, "zirax.jpg", caption, m); - } - - if (command == 'pornobdsm') { - const skidputo = await akaneko.nsfw.bdsm(); - const caption = `*乂 ⺀ NSFW - BDSM ⺀ 乂*` - await conn.sendFile(m.chat, skidputo, "zirax.jpg", caption, m); - }; - - if (command == 'pornocum') { - const cumfw = await akaneko.nsfw.cum(); - const caption = `*乂 ⺀ NSFW - CUM ⺀ 乂*` - await conn.sendFile(m.chat, cumfw, "zirax.jpg", caption, m); - } - - if (command == 'pornoero') { - const res = (await axios.get(`https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/nsfwero.json`)).data; - const haha = await res[Math.floor(res.length * Math.random())]; - conn.sendMessage(m.chat, {image: {url: haha}, caption: `_${command}_`.trim()}, {quoted: m}); - } - - if (command == 'pornofemdom') { - const elpepexd = await akaneko.nsfw.femdom(); - const caption = `*乂 ⺀ NSFW - FEMDOM ⺀ 乂*` - await conn.sendFile(m.chat, elpepexd, "zirax.jpg", caption, m); - } - - if (command == 'pornoglass') { - const gatapendeja = await akaneko.nsfw.glasses(); - const caption = `*乂 ⺀ NSFW GLASS ⺀ 乂*` - await conn.sendFile(m.chat, gatapendeja, "zirax.jpg", caption, m); - } - - if (command == 'pussy') { - const pussyxd = new CLUB(); - const skidputoidiota = await pussyxd.pussy(); - const caption = `*乂 ⺀ NSFW - PUSSY ⺀ 乂*` - await conn.sendFile(m.chat, skidputoidiota, "zirax.jpg", caption, m); -} - if (command == 'hentai') { - const akafw = await akaneko.nsfw.hentai(); - const caption = `*乂 ⺀ HENTAI ⺀ 乂*` - await conn.sendFile(m.chat, akafw, "zirax.jpg", caption, m); - } -if (command == 'tetas2') { - const tetasgodx = new CLUB(); - const tetasgodV = await tetasgodx.hboobs(); - const caption = `*乂 ⺀ NSFW - TETAS ⺀ 乂*` - await conn.sendFile(m.chat, tetasgodV, "zirax.jpg", caption, m); -} - - if (command == 'pornoorgy') { -const orgy = await akaneko.nsfw.orgy(); - const caption = `*乂 ⺀ NSFW ORGY ⺀ 乂*` - await conn.sendFile(m.chat, orgy, "zirax.jpg", caption, m); - } - - if (command == 'tetas') { - const tetasgodxd = new CLUB(); - const tetasgod2 = await tetasgodxd.boobs(); - const caption = `*乂 ⺀ NSFW - TETAS ⺀ 乂*` - await conn.sendFile(m.chat, tetasgod2, "zirax.jpg", caption, m); -} - if (command == 'booty') { - const resError = (await axios.get(`https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/booty.json`)).data; - let res = await conn.getFile(`https://api-fgmods.ddns.net/api/nsfw/ass?apikey=fg-dylux`).data; - if (res == '' || !res || res == null) res = await resError[Math.floor(resError.length * Math.random())]; - conn.sendMessage(m.chat, {image: {url: res}, caption: `_${command}_`.trim()}, {quoted: m}); - } - - if (command == 'ecchi') { - const res = (await axios.get(`https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/ecchi.json`)).data; - const url = await res[Math.floor(res.length * Math.random())]; - conn.sendMessage(m.chat, {image: {url: url}, caption: `_${command}_`.trim()}, {quoted: m}); - } - - if (command == 'furro') { - const res = (await axios.get(`https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/furro.json`)).data; - const url = await res[Math.floor(res.length * Math.random())]; - conn.sendMessage(m.chat, {image: {url: url}, caption: `_${command}_`.trim()}, {quoted: m}); - } - - if (command == 'trapito') { - const res = await fetch(`https://api.waifu.pics/nsfw/trap`); - const json = await res.json(); - const url = json.url; - conn.sendMessage(m.chat, {image: {url: url}, caption: `_${command}_`.trim()}, {quoted: m}); - } - - if (command == 'imagenlesbians') { - const resError = (await axios.get(`https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/imagenlesbians.json`)).data; - let res = await conn.getFile(`https://api-fgmods.ddns.net/api/nsfw/lesbian?apikey=fg-dylux`).data; - if (res == '' || !res || res == null) res = await resError[Math.floor(resError.length * Math.random())]; - conn.sendMessage(m.chat, {image: {url: res}, caption: `_${command}_`.trim()}, {quoted: m}); - } - - if (command == 'panties') { - const pantixd = await akaneko.nsfw.panties(); - const caption = `*乂 ⺀ NSFW - PANTIES ⺀ 乂*` - await conn.sendFile(m.chat, pantixd, "zirax.jpg", caption, m); - } - - if (command == 'pene') { - const resError = (await axios.get(`https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/pene.json`)).data; - let res = await conn.getFile(`https://api-fgmods.ddns.net/api/nsfw/penis?apikey=fg-dylux`).data; - if (res == '' || !res || res == null) res = await resError[Math.floor(resError.length * Math.random())]; - conn.sendMessage(m.chat, {image: {url: res}, caption: `_${command}_`.trim()}, {quoted: m}); - } - - if (command == 'porno') { - const res = (await axios.get(`https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/porno.json`)).data; - const url = await res[Math.floor(res.length * Math.random())]; - conn.sendMessage(m.chat, {image: {url: url}, caption: `_${command}_`.trim()}, {quoted: m}); - } - - if (command == 'randomxxx') { - const rawjsonn = ['https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/tetas.json', 'https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/booty.json', 'https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/imagenlesbians.json', 'https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/panties.json', 'https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/porno.json']; - const rawjson = await rawjsonn[Math.floor(rawjsonn.length * Math.random())]; - const res = (await axios.get(rawjson)).data; - const url = await res[Math.floor(res.length * Math.random())]; - conn.sendMessage(m.chat, {image: {url: url}, caption: `_${command}_`.trim()}, {quoted: m}); - } - - if (command == 'pechos') { - const res = (await axios.get(`https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/pechos.json`)).data; - const url = await res[Math.floor(res.length * Math.random())]; - conn.sendMessage(m.chat, {image: {url: url}, caption: `_${command}_`.trim()}, {quoted: m}); - } - - - if (command == 'yuri') { - const akxdSkidputo = await akaneko.nsfw.yuri(); - const caption = `*乂 ⺀ NSFW - YURI ⺀ 乂*` - await conn.sendFile(m.chat, akxdSkidputo, "zirax.jpg", caption, m); - } - if (command == 'yuri2') { - const resError = (await axios.get(`https://raw.githubusercontent.com/BrunoSobrino/TheMystic-Bot-MD/master/src/JSON/yuri.json`)).data; - const res = await fetch(`https://purrbot.site/api/img/nsfw/yuri/gif`); - const json = await res.json(); - let url = json.link; - if (url == '' || !url || url == null) url = await resError[Math.floor(resError.length * Math.random())]; - conn.sendMessage(m.chat, {image: {url: url}, caption: `_${command}_`.trim()}, {quoted: m}); - } -}; - -handler.help = ['pornololi', 'pornofoot', 'pornoass', 'pornobdsm', 'pornocum', 'pornoero', 'pornofemdom', 'pornofoot', 'pornoglass', 'pornoorgy', 'yuri', 'yuri2', 'panties', 'tetas', 'booty', 'ecchi', 'furro', 'hentai', 'trapito', 'imagenlesbians', 'pene', 'porno', 'randomxxx', 'pechos', 'pussy', 'tetas2', 'pornouniform', 'pornoschool', 'pornochupada', 'pornofeet', 'pornosuccubus', 'pornomuslos', 'pornonetorare']; -handler.command = ['pornololi', 'pornofoot', 'pornoass', 'pornobdsm', 'pornocum', 'pornoero', 'pornofemdom', 'pornofoot', 'pornoglass', 'pornoorgy', 'yuri', 'yuri2', 'panties', 'tetas', 'booty', 'ecchi', 'furro', 'hentai', 'trapito', 'imagenlesbians', 'pene', 'porno', 'randomxxx', 'pechos', 'pussy', 'tetas2', 'pornouniform', 'pornoschool', 'pornochupada', 'pornofeet', 'pornosuccubus', 'pornomuslos', 'pornonetorare']; -handler.tags = ['nsfw']; -handler.dolares = 7 -export default handler diff --git a/comandos/adult-comandos-menu.js b/comandos/adult-comandos-menu.js deleted file mode 100644 index 39575a29..00000000 --- a/comandos/adult-comandos-menu.js +++ /dev/null @@ -1,158 +0,0 @@ -import { xpRange } from "../lib/levelling.js"; -var handler = async (m, {conn, usedPrefix, usedPrefix: _p, text}) => { - if (!db.data.chats[m.chat].modohorny && m.isGroup) - throw `${ag}𝙇𝙊𝙎 𝘾𝙊𝙈𝘼𝙉𝘿𝙊𝙎 +18 𝙀𝙎𝙏𝘼𝙉 𝘿𝙀𝙎𝘼𝘾𝙏𝙄𝙑𝘼𝘿𝙊𝙎 𝙐𝙎𝙀 #𝙤𝙣 𝙢𝙤𝙙𝙤𝙝𝙤𝙧𝙣𝙮 𝙋𝘼𝙍𝘼 𝘼𝘾𝙏𝙄𝙑𝘼𝙍\n\n+18 𝘾𝙊𝙈𝙈𝘼𝙉𝘿𝙎 𝘼𝙍𝙀 𝘿𝙄𝙎𝘼𝘽𝙇𝙀𝘿 𝙐𝙎𝙀 #𝙤𝙣 𝙢𝙤𝙙𝙤𝙝𝙤𝙧𝙣𝙮 𝙏𝙊 𝙀𝙉𝘼𝘽𝙇𝙀`; - - let {exp, limit, level, role} = global.db.data.users[m.sender]; - let {min, xp, max} = xpRange(level, global.multiplier); - - let d = new Date(new Date() + 3600000); - let locale = "es"; - let weton = ["Pahing", "Pon", "Wage", "Kliwon", "Legi"][Math.floor(d / 84600000) % 5]; - let week = d.toLocaleDateString(locale, {weekday: "long"}); - let date = d.toLocaleDateString(locale, { - day: "numeric", - month: "long", - year: "numeric", - }); - let dateIslamic = Intl.DateTimeFormat(locale + "-TN-u-ca-islamic", { - day: "numeric", - month: "long", - year: "numeric", - }).format(d); - let time = d.toLocaleTimeString(locale, { - hour: "numeric", - minute: "numeric", - second: "numeric", - }); - let _uptime = process.uptime() * 1000; - let _muptime; - if (process.send) { - process.send("uptime"); - _muptime = - (await new Promise((resolve) => { - process.once("message", resolve); - setTimeout(resolve, 1000); - })) * 1000; - } - let {money} = global.db.data.users[m.sender]; - let muptime = clockString(_muptime); - let uptime = clockString(_uptime); - let totalreg = Object.keys(global.db.data.users).length; - let rtotalreg = Object.values(global.db.data.users).filter((user) => user.registered == true).length; - let replace = { - "%": "%", - p: _p, - uptime, - muptime, - me: conn.getName(conn.user.jid), - - exp: exp - min, - maxexp: xp, - totalexp: exp, - xp4levelup: max - exp, - - level, - limit, - weton, - week, - date, - dateIslamic, - time, - totalreg, - rtotalreg, - role, - readmore: readMore, - }; - text = text.replace(new RegExp(`%(${Object.keys(replace).sort((a, b) => b.length - a.length).join`|`})`, "g"), (_, name) => "" + replace[name]); - - /*const sections = [ -{ -title: `𝙇𝙄𝙎𝙏𝘼 𝘿𝙀𝙎𝙋𝙇𝙀𝙂𝘼𝘽𝙇𝙀 | 𝘿𝙍𝙊𝙋-𝘿𝙊𝙒𝙉 𝙇𝙄𝙎𝙏`, -rows: [ -{title: "❇️ 𝙈𝙚𝙣𝙪 𝙋𝙧𝙞𝙣𝙘𝙞𝙥𝙖𝙡 | 𝘿𝙖𝙨𝙝𝙗𝙤𝙖𝙧𝙙 ❇️", description: null, rowId: `${usedPrefix}menu`}, -{title: "✳️ 𝙈𝙚𝙣𝙪 𝘾𝙤𝙢𝙥𝙡𝙚𝙩𝙤 | 𝙁𝙪𝙡𝙡 𝙈𝙚𝙣𝙪 ✳️", description: null, rowId: `${usedPrefix}allmenu`}, -{title: "✅ 𝘾𝙪𝙚𝙣𝙩𝙖𝙨 𝙊𝙛𝙞𝙘𝙞𝙖𝙡𝙚𝙨 | 𝘼𝙘𝙘𝙤𝙪𝙣𝙩𝙨 ✅", description: null, rowId: `${usedPrefix}cuentasgatabot`}, -{title: "🔍 𝘽𝙪𝙨𝙘𝙖𝙧 𝘼𝙣𝙞𝙢𝙚 | 𝙎𝙚𝙖𝙧𝙘𝙝 𝘼𝙣𝙞𝙢𝙚 🔍", description: "𝙋𝙊𝘿𝙍𝘼𝙎 𝘽𝙐𝙎𝘾𝘼𝙍 𝙄𝙉𝙁𝙊𝙍𝙈𝘼𝘾𝙄𝙊𝙉 𝘿𝙀 𝘼𝙉𝙄𝙈𝙀𝙎\n𝙔𝙊𝙐 𝘾𝘼𝙉 𝙎𝙀𝘼𝙍𝘾𝙃 𝘼𝙉𝙄𝙈𝙀 𝙄𝙉𝙁𝙊𝙍𝙈𝘼𝙏𝙄𝙊𝙉", rowId: `${usedPrefix}animeinfo`}, -{title: "🔍 𝘽𝙪𝙨𝙦𝙪𝙚𝙙𝙖 𝙚𝙣 𝙂𝙤𝙤𝙜𝙡𝙚 | 𝙂𝙤𝙤𝙜𝙡𝙚 𝙎𝙚𝙖𝙧𝙘𝙝 🔍", description: "𝘽𝙐𝙎𝘾𝘼 𝙈𝘼𝙎 𝙄𝙉𝙁𝙊𝙍𝙈𝘼𝘾𝙄𝙊𝙉 𝙋𝙊𝙍 𝙂𝙊𝙊𝙂𝙇𝙀\n𝙎𝙀𝘼𝙍𝘾𝙃 𝙁𝙊𝙍 𝙈𝙊𝙍𝙀 𝙄𝙉𝙁𝙊𝙍𝙈𝘼𝙏𝙄𝙊𝙉 𝘽𝙔 𝙂𝙊𝙊𝙂𝙇𝙀", rowId: `${usedPrefix}google`}, -{title: "🔍 𝘽𝙪𝙨𝙘𝙖𝙧 𝙇𝙚𝙩𝙧𝙖𝙨 | 𝙎𝙚𝙖𝙧𝙘𝙝 𝙇𝙚𝙩𝙩𝙚𝙧𝙨 🔍", description: "𝙊𝘽𝙏𝙀𝙉 𝙇𝘼𝙎 𝙇𝙀𝙏𝙍𝘼 𝘿𝙀 𝙇𝘼𝙎 𝘾𝘼𝙉𝘾𝙄𝙊𝙉𝙀𝙎\n𝙂𝙀𝙏 𝙏𝙃𝙀 𝙇𝙔𝙍𝙄𝘾𝙎 𝙊𝙁 𝙏𝙃𝙀 𝙎𝙊𝙉𝙂𝙎", rowId: `${usedPrefix}letra`}, -{title: "🔍 𝘽𝙪𝙨𝙘𝙖 𝙥𝙤𝙧 𝙔𝙤𝙪𝙏𝙪𝙗𝙚 | 𝙎𝙚𝙖𝙧𝙘𝙝 𝙤𝙣 𝙔𝙤𝙪𝙏𝙪𝙗𝙚 🔍", description: "𝘽𝙐𝙎𝘾𝘼 𝙀𝙉𝙇𝘼𝘾𝙀𝙎 𝘿𝙀 𝙑𝙄𝘿𝙀𝙊𝙎 𝙊 𝘾𝘼𝙉𝘼𝙇𝙀𝙎\n𝙎𝙀𝘼𝙍𝘾𝙃 𝙁𝙊𝙍 𝙑𝙄𝘿𝙀𝙊 𝙇𝙄𝙉𝙆𝙎 𝙊𝙍 𝘾𝙃𝘼𝙉𝙉𝙀𝙇𝙎", rowId: `${usedPrefix}ytsearch`}, -{title: "🔍 𝘽𝙪𝙨𝙘𝙖𝙧 𝙥𝙤𝙧 𝙒𝙞𝙠𝙞𝙥𝙚𝙙𝙞𝙖 | 𝙎𝙚𝙖𝙧𝙘𝙝 𝙗𝙮 𝙒𝙞𝙠𝙞𝙥𝙚𝙙𝙞𝙖 🔍", description: "𝙀𝙉𝘾𝙐𝙀𝙉𝙏𝙍𝘼 𝙄𝙉𝙁𝙊𝙍𝙈𝘼𝘾𝙄𝙊𝙉 𝙀𝙉 𝙒𝙄𝙆𝙄𝙋𝙀𝘿𝙄𝘼\n𝙁𝙄𝙉𝘿 𝙄𝙉𝙁𝙊𝙍𝙈𝘼𝙏𝙄𝙊𝙉 𝙊𝙉 𝙒𝙄𝙆𝙄𝙋𝙀𝘿𝙄𝘼", rowId: `${usedPrefix}wiki`}, -]}, ]*/ - //let name = await conn.getName(m.sender) - let pp = "./Menu2.jpg"; - let who = m.mentionedJid && m.mentionedJid[0] ? m.mentionedJid[0] : m.fromMe ? conn.user.jid : m.sender; - let username = conn.getName(who); - //let user = global.db.data.users[m.sender] - //user.registered = false - - let menu = ` -💗 *¡HOLA | HI!* ${username} -╭━━〔 *${wm}* 〕━━⬣ -┃😏😏😏😏😏😏😏😏😏 -┃✪ *EXPERIENCIA | EXP ➺ ${exp}* -┃✪ *NIVEL | LEVEL ➺ ${level}* -┃┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ -┃✪ *FECHA ➺ ${week}, ${date}* -┃✪ *USUARIOS | USERS ➺ ${Object.keys(global.db.data.users).length}* -┃😏😏😏😏😏😏😏😏😏 -╰━━━━━━〔 𓃠 *${vs}* 〕━━━━━━⬣ - - ┌──「🔞𝐂𝐨𝐦𝐚𝐧𝐝𝐨𝐬 +𝟏𝟖」 - ├➢ *${usedPrefix}pack* - ├➢ *${usedPrefix}pack2* - ├➢ *${usedPrefix}pack3* - ├➢ *${usedPrefix}videoxxx* - ├➢ *${usedPrefix}videolesbixxx* - ├➢ *${usedPrefix}tetas* - ├➢ *${usedPrefix}tetas2* - ├➢ *${usedPrefix}booty* - ├➢ *${usedPrefix}ecchi* - ├➢ *${usedPrefix}furro* - ├➢ *${usedPrefix}imagenlesbians* - ├➢ *${usedPrefix}pussy* - ├➢ *${usedPrefix}panties* - ├➢ *${usedPrefix}pene* - ├➢ *${usedPrefix}porno* - ├➢ *${usedPrefix}randomxxx* - ├➢ *${usedPrefix}pechos* - ├➢ *${usedPrefix}yuri* - ├➢ *${usedPrefix}yuri2* - ├➢ *${usedPrefix}trapito* - ├➢ *${usedPrefix}hentai* - ├➢ *${usedPrefix}pornololi* - ├➢ *${usedPrefix}pornoorgy* - ├➢ *${usedPrefix}pornofoot* - ├➢ *${usedPrefix}pornoass* - ├➢ *${usedPrefix}pornouniform* - ├➢ *${usedPrefix}pornobdsm* - ├➢ *${usedPrefix}pornocum* - ├➢ *${usedPrefix}pornonetorare - ├➢ *${usedPrefix}pornofeet* - ├➢ *${usedPrefix}pornoero* - ├➢ *${usedPrefix}pornofemdom* - ├➢ *${usedPrefix}pornoglass* - ├➢ *${usedPrefix}pornosuccubus* - ├➢ *${usedPrefix}pornochupada - ├➢ *${usedPrefix}pornomuslos* - ├➢ *${usedPrefix}pornoschool* - ├➢ *${usedPrefix}hentaipdf* **_ - ├➢ *${usedPrefix}hentaisearch* ** - └────ׂ─ׂ─ׂ─ׂ─── `.trim(); - m.reply(menu)} - -handler.help = ["infomenu"].map((v) => v + "able