lunes, 12 de noviembre de 2018

Juego de las chozas




  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
# -*- coding: utf-8 -*-

import random
from Tkinter import *
from Tkinter import Tk, Label, Radiobutton, PhotoImage, IntVar, Menu
import tkMessageBox as messagebox
from tkMessageBox import *


class JuegoChozas:
    def __init__(self, parent):
        self.imagen_fondo = PhotoImage(file="halo.gif")
        self.imagen_choza = PhotoImage(file="halo2.gif")

        self.ancho_choza = 60
        self.alto_choza = 140
        self.container = parent

        self.Chozas = []
        self.result = ""

        self.ocupar_chozas()

        self.setup()

    def ocupar_chozas(self):
        ocupantes = ['enemigo', 'amigo', 'vacia']
        while len(self.Chozas) < 5:
            computer_choice = random.choice(ocupantes)
            self.Chozas.append(computer_choice)
        print("Los ocupantes de los edificios son:", self.Chozas)

    def entrar_choza(self, numero_choza):
        print("Entrando en el edificio #:", numero_choza)
        ocupante_choza = self.Chozas[numero_choza - 1]
        print("El ocupante de la choza es: ", ocupante_choza)

        if ocupante_choza == 'enemigo':
            self.result = "Enemigo visto en el edificio # %d \n\n" % numero_choza
            self.result += "Has perdido :( Mucha suerte la próxima vez!"
        elif ocupante_choza == 'vacia':
            self.result = "el edificio # %d está vacia\n\n" % numero_choza
            self.result += "Enhorabuena! Has ganado!!!"
        else:
            self.result = "Amigo visto en el edificio # %d \n\n" % numero_choza
            self.result += "Enhorabuena! Has ganado!!!"

        self.anunciar_ganador(self.result)

    def crear_widgets(self):

        self.var = IntVar()
        self.background_label = Label(self.container,
                                      image=self.imagen_fondo)
        txt = "Selecciona un edificio en la que entrar. Ganarás si:\n"
        txt += "el edificio está vacia o si su ocupante es tu aliado, de lo contrario morirás"
        self.info_label = Label(self.container, text=txt, bg='white')
        # Creamos un dicionario con las opciones para las imagenes de las chozas
        r_btn_config = {'variable': self.var,
                        'bg': '#8AA54C',
                        'activebackground': 'green',
                        'image': self.imagen_choza,
                        'height': self.alto_choza,
                        'width': self.ancho_choza,
                        'command': self.radio_btn_pressed}

        self.r1 = Radiobutton(self.container, r_btn_config, value=1)
        self.r2 = Radiobutton(self.container, r_btn_config, value=2)
        self.r3 = Radiobutton(self.container, r_btn_config, value=3)
        self.r4 = Radiobutton(self.container, r_btn_config, value=4)
        self.r5 = Radiobutton(self.container, r_btn_config, value=5)

    def setup(self):
        self.crear_widgets()
        self.setup_layout()

    def setup_layout(self):
        self.container.grid_rowconfigure(1, weight=1)
        self.container.grid_columnconfigure(0, weight=1)
        self.container.grid_columnconfigure(4, weight=1)
        self.background_label.place(x=0, y=0, relwidth=1, relheight=1)
        self.info_label.grid(row=0, column=0, columnspan=5, sticky='nsew')
        self.r1.grid(row=1, column=0)
        self.r2.grid(row=1, column=2)
        self.r3.grid(row=1, column=4)
        self.r4.grid(row=4, column=2)
        self.r5.grid(row=4, column=0)

    def anunciar_ganador(self, data):
        messagebox.showinfo("¡Atención!", message=data)

    # Handle Events
    def radio_btn_pressed(self):
        self.entrar_choza(self.var.get())

def Instrucciones():
    messagebox.showinfo("¿Como se Juega?","Selecciona un edificio en la que entrar. Ganarás si:\nEl edificio está vacia o si su ocupante es tu aliado, de lo contrario morirás")




def fin():
    Ventana.destroy()

def devolucion():
    if askyesno('Verificar', 'Realmente quiere salir'):

        showinfo('No', 'Salir fue cancelado')

def error():
    messagebox.showwarning("ERROR", "No se pudo conectar a Internet")
    if askyesno('Verificar', 'iniciar juego en campaña'):
        messagebox.showinfo("", "Iniciando")
    else:
        showinfo('No', 'salir del juego')


if __name__ == "__main__":
    Ventana = Tk()
    WIDTH = 1280
    HEIGHT = 700
    Ventana.geometry("%sx%s" % (WIDTH, HEIGHT))
    Ventana.resizable(0, 0)
    Ventana.title("Ataca a los covenants V 0.0.1 - The game")
    game_app = JuegoChozas(Ventana)
    Ventana.geometry("%sx%s" % (WIDTH, HEIGHT))
    Ventana.resizable(0, 0)
    Ventana.title("Juego Halo")
    messagebox.showinfo("Juego de los Covenants", "Iniciando juego......")



    vp = Toplevel(Ventana)
    vp.title('')
    vp.geometry('120x210')
    vp.resizable(0, 0)

    Label(vp, text="Juego de los Covenants").pack
    player1 = Button(vp, text='Campaña', command=lambda: vp.destroy()).pack(fill=X)
    player2 = Button(vp, text='Multijugador', command=lambda: error()).pack(fill=X)
    player6 = Button(vp,text="Salir del Juego", command=lambda: fin()).pack(fill=X)






Ventana.mainloop()

No hay comentarios.:

Publicar un comentario