Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # TILR by MDSA Labs c/o Alexander Abraham
- # licensed under the MIT license
- try:
- import kivy
- import random
- import sys
- from kivy.app import App
- from kivy.uix.gridlayout import GridLayout
- from kivy.uix.boxlayout import BoxLayout
- from kivy.uix.button import Button
- from kivy.core.window import Window
- from kivy.uix.label import Label
- from kivy.uix.screenmanager import ScreenManager
- from kivy.uix.screenmanager import Screen
- except Exception as error:
- print(str(error))
- exit()
- BUTTON_HEIGHT = int(Window.height)/7.9
- BUTTON_WIDTH = int(Window.width)
- class BlackChoiceButton(Button):
- def __init__(self,text):
- super(BlackChoiceButton, self).__init__()
- self.text = text
- self.color = (1,1,1,1)
- self.background_color = (0,0,0,255)
- self.font_size = '36sp'
- self.font_name = 'assets/pixel.ttf'
- class WhiteChoiceButton(Button):
- def __init__(self,text):
- super(WhiteChoiceButton, self).__init__()
- self.text = text
- self.color = (0,0,0,1)
- self.background_color = (255,255,255,255)
- self.font_size = '36sp'
- self.font_name = 'assets/pixel.ttf'
- class WhiteActionButton(Button):
- def __init__(self,text):
- super(WhiteActionButton, self).__init__()
- self.text = text
- self.color = (0,0,0,1)
- self.background_color = (255,255,255,255)
- self.font_size = '36sp'
- self.font_name = 'assets/pixel.ttf'
- self.height = BUTTON_HEIGHT
- self.width = BUTTON_WIDTH
- self.size_hint_y = None
- class BlackActionButton(Button):
- def __init__(self,text):
- super(BlackActionButton, self).__init__()
- self.text = text
- self.color = (1,1,1,1)
- self.background_color = (0,0,0,255)
- self.font_size = '36sp'
- self.font_name = 'assets/pixel.ttf'
- self.height = BUTTON_HEIGHT
- self.width = BUTTON_WIDTH
- self.size_hint_y = None
- class TitleLabel(Label):
- def __init__(self,text):
- super(TitleLabel, self).__init__()
- self.text = text
- self.color = (1,1,1,1)
- self.font_size = '45sp'
- self.font_name = 'assets/pixel.ttf'
- class TitleScreen(GridLayout):
- def __init__(self):
- super(TitleScreen, self).__init__()
- self.cols = 1
- self.title = TitleLabel(text='TILR')
- self.add_widget(self.title)
- class HowTo(GridLayout):
- def __init__(self):
- super(HowTo, self).__init__()
- self.cols = 1
- ex_text = 'A number\nbetween 1 and 1000\nis generated!\nYou have to play\nmemory and guess\nthe tile hiding it.'
- self.title = TitleLabel(text=ex_text)
- self.add_widget(self.title)
- class LevelOne(GridLayout):
- def __init__(self):
- super(LevelOne, self).__init__()
- self.tries = 9
- self.level_num = 'I'
- self.level = 'LVL ' + self.level_num
- self.cols = 1
- self.level_title = WhiteActionButton(self.level)
- choices = GridLayout(cols=3)
- self.choice_one = BlackChoiceButton(text='')
- self.choice_one.bind(on_press=lambda*args:self.process_guess(self.choice_one))
- self.choice_two = WhiteChoiceButton(text='')
- self.choice_two.bind(on_press=lambda*args:self.process_guess(self.choice_two))
- self.choice_three = BlackChoiceButton(text='')
- self.choice_three.bind(on_press=lambda*args:self.process_guess(self.choice_three))
- self.choice_four = WhiteChoiceButton(text='')
- self.choice_four.bind(on_press=lambda*args:self.process_guess(self.choice_four))
- self.choice_five = BlackChoiceButton(text='')
- self.choice_five.bind(on_press=lambda*args:self.process_guess(self.choice_five))
- self.choice_six = WhiteChoiceButton(text='')
- self.choice_six.bind(on_press=lambda*args:self.process_guess(self.choice_six))
- self.choice_seven = BlackChoiceButton(text='')
- self.choice_seven.bind(on_press=lambda*args:self.process_guess(self.choice_seven))
- self.choice_eight = WhiteChoiceButton(text='')
- self.choice_eight.bind(on_press=lambda*args:self.process_guess(self.choice_eight))
- self.choice_nine = BlackChoiceButton(text='')
- self.choice_nine.bind(on_press=lambda*args:self.process_guess(self.choice_nine))
- choices.add_widget(self.choice_one)
- choices.add_widget(self.choice_two)
- choices.add_widget(self.choice_three)
- choices.add_widget(self.choice_four)
- choices.add_widget(self.choice_five)
- choices.add_widget(self.choice_six)
- choices.add_widget(self.choice_seven)
- choices.add_widget(self.choice_eight)
- choices.add_widget(self.choice_nine)
- self.add_widget(self.level_title)
- self.add_widget(choices)
- self.choice_list = [
- self.choice_one,
- self.choice_two,
- self.choice_three,
- self.choice_four,
- self.choice_five,
- self.choice_six,
- self.choice_seven,
- self.choice_eight,
- self.choice_nine,
- ]
- self.integer = str(random.randint(1,1000))
- self.random_button = random.choice(self.choice_list)
- self.random_button.text = self.integer
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- else:
- pass
- def process_guess(self,button_object):
- if self.tries <= 9 and self.tries != 0:
- self.tries = self.tries - 1
- self.level_title.text = self.level + ' | ' + str(self.tries)
- if button_object.text == self.integer:
- button_object.color = (1,0,0,1)
- button_object.background_color = (0,255,0,255)
- self.tries = 0
- self.level_title.text = 'COMPLETE!'
- else:
- pass
- else:
- self.level_title.text = 'GAME OVER!'
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- class LevelTwo(GridLayout):
- def __init__(self):
- super(LevelTwo, self).__init__()
- self.tries = 8
- self.level_num = 'II'
- self.level = 'LVL ' + self.level_num
- self.cols = 1
- self.level_title = WhiteActionButton(self.level)
- choices = GridLayout(cols=3)
- self.choice_one = BlackChoiceButton(text='')
- self.choice_one.bind(on_press=lambda*args:self.process_guess(self.choice_one))
- self.choice_two = WhiteChoiceButton(text='')
- self.choice_two.bind(on_press=lambda*args:self.process_guess(self.choice_two))
- self.choice_three = BlackChoiceButton(text='')
- self.choice_three.bind(on_press=lambda*args:self.process_guess(self.choice_three))
- self.choice_four = WhiteChoiceButton(text='')
- self.choice_four.bind(on_press=lambda*args:self.process_guess(self.choice_four))
- self.choice_five = BlackChoiceButton(text='')
- self.choice_five.bind(on_press=lambda*args:self.process_guess(self.choice_five))
- self.choice_six = WhiteChoiceButton(text='')
- self.choice_six.bind(on_press=lambda*args:self.process_guess(self.choice_six))
- self.choice_seven = BlackChoiceButton(text='')
- self.choice_seven.bind(on_press=lambda*args:self.process_guess(self.choice_seven))
- self.choice_eight = WhiteChoiceButton(text='')
- self.choice_eight.bind(on_press=lambda*args:self.process_guess(self.choice_eight))
- self.choice_nine = BlackChoiceButton(text='')
- self.choice_nine.bind(on_press=lambda*args:self.process_guess(self.choice_nine))
- choices.add_widget(self.choice_one)
- choices.add_widget(self.choice_two)
- choices.add_widget(self.choice_three)
- choices.add_widget(self.choice_four)
- choices.add_widget(self.choice_five)
- choices.add_widget(self.choice_six)
- choices.add_widget(self.choice_seven)
- choices.add_widget(self.choice_eight)
- choices.add_widget(self.choice_nine)
- self.add_widget(self.level_title)
- self.add_widget(choices)
- self.choice_list = [
- self.choice_one,
- self.choice_two,
- self.choice_three,
- self.choice_four,
- self.choice_five,
- self.choice_six,
- self.choice_seven,
- self.choice_eight,
- self.choice_nine,
- ]
- self.integer = str(random.randint(1,1000))
- self.random_button = random.choice(self.choice_list)
- self.random_button.text = self.integer
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- else:
- pass
- def process_guess(self,button_object):
- if self.tries <= 9 and self.tries != 0:
- self.tries = self.tries - 1
- self.level_title.text = self.level + ' | ' + str(self.tries)
- if button_object.text == self.integer:
- button_object.color = (1,0,0,1)
- button_object.background_color = (0,255,0,255)
- self.tries = 0
- self.level_title.text = 'COMPLETE!'
- else:
- pass
- else:
- self.level_title.text = 'GAME OVER!'
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- class LevelThree(GridLayout):
- def __init__(self):
- super(LevelThree, self).__init__()
- self.tries = 7
- self.level_num = 'III'
- self.level = 'LVL ' + self.level_num
- self.cols = 1
- self.level_title = WhiteActionButton(self.level)
- choices = GridLayout(cols=3)
- self.choice_one = BlackChoiceButton(text='')
- self.choice_one.bind(on_press=lambda*args:self.process_guess(self.choice_one))
- self.choice_two = WhiteChoiceButton(text='')
- self.choice_two.bind(on_press=lambda*args:self.process_guess(self.choice_two))
- self.choice_three = BlackChoiceButton(text='')
- self.choice_three.bind(on_press=lambda*args:self.process_guess(self.choice_three))
- self.choice_four = WhiteChoiceButton(text='')
- self.choice_four.bind(on_press=lambda*args:self.process_guess(self.choice_four))
- self.choice_five = BlackChoiceButton(text='')
- self.choice_five.bind(on_press=lambda*args:self.process_guess(self.choice_five))
- self.choice_six = WhiteChoiceButton(text='')
- self.choice_six.bind(on_press=lambda*args:self.process_guess(self.choice_six))
- self.choice_seven = BlackChoiceButton(text='')
- self.choice_seven.bind(on_press=lambda*args:self.process_guess(self.choice_seven))
- self.choice_eight = WhiteChoiceButton(text='')
- self.choice_eight.bind(on_press=lambda*args:self.process_guess(self.choice_eight))
- self.choice_nine = BlackChoiceButton(text='')
- self.choice_nine.bind(on_press=lambda*args:self.process_guess(self.choice_nine))
- choices.add_widget(self.choice_one)
- choices.add_widget(self.choice_two)
- choices.add_widget(self.choice_three)
- choices.add_widget(self.choice_four)
- choices.add_widget(self.choice_five)
- choices.add_widget(self.choice_six)
- choices.add_widget(self.choice_seven)
- choices.add_widget(self.choice_eight)
- choices.add_widget(self.choice_nine)
- self.add_widget(self.level_title)
- self.add_widget(choices)
- self.choice_list = [
- self.choice_one,
- self.choice_two,
- self.choice_three,
- self.choice_four,
- self.choice_five,
- self.choice_six,
- self.choice_seven,
- self.choice_eight,
- self.choice_nine,
- ]
- self.integer = str(random.randint(1,1000))
- self.random_button = random.choice(self.choice_list)
- self.random_button.text = self.integer
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- else:
- pass
- def process_guess(self,button_object):
- if self.tries <= 9 and self.tries != 0:
- self.tries = self.tries - 1
- self.level_title.text = self.level + ' | ' + str(self.tries)
- if button_object.text == self.integer:
- button_object.color = (1,0,0,1)
- button_object.background_color = (0,255,0,255)
- self.tries = 0
- self.level_title.text = 'COMPLETE!'
- else:
- pass
- else:
- self.level_title.text = 'GAME OVER!'
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- class LevelFour(GridLayout):
- def __init__(self):
- super(LevelFour, self).__init__()
- self.tries = 6
- self.level_num = 'IV'
- self.level = 'LVL ' + self.level_num
- self.cols = 1
- self.level_title = WhiteActionButton(self.level)
- choices = GridLayout(cols=3)
- self.choice_one = BlackChoiceButton(text='')
- self.choice_one.bind(on_press=lambda*args:self.process_guess(self.choice_one))
- self.choice_two = WhiteChoiceButton(text='')
- self.choice_two.bind(on_press=lambda*args:self.process_guess(self.choice_two))
- self.choice_three = BlackChoiceButton(text='')
- self.choice_three.bind(on_press=lambda*args:self.process_guess(self.choice_three))
- self.choice_four = WhiteChoiceButton(text='')
- self.choice_four.bind(on_press=lambda*args:self.process_guess(self.choice_four))
- self.choice_five = BlackChoiceButton(text='')
- self.choice_five.bind(on_press=lambda*args:self.process_guess(self.choice_five))
- self.choice_six = WhiteChoiceButton(text='')
- self.choice_six.bind(on_press=lambda*args:self.process_guess(self.choice_six))
- self.choice_seven = BlackChoiceButton(text='')
- self.choice_seven.bind(on_press=lambda*args:self.process_guess(self.choice_seven))
- self.choice_eight = WhiteChoiceButton(text='')
- self.choice_eight.bind(on_press=lambda*args:self.process_guess(self.choice_eight))
- self.choice_nine = BlackChoiceButton(text='')
- self.choice_nine.bind(on_press=lambda*args:self.process_guess(self.choice_nine))
- choices.add_widget(self.choice_one)
- choices.add_widget(self.choice_two)
- choices.add_widget(self.choice_three)
- choices.add_widget(self.choice_four)
- choices.add_widget(self.choice_five)
- choices.add_widget(self.choice_six)
- choices.add_widget(self.choice_seven)
- choices.add_widget(self.choice_eight)
- choices.add_widget(self.choice_nine)
- self.add_widget(self.level_title)
- self.add_widget(choices)
- self.choice_list = [
- self.choice_one,
- self.choice_two,
- self.choice_three,
- self.choice_four,
- self.choice_five,
- self.choice_six,
- self.choice_seven,
- self.choice_eight,
- self.choice_nine,
- ]
- self.integer = str(random.randint(1,1000))
- self.random_button = random.choice(self.choice_list)
- self.random_button.text = self.integer
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- else:
- pass
- def process_guess(self,button_object):
- if self.tries <= 9 and self.tries != 0:
- self.tries = self.tries - 1
- self.level_title.text = self.level + ' | ' + str(self.tries)
- if button_object.text == self.integer:
- button_object.color = (1,0,0,1)
- button_object.background_color = (0,255,0,255)
- self.tries = 0
- self.level_title.text = 'COMPLETE!'
- else:
- pass
- else:
- self.level_title.text = 'GAME OVER!'
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- class LevelFive(GridLayout):
- def __init__(self):
- super(LevelFive, self).__init__()
- self.tries = 5
- self.level_num = 'V'
- self.level = 'LVL ' + self.level_num
- self.cols = 1
- self.level_title = WhiteActionButton(self.level)
- choices = GridLayout(cols=3)
- self.choice_one = BlackChoiceButton(text='')
- self.choice_one.bind(on_press=lambda*args:self.process_guess(self.choice_one))
- self.choice_two = WhiteChoiceButton(text='')
- self.choice_two.bind(on_press=lambda*args:self.process_guess(self.choice_two))
- self.choice_three = BlackChoiceButton(text='')
- self.choice_three.bind(on_press=lambda*args:self.process_guess(self.choice_three))
- self.choice_four = WhiteChoiceButton(text='')
- self.choice_four.bind(on_press=lambda*args:self.process_guess(self.choice_four))
- self.choice_five = BlackChoiceButton(text='')
- self.choice_five.bind(on_press=lambda*args:self.process_guess(self.choice_five))
- self.choice_six = WhiteChoiceButton(text='')
- self.choice_six.bind(on_press=lambda*args:self.process_guess(self.choice_six))
- self.choice_seven = BlackChoiceButton(text='')
- self.choice_seven.bind(on_press=lambda*args:self.process_guess(self.choice_seven))
- self.choice_eight = WhiteChoiceButton(text='')
- self.choice_eight.bind(on_press=lambda*args:self.process_guess(self.choice_eight))
- self.choice_nine = BlackChoiceButton(text='')
- self.choice_nine.bind(on_press=lambda*args:self.process_guess(self.choice_nine))
- choices.add_widget(self.choice_one)
- choices.add_widget(self.choice_two)
- choices.add_widget(self.choice_three)
- choices.add_widget(self.choice_four)
- choices.add_widget(self.choice_five)
- choices.add_widget(self.choice_six)
- choices.add_widget(self.choice_seven)
- choices.add_widget(self.choice_eight)
- choices.add_widget(self.choice_nine)
- self.add_widget(self.level_title)
- self.add_widget(choices)
- self.choice_list = [
- self.choice_one,
- self.choice_two,
- self.choice_three,
- self.choice_four,
- self.choice_five,
- self.choice_six,
- self.choice_seven,
- self.choice_eight,
- self.choice_nine,
- ]
- self.integer = str(random.randint(1,1000))
- self.random_button = random.choice(self.choice_list)
- self.random_button.text = self.integer
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- else:
- pass
- def process_guess(self,button_object):
- if self.tries <= 9 and self.tries != 0:
- self.tries = self.tries - 1
- self.level_title.text = self.level + ' | ' + str(self.tries)
- if button_object.text == self.integer:
- button_object.color = (1,0,0,1)
- button_object.background_color = (0,255,0,255)
- self.tries = 0
- self.level_title.text = 'COMPLETE!'
- else:
- pass
- else:
- self.level_title.text = 'GAME OVER!'
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- class LevelSix(GridLayout):
- def __init__(self):
- super(LevelSix, self).__init__()
- self.tries = 4
- self.level_num = 'VI'
- self.level = 'LVL ' + self.level_num
- self.cols = 1
- self.level_title = WhiteActionButton(self.level)
- choices = GridLayout(cols=3)
- self.choice_one = BlackChoiceButton(text='')
- self.choice_one.bind(on_press=lambda*args:self.process_guess(self.choice_one))
- self.choice_two = WhiteChoiceButton(text='')
- self.choice_two.bind(on_press=lambda*args:self.process_guess(self.choice_two))
- self.choice_three = BlackChoiceButton(text='')
- self.choice_three.bind(on_press=lambda*args:self.process_guess(self.choice_three))
- self.choice_four = WhiteChoiceButton(text='')
- self.choice_four.bind(on_press=lambda*args:self.process_guess(self.choice_four))
- self.choice_five = BlackChoiceButton(text='')
- self.choice_five.bind(on_press=lambda*args:self.process_guess(self.choice_five))
- self.choice_six = WhiteChoiceButton(text='')
- self.choice_six.bind(on_press=lambda*args:self.process_guess(self.choice_six))
- self.choice_seven = BlackChoiceButton(text='')
- self.choice_seven.bind(on_press=lambda*args:self.process_guess(self.choice_seven))
- self.choice_eight = WhiteChoiceButton(text='')
- self.choice_eight.bind(on_press=lambda*args:self.process_guess(self.choice_eight))
- self.choice_nine = BlackChoiceButton(text='')
- self.choice_nine.bind(on_press=lambda*args:self.process_guess(self.choice_nine))
- choices.add_widget(self.choice_one)
- choices.add_widget(self.choice_two)
- choices.add_widget(self.choice_three)
- choices.add_widget(self.choice_four)
- choices.add_widget(self.choice_five)
- choices.add_widget(self.choice_six)
- choices.add_widget(self.choice_seven)
- choices.add_widget(self.choice_eight)
- choices.add_widget(self.choice_nine)
- self.add_widget(self.level_title)
- self.add_widget(choices)
- self.choice_list = [
- self.choice_one,
- self.choice_two,
- self.choice_three,
- self.choice_four,
- self.choice_five,
- self.choice_six,
- self.choice_seven,
- self.choice_eight,
- self.choice_nine,
- ]
- self.integer = str(random.randint(1,1000))
- self.random_button = random.choice(self.choice_list)
- self.random_button.text = self.integer
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- else:
- pass
- def process_guess(self,button_object):
- if self.tries <= 9 and self.tries != 0:
- self.tries = self.tries - 1
- self.level_title.text = self.level + ' | ' + str(self.tries)
- if button_object.text == self.integer:
- button_object.color = (1,0,0,1)
- button_object.background_color = (0,255,0,255)
- self.tries = 0
- self.level_title.text = 'COMPLETE!'
- else:
- pass
- else:
- self.level_title.text = 'GAME OVER!'
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- class LevelSeven(GridLayout):
- def __init__(self):
- super(LevelSeven, self).__init__()
- self.tries = 3
- self.level_num = 'VII'
- self.level = 'LVL ' + self.level_num
- self.cols = 1
- self.level_title = WhiteActionButton(self.level)
- choices = GridLayout(cols=3)
- self.choice_one = BlackChoiceButton(text='')
- self.choice_one.bind(on_press=lambda*args:self.process_guess(self.choice_one))
- self.choice_two = WhiteChoiceButton(text='')
- self.choice_two.bind(on_press=lambda*args:self.process_guess(self.choice_two))
- self.choice_three = BlackChoiceButton(text='')
- self.choice_three.bind(on_press=lambda*args:self.process_guess(self.choice_three))
- self.choice_four = WhiteChoiceButton(text='')
- self.choice_four.bind(on_press=lambda*args:self.process_guess(self.choice_four))
- self.choice_five = BlackChoiceButton(text='')
- self.choice_five.bind(on_press=lambda*args:self.process_guess(self.choice_five))
- self.choice_six = WhiteChoiceButton(text='')
- self.choice_six.bind(on_press=lambda*args:self.process_guess(self.choice_six))
- self.choice_seven = BlackChoiceButton(text='')
- self.choice_seven.bind(on_press=lambda*args:self.process_guess(self.choice_seven))
- self.choice_eight = WhiteChoiceButton(text='')
- self.choice_eight.bind(on_press=lambda*args:self.process_guess(self.choice_eight))
- self.choice_nine = BlackChoiceButton(text='')
- self.choice_nine.bind(on_press=lambda*args:self.process_guess(self.choice_nine))
- choices.add_widget(self.choice_one)
- choices.add_widget(self.choice_two)
- choices.add_widget(self.choice_three)
- choices.add_widget(self.choice_four)
- choices.add_widget(self.choice_five)
- choices.add_widget(self.choice_six)
- choices.add_widget(self.choice_seven)
- choices.add_widget(self.choice_eight)
- choices.add_widget(self.choice_nine)
- self.add_widget(self.level_title)
- self.add_widget(choices)
- self.choice_list = [
- self.choice_one,
- self.choice_two,
- self.choice_three,
- self.choice_four,
- self.choice_five,
- self.choice_six,
- self.choice_seven,
- self.choice_eight,
- self.choice_nine,
- ]
- self.integer = str(random.randint(1,1000))
- self.random_button = random.choice(self.choice_list)
- self.random_button.text = self.integer
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- else:
- pass
- def process_guess(self,button_object):
- if self.tries <= 9 and self.tries != 0:
- self.tries = self.tries - 1
- self.level_title.text = self.level + ' | ' + str(self.tries)
- if button_object.text == self.integer:
- button_object.color = (1,0,0,1)
- button_object.background_color = (0,255,0,255)
- self.tries = 0
- self.level_title.text = 'COMPLETE!'
- else:
- pass
- else:
- self.level_title.text = 'GAME OVER!'
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- class LevelEight(GridLayout):
- def __init__(self):
- super(LevelEight, self).__init__()
- self.tries = 2
- self.level_num = 'VIII'
- self.level = 'LVL ' + self.level_num
- self.cols = 1
- self.level_title = WhiteActionButton(self.level)
- choices = GridLayout(cols=3)
- self.choice_one = BlackChoiceButton(text='')
- self.choice_one.bind(on_press=lambda*args:self.process_guess(self.choice_one))
- self.choice_two = WhiteChoiceButton(text='')
- self.choice_two.bind(on_press=lambda*args:self.process_guess(self.choice_two))
- self.choice_three = BlackChoiceButton(text='')
- self.choice_three.bind(on_press=lambda*args:self.process_guess(self.choice_three))
- self.choice_four = WhiteChoiceButton(text='')
- self.choice_four.bind(on_press=lambda*args:self.process_guess(self.choice_four))
- self.choice_five = BlackChoiceButton(text='')
- self.choice_five.bind(on_press=lambda*args:self.process_guess(self.choice_five))
- self.choice_six = WhiteChoiceButton(text='')
- self.choice_six.bind(on_press=lambda*args:self.process_guess(self.choice_six))
- self.choice_seven = BlackChoiceButton(text='')
- self.choice_seven.bind(on_press=lambda*args:self.process_guess(self.choice_seven))
- self.choice_eight = WhiteChoiceButton(text='')
- self.choice_eight.bind(on_press=lambda*args:self.process_guess(self.choice_eight))
- self.choice_nine = BlackChoiceButton(text='')
- self.choice_nine.bind(on_press=lambda*args:self.process_guess(self.choice_nine))
- choices.add_widget(self.choice_one)
- choices.add_widget(self.choice_two)
- choices.add_widget(self.choice_three)
- choices.add_widget(self.choice_four)
- choices.add_widget(self.choice_five)
- choices.add_widget(self.choice_six)
- choices.add_widget(self.choice_seven)
- choices.add_widget(self.choice_eight)
- choices.add_widget(self.choice_nine)
- self.add_widget(self.level_title)
- self.add_widget(choices)
- self.choice_list = [
- self.choice_one,
- self.choice_two,
- self.choice_three,
- self.choice_four,
- self.choice_five,
- self.choice_six,
- self.choice_seven,
- self.choice_eight,
- self.choice_nine,
- ]
- self.integer = str(random.randint(1,1000))
- self.random_button = random.choice(self.choice_list)
- self.random_button.text = self.integer
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- else:
- pass
- def process_guess(self,button_object):
- if self.tries <= 9 and self.tries != 0:
- self.tries = self.tries - 1
- self.level_title.text = self.level + ' | ' + str(self.tries)
- if button_object.text == self.integer:
- button_object.color = (1,0,0,1)
- button_object.background_color = (0,255,0,255)
- self.tries = 0
- self.level_title.text = 'COMPLETE!'
- else:
- pass
- else:
- self.level_title.text = 'GAME OVER!'
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- class LevelNine(GridLayout):
- def __init__(self):
- super(LevelNine, self).__init__()
- self.tries = 1
- self.level_num = 'IX'
- self.level = 'LVL ' + self.level_num
- self.cols = 1
- self.level_title = WhiteActionButton(self.level)
- choices = GridLayout(cols=3)
- self.choice_one = BlackChoiceButton(text='')
- self.choice_one.bind(on_press=lambda*args:self.process_guess(self.choice_one))
- self.choice_two = WhiteChoiceButton(text='')
- self.choice_two.bind(on_press=lambda*args:self.process_guess(self.choice_two))
- self.choice_three = BlackChoiceButton(text='')
- self.choice_three.bind(on_press=lambda*args:self.process_guess(self.choice_three))
- self.choice_four = WhiteChoiceButton(text='')
- self.choice_four.bind(on_press=lambda*args:self.process_guess(self.choice_four))
- self.choice_five = BlackChoiceButton(text='')
- self.choice_five.bind(on_press=lambda*args:self.process_guess(self.choice_five))
- self.choice_six = WhiteChoiceButton(text='')
- self.choice_six.bind(on_press=lambda*args:self.process_guess(self.choice_six))
- self.choice_seven = BlackChoiceButton(text='')
- self.choice_seven.bind(on_press=lambda*args:self.process_guess(self.choice_seven))
- self.choice_eight = WhiteChoiceButton(text='')
- self.choice_eight.bind(on_press=lambda*args:self.process_guess(self.choice_eight))
- self.choice_nine = BlackChoiceButton(text='')
- self.choice_nine.bind(on_press=lambda*args:self.process_guess(self.choice_nine))
- choices.add_widget(self.choice_one)
- choices.add_widget(self.choice_two)
- choices.add_widget(self.choice_three)
- choices.add_widget(self.choice_four)
- choices.add_widget(self.choice_five)
- choices.add_widget(self.choice_six)
- choices.add_widget(self.choice_seven)
- choices.add_widget(self.choice_eight)
- choices.add_widget(self.choice_nine)
- self.add_widget(self.level_title)
- self.add_widget(choices)
- self.choice_list = [
- self.choice_one,
- self.choice_two,
- self.choice_three,
- self.choice_four,
- self.choice_five,
- self.choice_six,
- self.choice_seven,
- self.choice_eight,
- self.choice_nine,
- ]
- self.integer = str(random.randint(1,1000))
- self.random_button = random.choice(self.choice_list)
- self.random_button.text = self.integer
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- else:
- pass
- def process_guess(self,button_object):
- if self.tries <= 9 and self.tries != 0:
- self.tries = self.tries - 1
- self.level_title.text = self.level + ' | ' + str(self.tries)
- if button_object.text == self.integer:
- button_object.color = (1,0,0,1)
- button_object.background_color = (0,255,0,255)
- self.tries = 0
- self.level_title.text = 'COMPLETE!'
- else:
- pass
- else:
- self.level_title.text = 'GAME OVER!'
- if list(self.random_button.background_color) == list((255,255,255,255)):
- self.random_button.text = self.integer
- self.random_button.color = (0,0,0,1)
- elif list(self.random_button.background_color) == list((0,0,0,255)):
- self.random_button.text = self.integer
- self.random_button.color = (1,1,1,1)
- class Tilr(App):
- def build(self):
- root = ScreenManager()
- title_screen = Screen(name='Title Screen')
- title_screen_instance = TitleScreen()
- title_screen.add_widget(title_screen_instance)
- howto_screen = Screen(name='How To')
- howto_screen_instance = HowTo()
- howto_screen.add_widget(howto_screen_instance)
- root.add_widget(title_screen)
- root.add_widget(howto_screen)
- howto_button = WhiteActionButton(text='HOW TO')
- howto_button.bind(on_press=lambda*args:root.setter(('current'), (root, 'How To')))
- title_screen_instance.add_widget(howto_button)
- back_to_title_button = WhiteActionButton(text='<')
- back_to_title_button.bind(on_press=lambda*args: root.setter(('current'), (root, 'Title Screen')))
- howto_screen_instance.add_widget(back_to_title_button)
- return root
- def main():
- Tilr().run()
- if __name__ == '__main__':
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement