عايز كود لعبة الثعبان فى بايثون كامل

عايز كود لعبة الثعبان فى بايثون كامل لحد وحدة التعامل مع الملفات، يعنى مش عايز اللى اتكتب فية من وحدة التعامل مع الملفات، ولو معاك الكود عموما ابعتة لانة ضاع من عندى وعايزة.

3 إعجابات

from snake import Snake
from turtle import Screen
from food import Food
from scoreboard import Scoreboard
import time
window=Screen()
window.bgcolor(‘black’)
window.screensize(1000,1000)
window.setup(1000,1000)
window.tracer(0)
sam=Snake()
food=Food()
score=Scoreboard()
game_on=True
while game_on:
sam.move()
window.update()
time.sleep(0.1)
window.listen()
window.onkey(sam.up,‘Up’)
window.onkey(sam.down,‘Down’)
window.onkey(sam.right,‘Right’)
window.onkey(sam.left,‘Left’)
if sam.head.distance(food)<15:
food.appear()
sam.extend()
score.increase_score()
if sam.head.xcor()>470 or sam.head.xcor()<-470 or sam.head.ycor()>470 or sam.head.ycor()<-470:
game_on=False
score.game_over()

    for segment in sam.turtles[:-1]:
        if sam.head.distance(segment)<10:
            game_on=False
            score.game_over()

window.exitonclick()

إعجابَين (2)

from turtle import Turtle
class Scoreboard(Turtle):
def init(self):
super().init()
self.score=0
self.color(‘white’)
self.penup()
self.hideturtle()
self.goto(0,350)
self.update_scoreboard()

def update_scoreboard(self):
    self.write(f"score: {self.score}", align='center',font=('arial',18,'normal'))

def increase_score(self):
    self.score+=1
    self.clear()
    self.update_scoreboard()

def game_over(self):
    self.screen.bgcolor('darkred')
    self.goto(0,0)
    self.write(f'Game over \n final score: {self.score}',align='center',font=('arial',20,'normal'))
إعجابَين (2)

from turtle import Turtle
class Snake:
def init(self):
self.pos=[(-40,0),(-20,0),(0,0)]
self.turtles=
self.create_snake()
self.head=self.turtles[-1]
def create_snake(self):
for i in range(len(self.pos)):
turtle=Turtle(‘square’)
turtle.color(‘white’)
turtle.penup()
turtle.goto(self.pos[i])
self.turtles.append(turtle)

def extend(self):
    new_segment=Turtle('square')
    new_segment.color('white')
    new_segment.penup()
    new_segment.goto(self.turtles[0].pos())
    self.turtles.insert(0,new_segment)

def move(self):
    for i in range(len(self.turtles)-1):
        self.turtles[i].goto(self.turtles[i+1].pos())
    self.head.forward(20)
        
        
def up(self):
    self.head.setheading(90)
def down(self):
    self.head.setheading(270)
def right(self):
    self.head.setheading(0)
def left(self):
    self.head.setheading(180)
إعجابَين (2)

from turtle import Turtle
import random
class Food(Turtle):
def init(self):
super().init()
self.shape(‘circle’)
self.color(‘red’)
self.penup()
self.shapesize(0.5,0.5)
self.appear()

def appear(self):
    random_x=random.randint(-480,480)
    random_y=random.randint(-480,480)
    self.goto(random_x,random_y)
إعجابَين (2)