Python 如何设置记分板和“a”;游戏结束“;屏蔽我的游戏?
所以我正在为一个学校项目编写这个游戏,我遇到了一些问题。我也不太擅长编码,所以这些问题可能有明显的解决办法 问题是记分牌到处都是。“分数”这个词出现了,但是在吃了点之后,数字没有增加,数字0被粘在下面。我想把数字(即分数)和单词“分数”放在一起,但不知道怎么做。 这一切都发生在def start1()中 我知道这是很多,但我真的很失落,我会感谢你的帮助。谢谢Python 如何设置记分板和“a”;游戏结束“;屏蔽我的游戏?,python,turtle-graphics,python-turtle,Python,Turtle Graphics,Python Turtle,所以我正在为一个学校项目编写这个游戏,我遇到了一些问题。我也不太擅长编码,所以这些问题可能有明显的解决办法 问题是记分牌到处都是。“分数”这个词出现了,但是在吃了点之后,数字没有增加,数字0被粘在下面。我想把数字(即分数)和单词“分数”放在一起,但不知道怎么做。 这一切都发生在def start1()中 我知道这是很多,但我真的很失落,我会感谢你的帮助。谢谢 from turtle import Turtle, Screen from random import randrange import
from turtle import Turtle, Screen
from random import randrange
import turtle
pen= turtle.Turtle()
wn = turtle.Screen()
FRAMES_PER_SECOND = 10
WIDTH, HEIGHT = 500, 500
STAMP_SIZE = 20
DOT_SIZE = 10
def turnRight():
screen.onkey(None, 'Right')
turtle.right(45)
screen.onkey(turnRight, 'Right')
def turnLeft():
screen.onkey(None, 'Left')
turtle.left(45)
screen.onkey(turnLeft, 'Left')
def dotGood(food):
x = randrange(DOT_SIZE - WIDTH // 2, WIDTH // 2 - DOT_SIZE)
y = randrange(DOT_SIZE - HEIGHT // 2, HEIGHT // 2 - DOT_SIZE)
food.goto(x, y)
return ((x, y), food.stamp())
def eaten(food):
global dot
((x, y), stamp_id) = dot
if abs(turtle.xcor() - x) < DOT_SIZE and abs(turtle.ycor() - y) < DOT_SIZE:
food.clearstamp(stamp_id)
dot = dotGood(food)
return True
return False
def increase_speed():
if eaten(food) == True:
speed = speed + 2
def move():
global score
if not moving:
return
if eaten(food):
score += 1
turtle.shapesize((STAMP_SIZE + 5 * score) / STAMP_SIZE)
turtle.forward(1)
screen.ontimer(move, 10 // FRAMES_PER_SECOND)
xcor = turtle.xcor()
ycor = turtle.ycor()
print(xcor, ycor)
if ycor < -250:
print("out") #this is to help me see that the computer knows when the turtle goes out of boundaries
game_over()
if ycor > 250:
print("out")
game_over()
if xcor > 250:
print("out")
game_over()
if xcor < -250:
print("out")
game_over()
def game_over():
turtle.clear()
wn.bgcolor("green")
#turtle.write("GAME OVER", move=False, align="center", font=("Arial", 40, "bold"))
def start1():
global moving
moving = True
move()
turtle.write("SCORE: " , move=False, align="center", font=("Arial", 30, "bold"))
turtle.write(score, move=False, align="center", font=("Arial", 30, "bold"))
def stop():
global moving
moving = False
screen = Screen()
screen.setup(WIDTH, HEIGHT)
screen.bgcolor('black')
turtle = Turtle(shape='turtle')
turtle.speed("slowest")
turtle.color('green')
turtle.penup()
food = Turtle(shape='circle', visible=False)
food.speed('fastest')
food.turtlesize(DOT_SIZE / STAMP_SIZE)
food.color('red')
food.penup()
# globals
moving = False
dot = dotGood(food)
score = 0
screen.onkey(turnRight, 'Right')
screen.onkey(turnLeft, 'Left')
screen.onkey(start1, 'Up')
screen.onkey(stop, 'Down')
screen.listen()
screen.mainloop()
从海龟导入海龟,屏幕
从随机输入范围
进口海龟
pen=海龟。海龟()
wn=tutle.Screen()
每秒帧数=10
宽度,高度=500500
邮票大小=20
圆点尺寸=10
def turnRight():
screen.onkey(无,'右')
乌龟。右(45)
screen.onkey(向右旋转,'向右')
def左转()
screen.onkey(无,“左”)
乌龟。左(45)
屏幕。ON键(左转,“左”)
食物:
x=随机范围(点大小-宽度//2,宽度//2-点大小)
y=随机范围(点大小-高度//2,高度//2-点大小)
食物。后藤(x,y)
返回((x,y),food.stamp())
食物:
全局点
((x,y),邮票编号)=圆点
如果abs(turtle.xcor()-x)250:
打印(“输出”)
游戏结束
如果xcor>250:
打印(“输出”)
游戏结束
如果xcor<-250:
打印(“输出”)
游戏结束
def game_over():
乌龟
wn.bgcolor(“绿色”)
#乌龟。写(“游戏结束”,move=False,align=“center”,font=(“Arial”,40,“粗体”))
def start1():
全球移动
移动=真
移动()
编写(“分数:,移动=False,对齐=center”,字体=(“Arial”,30,“粗体”))
write(分数,move=False,align=“center”,font=(“Arial”,30,“粗体”))
def stop():
全球移动
移动=错误
screen=screen()
屏幕设置(宽度、高度)
screen.bgcolor('黑色')
海龟=海龟(shape='海龟')
乌龟。速度(“最慢”)
海龟。颜色(‘绿色’)
乌龟
食物=海龟(形状=圆形,可见=假)
食物。速度(“最快”)
食品.套头衫尺寸(圆点尺寸/邮票尺寸)
食物。颜色(“红色”)
食物
#全球的
移动=错误
dot=dotGood(食物)
分数=0
screen.onkey(向右旋转,'向右')
屏幕。ON键(左转,“左”)
screen.onkey(开始1,‘向上’)
screen.onkey(停止,“向下”)
screen.listen()
screen.mainloop()
尝试在start1()
开始处添加global score
,并将书写改为一行turtle.write(f“score:{score}”,move=False,align=“center”,font=(“Arial”,30,“bold”)