0.1.0 • Published 5 years ago

economia-discordv2 v0.1.0

Weekly downloads
-
License
ISC
Repository
-
Last release
5 years ago

economia-discordv2

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

Esto es una version beta, culquier bug que encuentren, no duden en contactarme via discord! Tambien, cualquier sugerencia puede ser agregada!

Funciones

Para empezar... Crear un archivo agdb.json en su proyecto y poner:

{

}

Una vez hecho eso, podemos comenzar.

var Economia = require("economia-discordv2");

var EconomiaServidor = new Economia("ID_DEL_SERVIDOR");

/* 
Luego de poner esto, se podran usar todas las funciones.
(En ID_DEL_SERVIDOR tiene que ir la id del servidor al cual se quiere ver la Economia (tienda, dinero de usuarios, inventarios...))
*/
  • EconomiaServidor.tienda();
EconomiaServidor.tienda().mostrar(Mensaje);
/*
Esto sirve para mostrar la tienda del servidor. 

Mensaje => boolean (opcional) 
Por defecto 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.
*/

EconomiaServidor.tienda().agregar(Nombre, Descripcion, Costo, Emoji);
/*
Esto sirve para agregar un objeto a la tienda 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. (En String)
*/

EconomiaServidor.tienda().remover(Numero);
/*
Esto sirve para quitar un objeto de la tienda del servidor.
Numero => El numero en el cual el objeto se encuentra en la tienda.
*/

EconomiaServidor.tienda().comprar(UserId, UserName, Numero);
/*
Esto sirve para que un Usuario compre un objeto de la tienda.
UserId => La Id del usuario.
UserName => El nombre del usuario.
Numero => El numero en el cual el objeto se encuentra en la tienda.
*/
  • EconomiaServidor.dinero(UserId, Username);
var DineroUsuario = EconomiaServidor.dinero(UserId, Username);
/* 
Esto nos dara acceso al dinero del usuario.
UserId => La Id del Usuario.
UserName => El nombre del Usuario.
*/

// Recordar que DineroUsuario es EconomiaServidor.dinero(UserId, Username);

DineroUsuario.mostrar();
/*
Nos devuelve un Objeto con el Dinero en el banco y dinero normal del Usuario.
*/

DineroUsuario.agregar(Cantidad, Banco);
/*
Agrega dinero del Usuario.
Cantidad => La cantidad que se quiere agregar (Numero)
Banco => boolean (Opcional)
Por defecto false.
Si esta en true, el dinero sera agregado al banco del usuario.
Si esta en false, el dinero sera agregado al dinero normal del usuario.
*/

DineroUsuario.remover(Cantidad, Banco);
/*
Remueve dinero del Usuario.
Cantidad => La cantidad que se quiere remover (Numero)
Banco => boolean (Opcional)
Por defecto false.
Si esta en true, el dinero sera removido del banco del usuario.
Si esta en false, el dinero sera removido del dinero normal del usuario.
*/

DineroUsuario.depositar(Cantidad);
/*
Deposita una Cantidad de dinero normal del Usuario al banco.
Cantidad => La cantidad que se quiere depositar (Numero)
En caso de que se quiera depositar todo el dinero que tiene actualmente,
poner "todo" o "all".
*/

DineroUsuario.retirar(Cantidad);
/*
Retira dinero del Banco y lo obtiene como dinero normal.
Cantidad => La cantidad que se quiere retirar del banco.
En caso de que se quiera retirar todo el dinero que tiene actualmente en el banco,
escribir "todo" o "all".
*/

DineroUsuario.reiniciar();
/*
Reinicia todo el dinero del Usuario.
*/

DineroUsuario.leaderboard();
/*
Devuelve un Objeto con el ranking de las personas con mas dinero en el servidor del Usuario.
*/
  • EconomiaServidor.inventario(UserId);
var InventarioUsuario = EconomiaServidor.inventario(UserId);
/*
Esto nos permite accedes a las funciones del inventario de un usuario.
UserId => La id del Usuario.
*/

// Recordar que InventarioUsuario es EconomiaServidor.inventario(UserId);

InventarioUsuario.mostrar(Mensaje);
/*
Sirve para mostrar el Inventario del de un Usuario.
Mensaje => boolean (Opcional)
Por defecto false.
Si esta en true, nos devuelve el inventario del usuario en forma de String ("Texto")
Si esta en false, nos devuelve el inventario del usuario en forma de Objeto.
*/

InventarioUsuario.agregarItem(Numero);
/*
Agrega un item de la tienda al inventario de un Usuario.
Numero => El numero de item de la TIENDA que se agregara al inventario.
*/

InventarioUsuario.removerItem(Numero);
/*
Remueve el item del inventario de un Usuario.
Numero => El numero de item del INVENTARIO del jugador.
*/

Errores:

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

Ejemplo:

var Economia = require("economia-discordv2");

var EconomiaServidor = new Economia("ID_DEL_SERVIDOR");

// Si intentamos mostrar una tienda vacia:
EconomiaServidor.tienda().mostrar();

console.log(Tienda); // Nos devolvera "no hay tienda" en lugar de los items.

// Si intentamos comprar un item que ya tenemos:
var Comprar = EconomiaServidor.tienda().comprar(message.guild.id, message.author.id, 5) // Nos devolvera "item ya comprado"
console.log(Comprar);

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

EconomiaServidor.tienda().mostrar():

  • "no hay tienda" (En caso de que no haya tienda aun o este vacia)

EconomiaServidor.tienda().agregar():

  • "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"
  • "el costo es muy grande" (En caso de que el costo sea infinito)
  • "ya hay un item con ese nombre"

EconomiaServidor.tienda().remover():

  • "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)
  • "el numero es inferior a cero"
  • "el numero es muy grande"
  • "no hay ningun item con ese numero" (En caso de que el numero introducido no este en la Tienda)

EconomiaServidor.tienda().comprar():

  • "no hay tienda"
  • "no se introdujo un numero" (En caso de que no se haya puesto un numero)
  • "no es un numero"
  • "el numero es inferior a cero"
  • "el numero es muy grande"
  • "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 tiene dinero suficiente" (En caso de que el usuario no tenga suficiente dinero para comprar el item)

EconomiaServidor.dinero().mostrar():

  • "no tiene dinero" (Nunca fue agregado a la database aun)

EconomiaServidor.dinero().agregar() y .remover():

  • "no se introdujo una cantidad"
  • "no es un numero" (La cantidad introducida no es un numero)
  • "la cantidad es inferior a cero"
  • "la cantidad es muy grande" (Infinito)

EconomiaServidor.dinero().depositar() y .retirar():

  • "no se introdujo una cantidad"
  • "string no compatible" (No se puso ni "todo" ni "all")
  • "no es un numero ni string" (La cantidad introducida no es un numero ni "todo" ni "all")
  • "la cantidad es inferior a cero"
  • "la cantidad es muy grande" (Infinito)
  • "no tiene dinero"
  • "no tiene tanto dinero"

EconomiaServidor.dinero().reiniciar():

  • "no tiene dinero"

EconomiaServidor.dinero().leaderboard():

  • 'no hay usuarios con dinero aun'

EconomiaServidor.inventario().mostrar():

  • "no items" (El Usuario no tiene items comprados)

EconomiaServidor.inventario().agregarItem() y .removerItem():

  • "no se introdujo un numero" (No se introdujo el numero de item)
  • "no es un numero" (El numero de Item no es un numero)
  • "el numero es inferior a cero"
  • "el numero es muy grande"
  • "no hay ningun item con ese numero"
  • "no items" (El usuario no tiene items) (Solo para la funcion sacar)
  • "item ya comprado" (Solo para la funcion agregar)
  • "no hay tienda" (Solo para la funcion agregar)

Ejemplos:

Ahora si, a la parte mas esperada...

  • Mostrar la tienda verificando si hay errores...
var Economia = require("economia-discordv2");
var EconomiaServidor = new Economia("ID_DEL_SERVIDOR");

//                  EconomiaServidor.tienda().mostrar(true o false)
var TiendaMensaje = EconomiaServidor.tienda().mostrar(true);

if (TiendaMensaje == "no hay tienda"){
    message.channel.send("No hay una tienda aun!");
}else{
    message.channel.send(TiendaMensaje);
}

//En caso de que queramos el Objeto de La Tienda:
var Objeto = EconomiaServidor.tienda().mostrar(true);

if (Objeto == "no hay tienda"){
    message.channel.send("No hay una tienda aun!");
}else{
    console.log(Objeto);
}
  • AgregarItem verificando errores...
var Economia = require("economia-discordv2");
var EconomiaServidor = new Economia("ID_DEL_SERVIDOR");

//                EconomiaServidor.tienda().agregar(Nombre, Descripcion, Costo, Emoji);

var AgregarItem = EconomiaServidor.tienda().agregar("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") return message.channel.send("No numeros negativos");
if(AgregarItem == "el costo es muy grande") return message.channel.send("La cantidad introducida es muuuuy grande!");
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.
var Economia = require("economia-discordv2");
var EconomiaServidor = new Economia("ID_DEL_SERVIDOR");

//           EconomiaServidor.dinero(UserId, Username).mostrar()
var Dinero = EconomiaServidor.dinero(message.author.id, message.author.username).mostrar();

if(Dinero == "no tiene dinero") return message.channel.send("No tienes dinero aun! Usa !daily o !work");

console.log(Dinero);

message.channel.send("Tu dinero es de: " + Dinero.dinero + "\nEn el banco: " + Dinero.banco);
  • Agregar Dinero a un usuario.
var Economia = require("economia-discordv2");
var EconomiaServidor = new Economia("ID_DEL_SERVIDOR");

var Cantidad = args[1];
//                  EconomiaServidor.dinero(UserId, UserName).agregar(Cantidad, true o false);
var AgregarDinero = EconomiaServidor.dinero(message.author.id, message.author.username).agregar(Cantidad, false);

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"){
    //Hacer algo
    return;
}
if (AgregarDinero == "la cantidad es 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

Proximamente pondré mas ejemplos... Pero por ahora... Para mas ejemplos contactarme por Discord :D!

0.1.0

5 years ago

0.0.58

5 years ago

0.0.57

5 years ago

0.0.56

5 years ago

0.0.55

5 years ago

0.0.54

5 years ago

0.0.53

5 years ago

0.0.52

5 years ago

0.0.51

5 years ago

0.0.5

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago