Racha Diaria
Lógica del Comando /racha
/racha
Verificación del Usuario:
Se obtiene el
usuarioId
del remitente de la interacción.Se busca al usuario en la base de datos utilizando este
usuarioId
.Si el usuario no se encuentra, se envía un mensaje de error indicando que no se ha encontrado.
Control de Tiempo:
Se obtiene la fecha y hora actuales.
Se define un intervalo de 24 horas y otro de 48 horas en milisegundos.
Se verifica si han pasado menos de 24 horas desde la última reclamación:
Si es así, se calcula el tiempo restante y se informa al usuario.
Si han pasado más de 48 horas desde la última reclamación, se reinicia la racha del usuario y se le notifica que ha perdido su racha.
Incremento de la Racha:
Si el usuario no tiene una racha, se inicializa en 0.
Se incrementa la racha del usuario en 1.
Definición de Premios:
Se define un arreglo de premios que asigna recompensas diarias según el número de días de racha:
Día 1: 1 agua
Día 2: 1 energía
Día 3: 1 semilla de sábila
Día 4: 1 semilla de manzanilla
Día 5: 2 agua
Día 6: 2 energía
Día 7: 1 semilla de sábila
Día 8: 1 semilla de manzanilla
Día 9: 3 agua
Día 10: 3 energía
Día 11: 1 semilla de sábila
Día 12: 1 semilla de manzanilla
Día 13: 4 agua
Día 14: 4 energía
Día 15: 1 tierra de sábila
Día 16: 2 manzanillas
Día 17: 5 agua
Día 18: 5 energía
Día 19: 2 sábilas
Día 20: 2 manzanillas
Día 21: 6 agua
Día 22: 6 energía
Día 23: 3 sábilas
Día 24: 3 manzanillas
Día 25: 7 agua
Día 26: 7 energía
Día 27: 3 sábilas
Día 28: 3 manzanillas
Día 29: 8 agua
Día 30: 1 tierra de sábila
Otorgar Recompensas:
Se obtiene el premio correspondiente al día actual de la racha.
Dependiendo del tipo de premio:
Si es un recurso, se actualiza la cantidad en el inventario del usuario.
Si es una tierra, se añade un nuevo objeto de tierra al inventario del usuario.
Se envía un mensaje al usuario con la recompensa recibida.
Actualizar y Guardar Cambios:
Se actualiza la fecha de la última reclamación del usuario.
Se guardan los cambios en la base de datos.
Mensaje Final:
Si el usuario alcanza 30 días de racha, se le notifica y se le entrega un gran premio, reiniciando su racha a 1.
Last updated