miércoles, 21 de noviembre de 2018

Juego de numero al azar en interfaz grafica. Aporte por Ivan Gutierrez (Practica No. 18)

Sintaxis del programa:


#!/usr/bin/python
# -*- coding: utf-8 -*-

from Tkinter import *
from random import *
import time
from threading import *
from tkMessageBox import *

play = 1
stop = 0


nombres = ['jugador', 'pequeñuelo', 'pequeño']

nombre = nombres[randint(0, 2)]
num = randint(1, 10)
intentos = randint(3, 5)


def destroy():
    global hilo
    hilo.destroy()
    Ljuego.config(text='')
    Loportunidades.config(text='')

def checar():
    global num, nombre, intentos
    frases = ['Enserio no puedes adivinar?', 'Jajajaja solo eso me faltaba', 'No me ganarás', 'Pobrecito',
              'Aun lo sigues intentando?', 'Creo que ire a dormir en lo que intentas', 'Te crei mas capaz']
    frase = frases[randint(0,6)]
    intentos -=1
    if int(Entry.get())< num:
        showerror("Computadora","Pobresito, una pista, estoy pensando en un numero mas grande")
        Loportunidades.config(text=str(intentos)+" Intentos")
        Ljuego.config(text=frase)
    elif int(Entry.get())>num:
        showerror("Computadora","Uy no "+nombre+" creo que te pasaste")
        Loportunidades.config(text=str(intentos)+" Intentos")
        Ljuego.config(text=frase)


    if int(Entry.get()) == num:
        Loportunidades.config(text='')
        showinfo("Computadora", "Maldicion, Creo que e perdido esta vez, pero la proxima no sera tan facil")
        time.sleep(3)
        sys.exit()
    elif intentos == 0:
        Loportunidades.config(text='')
        showerror("Computadora","Oh oh te has quedado sin intentos")
        Ljuego.config(text="A si que no has podido adivinar \n el numero en el que estaba pensando")
        time.sleep(2)
        Ljuego.config('El nuermo en el que estaba pensando era'+str(num))


def intentos_dialog():
    global intentos, nombre

    if intentos == 3:
        Ljuego.config(text='Veamos como lo haces con 3 intentos ' + nombre)
        Loportunidades.config(text=str(intentos) + ' Intentos')
    elif intentos == 4:
        Ljuego.config(text='Hoy me agarraste de buenas, 4 Intentos!' + nombre)
        Loportunidades.config(text=str(intentos) + ' Intentos')
    elif intentos == 5:
        Ljuego.config(text='Uy, por que no intentas la loteria este dia?\n 5 intentos para ti' +nombre)
        Loportunidades.config(text=str(intentos) + ' Intentos')


def inicio():
    global play, stop
    hilo = Thread(target=juego)
    hilo.start()

def juego():
    global nombre, intentos
    Ljuego.config(text='Hola, soy tu computadora')
    time.sleep(2.5)
    Ljuego.config(text='Listo para jugar?')
    time.sleep(2.5)
    Ljuego.config(text='Cual es tu nombre?')
    time.sleep(1)
    Ljuego.config(text='No me digas, no lo necesito')
    time.sleep(1)
    Ljuego.config(text=('Muy bien '+nombre+' es hora de jugar a adivina el numero'))
    time.sleep(2.5)
    Ljuego.config(text='Estoy pensando en un numero.')
    time.sleep(2.5)
    Ljuego.config(text='No lo se que tal uno entre el 1 y el 10')
    time.sleep(2.5)
    Ljuego.config(text='Ahora viene lo importante, cuantas oportunidades te dare')
    time.sleep(2.5)
    Ljuego.config(text='Veamos, cuantas oportunidades se me da la gana darte')
    time.sleep(2.5)
    Ljuego.config(text='Mmm... que tal')
    time.sleep(3)
    intentos_dialog()
    time.sleep(2.5)
    Ljuego.config(text='Vamos espero y puedas adivinar el numero')
    time.sleep(2.5)
    Ljuego.config(text='Cierto, vas a necesitar esto')
    time.sleep(1)
    Entry.place(x=190, y=400)


ventana = Tk()
ventana.title('Adivina el numero')
ventana.config(bg='gray')


frame = Frame(ventana, width=500, height=500)
frame.pack()

Titulo = Label(frame, text='Bienvenido al juego adivina el numero', font=('Arial', 18, 'bold'), fg='blue')
Titulo.place(x=30, y=30)



Loportunidades = Label(frame, font=("Arial", 10, 'bold'), fg='red')
Loportunidades.place(x=430, y=100)


Ljuego = Label(frame, font=("Arial", 10, 'bold'))
Ljuego.place(x=30, y=100)

NBoton = StringVar()
NBoton.set('Iniciar')
Biniciar = Button(frame, textvariable=NBoton, command=inicio).place(x=300, y=70)

valor = ''
Entry = Entry(frame, width=20, textvariable=valor)
Entry.config(bg='green')

Nboton2 = StringVar()
Nboton2.set('Checar')
Boton = Button(frame, textvariable=Nboton2, command=checar).place(x=350, y=400)

ventana.mainloop()

Corrida del programa:

Al momento de precionar el boton de iniciar, empezara un cambio de labels, haciendo parecer que la misma computadora es la que esta jugando con nosotros, hasta el punto en donde nos dira que esta pensando en un numero entre el 1 y el 10,  y darnos cierta cantidad de intentos entre 3 y 5, y dandonos la caja de texto para poder dar nuestras respuestas.






No hay comentarios.:

Publicar un comentario

Unidad 4: Triangulo y cubo en 3D

Sintaxos del programa triangulo 3d: import pygame from pygame.locals import * from OpenGL.GL import * from OpenGL.GLU import * vert...