UNPKG

discord-vatron

Version:

Módulo para facilitar la interacción con la API de Discord

33 lines (29 loc) 997 B
const EventEmitter = require("events"); module.exports = class Colector extends EventEmitter { constructor(filtro, opciones) { super(); if(typeof(filtro) != 'function') return console.error('[DISCORD-VATRON] El filtro del colector debe ser una función'); this.filtro = filtro; this.tiempo = opciones.tiempo || 120000; this.finalizado = false; setTimeout(() => { if(this.finalizado) return; this.finalizar('tiempo'); this.finalizado = true; }, this.tiempo); } finalizar(razon) { if(this.finalizado) return; this.emit('finalizado', razon || ''); setTimeout(() => { this.removeAllListeners('recibido'); this.removeAllListeners('finalizado'); }, 500); } _enviar(cosa) { if(this.finalizado) return; if(this.filtro(cosa)) { this.emit('recibido', cosa); } } }