Nondeterministic Palindrome Machine

npm

Join us for the upcoming webinar, "Enterprise JavaScript done right: the tools you love, the security you need."Sign up here »

economia-discord

2.2.8 • Public • Published

economia-discord

Pequeño package hecho por y para principiantes para simplificar un sistema de economia para Discord:

Esto es una version beta, pronto ire sacando mas cosas!

Una vez instalado el package npm i economia-discord Tenemos que tener creada un archivo .json llamado agdb: agdb.json y escribir adentro

{

}

Una vez hecho esto, podemos empezar...

Inicio

Para empezar tenemos que crear la database

var Economia = require("economia-discord")
 
Economia.creardb(); // Crea la db.
 

Funciones

Aun no tiene muchas funciones y le ire agregando mas conforme vaya aprendiendo!

  • Economia.tienda
Economia.tienda.mostrar(GuildId, Mensaje);
/*  
Esto sirve para mostrar la tienda de un servidor. 
 
En GuildId => La Id del servidor
Mensaje => boolean (opcional) 
de normal esta en false. 
Si esta en false, devolvera un objeto con cada Item de la Tienda
Si esta en true, devolvera un string (Texto) con cada Item de la Tienda
*/
 
Economia.tienda.agregar(GuildId, Nombre, Descripcion, Costo, Emoji);
/*
Esto sirve para agregar un objeto a la tienda (Maximo 9).
GuildID => La id del servidor
Nombre => El nombre del Objeto
Descripcion => Una breve descripcion del objeto
Costo => El costo del objeto (Tiene que ser un Numero)
Emoji => Emoji de Discord
*/
 
Economia.tienda.sacar(GuildId, Numero);
/*
Esto sirve para quitar un objeto de la tienda.
GuildId => La Id del servidor.
Numero => El numero en el cual el objeto se encuentra en la tienda.
*/
 
Economia.tienda.comprar(GuildId, UserId, Numero);
/*
Esto sirve para comprar un objeto de la tienda.
GuildId => La Id del servidor.
UserId => La Id del usuario.
Numero => El numero en el cual el objeto se encuentra en la tienda.
*/
 
  • Economia.dinero
Economia.dinero.agregar(GuildID, UserID, UserName, Cantidad);
/*
Esto sirve para agregar dinero a un usuario
GuildId => La id del servidor en el cual esta el usuario
UserId => La id del usuario al cual se le agregara la cantidad de dinero especificada
UserName => El nombre del usuario al cual se le agregara la cantidad de dinero especificada
Cantidad => La cantidad de dinero a agregar (Numero)
*/
 
Economia.dinero.sacar(GuildID, UserID, UserName, Cantidad);
/*
Esto sirve para sacarle dinero a un usuario
GuildId => La id del servidor en el cual esta el usuario
UserId => La id del usuario al cual se le quitara la cantidad de dinero
UserName => El nombre del usuario al cual se le quitara la cantidad de dinero
Cantidad => La cantidad de dinero a sacar (Numero)
*/
 
Economia.dinero.mostrar(GuildID, UserID, UserName);
/*
Devuelve cuanto dinero tiene un usuario.
GuildId => La id del servidor
UserId => La id del usuario
UserName => El nombre del usuario
*/
 
Economia.dinero.leaderboard(GuildId);
/*
Devuelve un Objeto con el ranking de las personas con mas dinero.
GuildId => La id del servidor
*/
 
 
  • Economia.inventario
Economia.inventario.mostrar(GuildId, UserId, Mensaje);
/*
Esto sirve para ver los items del usuario.
GuildId => La id del servidor
UserId => La id del usuario
Mensaje => (Opcional) Boolean. 
En caso de poner true, los Items estaran en string. Listos para usar directamente.
En caso de poner false, los Items estaran en forma de Objeto.
(Por defecto false)
*/
 
// Proximamente Sacar/Agregar.

Errores:

En caso de errores nos devolvera un string (Ej: "no hay tienda").

Ejemplo:

// Si intentamos mostrar una tienda vacia:
Economia.tienda.mostar(message.guild.id) // Nos devolvera "no hay tienda" en lugar de los items.
 
// Si intentamos comprar un item que ya tenemos:
Economia.tienda.comprar(message.guild.id, message.author.id, 5) // Nos devolvera "item ya comprado"
 

Lista de errores posibles: Algunos errores se explican por si solos.

Economia.tienda.mostrar(GuildId):

  • "no hay tienda"

Economia.tienda.agregar(GuildId, Nombre, Descripcion, Costo, Emoji):

  • "un item no fue introducido" (En caso de no haber introducido el Nombre o la Descripcion o el valor o el Emoji)
  • "el costo no es un numero" (En caso de que el costo introducido no sea un numero)
  • "el costo es inferior a cero o muy grande" (En caso de que el costo sea negativo o Infinito)
  • "la tienda esta llena"
  • "ya hay un item con ese nombre"

Economia.tienda.sacar(GuildId, Numero):

  • "no hay tienda"
  • "no se introdujo un numero" (En caso de que no se haya puesto un numero)
  • "no es un numero" (En caso de que el numero introducido no sea un numero)
  • "no hay ningun item con ese numero" (En caso de que el numero introducido no este en la Tienda)

Economia.tienda.comprar(GuildID, UserID, Numero):

  • "no hay tienda"
  • "no se introdujo un numero" (En caso de que no se haya puesto un numero)
  • "no es un numero"
  • "no hay ningun item con ese numero" (La tienda no tiene ese numero)
  • "no tiene dinero" (En caso de que el usuario no tenga dinero)
  • "item ya comprado"
  • "no suficiente dinero" (En caso de que el usuario no tenga suficiente dinero para comprar el item)

Economia.dinero.agregar() y .sacar():

  • "no se introdujo una cantidad"
  • "no es un numero" (La cantidad ingresada no es un numero)
  • "la cantidad es inferior a cero o muy grande" (En caso de que el costo sea negativo o Infinito)

Economia.dinero.mostrar(GuildID, UserID, UserName)

  • "no tiene dinero"

Economia.dinero.leaderboard(GuildId):

  • "no hay usuarios con dinero aun"

Economia.inventario.mostrar(GuildID, UserID, boolean):

  • En caso de que no tenga items, se marcara 'no items'

Ejemplos:

  • Mostrar la tienda verificando si hay errores...
 
var Economia = require("economia-discord")
//           Economia.tienda.mostrar("Id de la Guild", true o false)
var Tienda = Economia.tienda.mostrar(message.guild.id, true);
if (Tienda == "no hay tienda"){
    message.channel.send("No hay una tienda aun!");
 
}else{
    message.channel.send(Tienda);
}
 
//En caso de que queramos el Objeto de La Tienda:
 
var Objeto = Economia.tienda.mostrar(message.guild.id, false);
 
if (Objeto == "no hay tienda"){
    message.channel.send("No hay una tienda aun!");
 
}else{
    console.log(Objeto);
}
  • Agregar un Item a la Tienda verificando si hay errores antes...
//                Economia.tienda.agregar(GuildId, Nombre, Descripcion, Costo, Emoji);
var AgregarItem = Economia.tienda.agregar(message.guild.id, "Un Bomba", "Cuidado! Va a explotar", 10, "💣");
 
if(AgregarItem == "un item no fue introducido") return message.channel.send("Uno de los parametros no fue introducido")
if(AgregarItem == "el costo no es un numero") return message.channel.send("Ingrese un numero para el costo")
if(AgregarItem == "el costo es inferior a cero o muy grande") return message.channel.send("No numeros negativos o el infinito")
  
if(AgregarItem == "la tienda esta llena") return message.channel.send("La Tienda esta llena 9 max")
if(AgregarItem == "ya hay un item con ese nombre") return message.channel.send('Ya hay un Item con ese nombre')
 
 
message.channel.send("Item Agregado!")
console.log(AgregarItem);
  
  • Mostrar el dinero de un usuario.
//           Economia.dinero.mostrar(GuildID, UserID, UserName)
var Dinero = Economia.dinero.mostrar(message.guild.id, message.author.id, message.author.username)
 
if(Dinero == "no tiene dinero") return message.channel.send("No tienes dinero aun! Usa !daily o !work");
 
message.channel.send("Tu dinero es de: " + Dinero);
 
  • Agregar Dinero a un usuario.
 
var Cantidad = args[1]
//                  Economia.dinero.agregar(GuildID, UserID, UserName, Cantidad);
var AgregarDinero = Economia.dinero.agregar(message.guild.id, message.author.id, message.author.username, Cantidad);
 
if (AgregarDinero == "no se introdujo una cantidad"){
    //Hacer Algo
    return;
}
if (AgregarDinero == "no es un numero"){
    //Hacer algo
    return;
}
if(AgregarDinero == "la cantidad es inferior a cero o muy grande"){
    //Hacer algo
    return;
}
 
message.channel.send("El dinero fue agregado!")
console.log(AgregarDinero); // Veamos de paso que nos devuelve cuando la operacion se raliza
 
  • Comando robar
/*
Funciones que usare:
Economia.dinero.sacar(GuildID, UserID, UserName, Cantidad);
Economia.dinero.agregar(GuildID, UserID, UserName, Cantidad)
 
GuildId => La id del servidor en el cual esta el usuario
UserId => La id del usuario al cual se le quitara la cantidad de dinero
UserName => El nombre del usuario al cual se le quitara la cantidad de dinero
Cantidad => La cantidad de dinero a quitar (Numero)
*/
 
var Victima = message.mentions.members.first();
 
if (!Victima) return message.channel.send("Menciona a alguien")
if(Victima.id == message.author.id) return message.channel.send("Robarte a ti mismo?")
 
var DineroARobar = Math.floor(Math.random()* 100) + 10; // Dinero Aleatorio.
 
Economia.dinero.sacar(message.guild.id,Victima.id, Victima.user.username, DineroARobar);
Economia.dinero.agregar(message.guild.id, message.author.id, message.author.username, DineroARobar)
 
message.channel.send("Le has robado " + DineroARobar )
 

Para mas ejemplos contactarme por priv :D!

Keywords

none

install

npm i economia-discord

Downloadsweekly downloads

65

version

2.2.8

license

ISC

last publish

collaborators

  • avatar
Report a vulnerability