Last active
October 5, 2024 13:11
-
-
Save tabebqena/eed965cde086720bcba02a0e3429a79e to your computer and use it in GitHub Desktop.
Turtle race
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # -*- coding: utf-8 -*- | |
| from turtle import Turtle, Screen | |
| from deep_translator import GoogleTranslator | |
| import time | |
| import random | |
| window = Screen() | |
| window.title(" 🐢🐢🐢 لعبة سباق السلاحف ") | |
| y_cor = [80, 0, -80] | |
| window.setup(width=1000, height=500) | |
| colors = ["red", "blue", "green"] | |
| colour = ["أحمر", "أزرق", "أخضر"] | |
| turtles = [] | |
| writer = Turtle() | |
| writer.hideturtle() | |
| writer.color("black") | |
| import tkinter as tk | |
| from tkinter import font | |
| writer.write( | |
| " أهلا في لعبة سباق السلاحف، استمتع ", # 😉😉 Emogi is not diplayed in linux system | |
| font=(font.NORMAL, 14, "bold"), # <<< I use the normal font, So I'am sure it is already installed in the system | |
| align="center", | |
| ) | |
| time.sleep(3) | |
| window.clear() | |
| game_on = True | |
| def check(): | |
| global choice | |
| if choice not in colour: | |
| choice = window.textinput( | |
| "تخمين", "خمن السلحفاة الفائزة\n أحمر أم أخضر أم أزرق؟" | |
| ).lower() | |
| check() | |
| def start_race(): | |
| while game_on: | |
| for turtle in turtles: | |
| if turtle.xcor() >= 480: | |
| color = turtle.pencolor() | |
| translated_color = GoogleTranslator( | |
| source="auto", target="ar" | |
| ).translate(color) | |
| if choice == translated_color: | |
| winner_turtle() | |
| time.sleep(5) | |
| window.clear() | |
| replay() | |
| else: | |
| losing() | |
| time.sleep(3) | |
| replay() | |
| else: | |
| turtle.forward(random.randint(1, 5)) | |
| def winner_turtle(): | |
| window.bgcolor("#8cedd7") | |
| writer.write("!أنت تفوز", font=("Janna LT", 38, "bold"), align="center") | |
| def replay(): | |
| want = window.textinput("إعادة اللعب", "هل تحب إعادة اللعبة؟ نعم أم لا").lower() | |
| if want != "نعم": | |
| global game_on | |
| game_on = False | |
| window.clear() | |
| time.sleep(2) | |
| writer.write( | |
| "......اضغط أي مكان للخروج", font=("Janna LT", 38, "bold"), align="center" | |
| ) | |
| else: | |
| window.clear() | |
| turtles.clear() | |
| make_turtle() | |
| global choice | |
| choice = window.textinput( | |
| "تخمين", "خمن السلحفاة الفائزة\n أحمر أم أخضر أم أزرق؟" | |
| ).lower() | |
| start_race() | |
| def losing(): | |
| window.bgcolor("#d5d4a2") | |
| writer.write("!للأسف خسرت ", font=("Janna LT", 38, "bold"), align="center") | |
| def make_turtle(): | |
| for _ in range(3): | |
| new_turtle = Turtle(shape="turtle") | |
| new_turtle.color(colors[_]) | |
| new_turtle.penup() | |
| new_turtle.goto(-480, y_cor[_]) | |
| turtles.append(new_turtle) | |
| for _ in range(3): | |
| new_turtle = Turtle(shape="turtle") | |
| new_turtle.color(colors[_]) | |
| new_turtle.penup() | |
| new_turtle.goto(-480, y_cor[_]) | |
| turtles.append(new_turtle) | |
| choice = window.textinput( | |
| "تخمين", "خمن السلحفاة الفائزة\n أحمر أم أخضر أم أزرق؟" | |
| ).lower() | |
| check() | |
| start_race() | |
| window.exitonclick() |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| beautifulsoup4==4.12.3 | |
| certifi==2024.8.30 | |
| charset-normalizer==3.3.2 | |
| deep-translator==1.11.4 | |
| idna==3.10 | |
| requests==2.32.3 | |
| soupsieve==2.6 | |
| urllib3==2.2.3 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # copied from https://github.com/maet3608/minimal-setup-py | |
| from setuptools import setup, find_packages | |
| setup( | |
| name="TurtleRace", | |
| version="1.0.0", | |
| # url='https://github.com/mypackage.git', | |
| author="Mahmoud Osman", | |
| # author_email='author@gmail.com', | |
| description="Simplen turtle race", | |
| packages=find_packages(), | |
| install_requires=["deep-translator >= 1.11.4"], | |
| ) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment