コード例 #1
0
screen.onkey(key="Right", fun=snake.right)
screen.onkey(key="Left", fun=snake.left)

food = Food()

score = Score()

is_continue = True
while is_continue:
    time.sleep(0.09)
    screen.update()
    snake.move()

    if snake.head.distance(food) < 10:
        food.refresh()
        snake.extend()
        score.increase_score()
    if snake.head.xcor() > 490 or snake.head.xcor() < -490 or snake.head.ycor(
    ) > 390 or snake.head.ycor() < -390:
        is_continue = False
        score.game_over()

    for turtle in snake.turtles:
        if turtle == snake.head:
            pass
        elif snake.head.distance(turtle) < 7.5:
            is_continue = False
            score.game_over()

screen.exitonclick()
コード例 #2
0
screen.onkey(snake.down, "Down")
screen.onkey(snake.left, "Left")
screen.onkey(snake.right, "Right")

is_game_on = True

while is_game_on:
    screen.update()
    time.sleep(1)
    snake.move()

    # detect collision with food
    if snake.head.distance(foodie) < 15:
        foodie.refresh()
        snake.extend()
        score1.increase_score()
        score1.update_scoreboard()
    # detect collision with wall

    if snake.head.xcor() > 280 or snake.head.xcor() < -280 or snake.head.ycor(
    ) > 280 or snake.head.ycor() < -280:
        is_game_on = False
        score1.game_over()
    # detect collision with wall
    for segment in snake.segments[1:]:
        if snake.head.distance(segment) < 10:
            is_game_on = False
            score1.game_over()

screen.exitonclick()
コード例 #3
0
rally = 0
goal_right = 0
goal_left = 0
while game_is_on:
    goal = False

    screen.update()
    time.sleep(0.02)
    ball.move()

    # Goal detection
    if ball.xcor() > 580:
        ball.reset("right")
        bat1.reset()
        bat2.reset()
        score_left.increase_score()
        goal = True
        goal_left += 1
        rally = 0
        ball.decrease_speed()
        if goal_left > 9:
            score_right.game_over()
            game_is_on = False

    if ball.xcor() < -580:
        ball.reset("left")
        bat1.reset()
        bat2.reset()
        score_right.increase_score()
        goal = True
        goal_right += 1
コード例 #4
0
screen.onkey(snake.down, "Down")
screen.onkey(snake.left, "Left")
screen.onkey(snake.right, "Right")

game_is_on = True
while game_is_on:
    screen.update()
    time.sleep(0.1)

    snake.move()
    '''Detect collision with food'''

    if snake.head.distance(food) < 15:
        food.refresh()
        snake.extend()
        scoreboard.increase_score()
    '''Detect collision with wall'''

    if snake.head.xcor() > 280 or snake.head.xcor() < -280 or snake.head.ycor(
    ) > 280 or snake.head.ycor() < -280:
        scoreboard.reset()
        snake.reset()
    '''Detect collision with tail'''

    for segment in snake.segments[1:]:
        if snake.head.distance(segment) < 10:
            scoreboard.reset()
            snake.reset()
'''if head collides with any segment in the tail, trigger game_over'''

screen.exitonclick()