def shop(remitente, destinatario, regalo): """Tienda de regalos""" #Acceder a la HuachiNet Huachis = HuachiNet(remitente) #Primero verificar que el remitente tenga una cuenta if Huachis.Verificar_Usuario(remitente) == False: return random.choice(resp_tip_cuenta) else: #Verificar que se tenga saldo suficiente para la transaccion if Huachis.saldo_total < 5: return random.choice(resp_tip_sinbineros) else: #Iniciamos transaccion Huachis.Enviar_Bineros('Shop', 5) if regalo == 'monachina': monachina = random.choice(monaschinas) reddit.redditor(destinatario).message( "Te han enviado un regalito.....", f"{remitente} te ha enviado una mona china! Kawaii desu ne! \n\n [Abrir Regalo]({monachina})" ) return random.choice(resp_shop) elif regalo == 'trapo': trapo = random.choice(trapos) reddit.redditor(destinatario).message( "Te han enviado un regalito.....", f"{remitente} te ha enviado una dama con rama, no tengas miedo papi, si la agarras no da toques. \n\n [Abrir Regalo]({trapo})" ) return random.choice(resp_shop) elif regalo == 'furro': furro = random.choice(furros) reddit.redditor(destinatario).message( "Te han enviado un regalito.....", f"{remitente} te ha enviado un furro, que te diviertas! \n\n [Abrir Regalo]({furro})" ) return random.choice(resp_shop)
def saldazo(redditor_id) -> str: """Abierto todos los dias de 7am a 10pm""" Huachis = HuachiNet(redditor_id) #Primero verificar que el remitente tenga una cuenta if Huachis.Verificar_Usuario(redditor_id) == False: return random.choice(resp_tip_cuenta) else: return random.choice( resp_saldo) + f" {Huachis.saldo_total} Huachicoin(s)"
def historial(redditor_id) -> list: """Revisar el historial de movimientos del cliente""" Huachis = HuachiNet(redditor_id) #Primero verificar que el remitente tenga una cuenta if Huachis.Verificar_Usuario(redditor_id) == False: return random.choice(resp_tip_cuenta) else: return (Huachis.historial, Huachis.saldo_total, Huachis.depositos, Huachis.retiros, Huachis.asaltos)
def premio_huachilate(): """Repartir premios del huachilate""" huachicuenta = HuachiNet("Huachicuenta") huachiclave = huachicuenta.Huachiclave() participantes = [usuario[0] for usuario in cursor.execute("""SELECT usuario FROM boletitos WHERE huachiclave = ?""",(huachiclave[1],)).fetchall()] ganadores = set(random.sample(participantes,k = 10)) ganadores = list(ganadores) premios = [round((int(huachicuenta.saldo_total) * 50 ) / 100),round((int(huachicuenta.saldo_total) * 30 ) / 100),round((int(huachicuenta.saldo_total) * 20 ) / 100)] #Entregar premios #Primer lugar 50% huachicuenta.Enviar_Bineros(ganadores[0],premios[0],nota="Premio Huachilate") #Segundo lugar 30% huachicuenta.Enviar_Bineros(ganadores[1],premios[1],nota="Premio Huachilate") #Tercer lugar 20% huachicuenta.Enviar_Bineros(ganadores[2],premios[2],nota="Premio Huachilate") cursor.execute("""UPDATE huachilate SET entregado = 1 WHERE huachiclave = ?""",(huachiclave[1],)) conn.commit()
def huachilate(redditor_id): """Vengase y agarre su !huachilote""" #Acceder a cuenta del redditor Huachis_redditor = HuachiNet(redditor_id) #Verificar que tenga cuenta if Huachis_redditor.Verificar_Usuario(redditor_id) == False: return random.choice(resp_tip_cuenta) else: #Verificar que tenga saldo if Huachis_redditor.saldo_total < 50: return random.choice(resp_tip_sinbineros) else: #Cobrar la entrada Huachis_redditor.Enviar_Bineros("Huachicuenta",50,nota="Huachilate") huachiclave = Huachis_redditor.Huachiclave() valores = (time.time(),redditor_id,huachiclave[1]) conn.execute("""INSERT INTO boletitos (timestamp,usuario,huachiclave) VALUES (?,?,?)""",valores) conn.commit() huachicuenta = HuachiNet("Huachicuenta") if int(huachicuenta.saldo_total) >= huachiclave[2]: premio_huachilate() return f"Huachilote vendido a {redditor_id}"
def tip(remitente, destinatario, cantidad) -> str: """Dar propina por publicaciones y comentarios""" #Acceder a la HuachiNet Huachis = HuachiNet(remitente) #Primero verificar que el remitente tenga una cuenta if Huachis.Verificar_Usuario(remitente) == False: return random.choice(resp_tip_cuenta) else: #Verificar que se tenga saldo suficiente para la transaccion if Huachis.saldo_total < cantidad: return random.choice(resp_tip_sinbineros) else: #calcula la edad del destinatario para evitar spam de cuentas recien creadas if destinatario == "Empleado_del_mes": cuenta_dias = 30 else: cuenta_dias = edad_cuenta(destinatario) if cuenta_dias < 28: return "El usuario al que quieres enviar no tiene la madurez suficiente para entrar al sistema, es un pinche mocoso miado, dejalo ahi." else: #Verificar si el destinatario existe en la HuachiNet if Huachis.Verificar_Usuario(destinatario) == False: #Abrimos cuenta y le damos dineros de bienvenida Huachis.Bono_Bienvenida(destinatario) reddit.redditor(destinatario).message( "Bienvenid@ a la HuachiNet!", "Recuerda que todo esto es por mera diversion, amor al arte digital. Revisa el post sticky en Mujico para mas informacion de como usar la red, aqui mismo puedes consultar tu saldo e historial de tu cuenta, solo escribe: !historial o !saldo / !saldazo" ) #Iniciamos transaccion Huachis.Enviar_Bineros(destinatario, cantidad) if destinatario == "Empleado_del_mes": return random.choice( resp_tip_empleado ) + f" [{cantidad} Huachicoin(s) Enviado(s)]" elif remitente == "Empleado_del_mes": return "autotip" else: return random.choice( resp_tip_envio ) + f" [{cantidad} Huachicoin(s) Enviado(s)]"
def rank(redditor_id, topten=False, top25=False) -> str: """Forbes Mujico - TOP Abinerados""" #Acceder a la HuachiNet Huachis = HuachiNet(redditor_id) #Primero verificar que el redditor tenga una cuenta if Huachis.Verificar_Usuario(redditor_id) == False: return random.choice(resp_tip_cuenta) #Ranking global if topten == True: #Respuesta en forma de string respuesta = "# Forbes Mujico - Top Ten Abinerados\n\nLugar | Mujican@ | Cantidad\n:--|:--:|--:\n" for i, item in enumerate(Huachis.Ranking(), start=1): respuesta += f"__{i}__ | {item[0]} | {item[1]:,} H¢N\n" if i == 10: break return respuesta if top25 == True: #Respuesta en forma de string respuesta = "# Forbes Mujico - Top 25 Abinerados\n\nLugar | Mujican@ | Cantidad\n:--|:--:|--:\n" for i, item in enumerate(Huachis.Ranking(), start=1): respuesta += f"__{i}__ | {item[0]} | {item[1]:,} H¢N\n" if i == 25: break return respuesta elif topten == False: #Ranking por usuario for i, item in enumerate(Huachis.Ranking(), start=1): if item[0] == redditor_id: return f"Tu posicion en la HuachiNet es la numero: __{i}__"
from core import HuachiNet import praw import config #Acceder a la HuachiNet de la bodega Huachis_master = HuachiNet('Bodega') usuarios = [item[0] for item in Huachis_master.Ranking()] blacklist = ['Bodega', 'Shop'] #Configuracion del cliente de reddit reddit = praw.Reddit(client_id=config.APP_ID, client_secret=config.APP_SECRET, user_agent=config.USER_AGENT, username=config.REDDIT_USERNAME, password=config.REDDIT_PASSWORD) #Iterar por cada usuario for usuario in usuarios: if usuario not in blacklist: #Acceder a la cuenta del usuario Huachis_slave = HuachiNet(usuario) #Cantidad de transacciones transacciones = Huachis_slave.historial #Entregar bineros segun tabulador #Pension basica (50 a 200 movimientos) = 50 huachicoins semanales
def slots(redditor_id): """Ahora si es todo un casino""" #Acceder a cuenta del redditor Huachis_redditor = HuachiNet(redditor_id) #Verificar que tenga cuenta if Huachis_redditor.Verificar_Usuario(redditor_id) == False: return random.choice(resp_tip_cuenta) else: #Verificar que tenga saldo if Huachis_redditor.saldo_total < 10: return random.choice(resp_tip_sinbineros) else: #Cobrar el Huachito Huachis_redditor.Enviar_Bineros("Shop", 5) emojis = ['👻', '👽', '🐷', '🦖', '🐧', '🦝', '🍮', '💣', '👾'] huachito = [random.choice(emojis) for i in range(6)] conteo = [ huachito.count(emoji) for emoji in emojis if huachito.count(emoji) != 0 ] if '💣' in huachito: #Enviar mensaje en caso de bomba respuestas_bomba = [ "Como en buscaminas, te exploto la bomba, perdiste!", "Te toco la bomba werito", "BOMBA! mala suerte :'(", "Te salio el negrito del arroz, perdistes." ] return f"Aqui tienes tu huachito\n\n>!{' '.join(huachito)}!<\n\n>!{random.choice(respuestas_bomba)}!<" else: #Dar dinero en caso de 2 pares iguales if conteo.count(2) == 2: #Acceder a cuenta shop Huachis_shop = HuachiNet("Shop") Huachis_shop.Enviar_Bineros(redditor_id, 10, huachito=True) return f"Aqui tienes tu huachito\n\n>!{' '.join(huachito)}!<\n\n>!Ganaste 10 huachis (2 pares iguales)!<" elif conteo.count(2) == 3: #Acceder a cuenta shop Huachis_shop = HuachiNet("Shop") Huachis_shop.Enviar_Bineros(redditor_id, 100, huachito=True) return f"Aqui tienes tu huachito\n\n>!{' '.join(huachito)}!<\n\n>!Ganaste 10 huachis (3 pares iguales)!<" else: for numero in conteo: #Entregar premios if numero == 3: #Acceder a cuenta shop Huachis_shop = HuachiNet("Shop") Huachis_shop.Enviar_Bineros(redditor_id, 50, huachito=True) return f"Aqui tienes tu huachito\n\n>!{' '.join(huachito)}!<\n\n>!Ganaste 50 huachis (3 iguales)!<" elif numero == 4: #Acceder a cuenta shop Huachis_shop = HuachiNet("Shop") Huachis_shop.Enviar_Bineros(redditor_id, 300, huachito=True) return f"Aqui tienes tu huachito\n\n>!{' '.join(huachito)}!<\n\n>!Ganaste 300 huachis (4 iguales)!<" elif numero == 5: #Acceder a cuenta shop Huachis_shop = HuachiNet("Shop") Huachis_shop.Enviar_Bineros(redditor_id, 1000, huachito=True) return f"Aqui tienes tu huachito\n\n>!{' '.join(huachito)}!<\n\n>!Ganaste 1000 huachis (5 iguales)!<" elif numero == 6: #Acceder a cuenta shop Huachis_shop = HuachiNet("Shop") Huachis_shop.Enviar_Bineros(redditor_id, 10000, huachito=True) return f"Aqui tienes tu huachito\n\n>!{' '.join(huachito)}!<\n\n>!Ganaste 10,000 huachis (Premio Mayor)!<" respuestas_perdida = [ "Sigue participando", "Suerte para la proxima", "Asi es este negocio de rascar boletitos, llevate un dulce del mostrador" ] return f"Aqui tienes tu huachito\n\n>!{' '.join(huachito)}!<\n\n>!{random.choice(respuestas_perdida)}!<"
def atraco(cholo, victima): """Asalto en esteroides""" if cholo == victima: #Respuesta en caso de autorobo return random.choice(resp_autorobo) #Proteger al CEO if victima == "MarcoCadenas" or victima == "Empleado_del_mes" or victima == "Disentibot": return random.choice(resp_seguridad) else: if cholo == "MarcoCadenas": redditor_cholo = 101 else: redditor_cholo = random.randint(1, 100) redditor_victima = random.randint(1, 100) if redditor_cholo > redditor_victima: #Acceder a la HuachiNet Huachis = HuachiNet(victima) #Cantidad a perder cantidad = round( int(Huachis.saldo_total) * random.randint(5, 16) / 100) #Primero verificar que la victima tenga una cuenta if Huachis.Verificar_Usuario(victima) == False: return "No tiene cuenta, dime, que piensas robarle, ¿Los calzones?" else: #Verificar que el saldo sea suficiente if Huachis.saldo_total == 0: return "Chale, asaltaste a alguien sin dinero, mal pedo." else: if Huachis.Verificar_Usuario(cholo) == False: #Abrimos cuenta y le damos dineros de bienvenida Huachis.Bono_Bienvenida(cholo) reddit.redditor(cholo).message( "Bienvenid@ a la HuachiNet!", "Recuerda que todo esto es por mera diversion, amor al arte digital. Revisa el post sticky en Mujico para mas informacion de como usar la red.\n\nAqui mismo puedes consultar tu saldo e historial de tu cuenta, solo escribe: \n\n!historial o !saldo / !saldazo" ) #Enviar Binero Huachis.Enviar_Bineros(cholo, cantidad, asalto=True) return random.choice( resp_tumbar_cholo ) + f"\n\n__{cholo} ganó {cantidad} huachis (de la cartera de {victima})__" else: #Acceder a la HuachiNet Huachis = HuachiNet(cholo) #Cantidad a perder cantidad = round( int(Huachis.saldo_total) * random.randint(5, 16) / 100) #Primero verificar que el cholo tenga una cuenta if Huachis.Verificar_Usuario(cholo) == False: return random.choice(resp_tip_cuenta) else: #Verificar que se tenga saldo suficiente para la transaccion if Huachis.saldo_total == 0: return "Perdiste, pero no tienes dinero que dar." else: if Huachis.Verificar_Usuario(victima) == False: #Abrimos cuenta y le damos dineros de bienvenida Huachis.Bono_Bienvenida(victima) reddit.redditor(victima).message( "Bienvenid@ a la HuachiNet!", "Recuerda que todo esto es por mera diversion, amor al arte digital. Revisa el post sticky en Mujico para mas informacion de como usar la red.\n\nAqui mismo puedes consultar tu saldo e historial de tu cuenta, solo escribe: \n\n!historial o !saldo / !saldazo" ) #Enviar Binero Huachis.Enviar_Bineros(victima, cantidad, asalto=True) return random.choice( resp_tumbar_victima ) + f"\n\n__{victima} ganó {cantidad} huachis (de la cartera de {cholo})__"