Dieser Snake-Spielcode ist in Python-Turtle geschrieben. Ich möchte den Schlangenkopf verschieben, der mit dem Schildkrötenmodul gezeichnet wurde, aber leider funktioniert es nicht. Außerdem füge ich mithilfe der for-Schleife mehrere Futtermittel für die Schlange hinzu. Möglicherweise haben sie ein Kollisionsproblem, aber ich weiß nicht, wie ich das beheben kann...????
Module importieren
while True:
wn.update()
#check the border collision
if head.xcor() > 290 or head.xcor() < -290 or head.ycor() > 290 or head.ycor() < -290:
time.sleep(1)
head.goto(0, 0)
head.direction = 'stop'
for segments in segment:
segment.goto(1000, 1000)
segment.clear()
#reset the score
score = 0
#reset the delay
delay = 0.1
#reset level
level = 1
pen.clear()
pen.write("Score: {} High Score: {} Level: {} Lives: {}".format(score, high_score, level, lives),align = "center", font=("courier", 16, "normal"))
#check for head collision with the food
for count in range(maxfoods):
#maxfood.forward(3)
if head.distance(foods) < 20:
#MOve the head random
x = random.randint(-290, 290)
y = random.randint(-290, 290)
foods.goto(x, y)
#add body to snake
new_segment = turtle.Turtle()
new_segment.speed(0)
new_segment.shape('square')
new_segment.color('green')
new_segment.penup()
segment.append(new_segment)
#shorten the delay
delay -= 0.001
#increase the score
score +=10
if score > high_score:
high_score = score
pen.clear()
pen.write("Score: {} High Score: {} Level: {} Lives: {}".format(score, high_score, level, lives),align = "center", font=("courier", 16, "normal"))
#Move the end body in reverse order
for index in range(len(segment)-1, 0, -1):
x = segment[index-1].xcor()
y = segment[index-1].ycor()
segment[index].goto(x, y)
#move the body 0 t where the head is
if len(segment) > 0:
x = head.xcor()
y = head.ycor()
segment[0].goto(x, y)
move()
#check for head collision with body/segment
for segments in segment:
if segments.distance(head) < 20:
time.sleep(1)
head.goto(0, 0)
head.direction = 'stop'
#hide the segment
for segments in segment:
segments.goto(1000, 1000)
#clear the segment list
segment.clear()
#reset the score
score = 0
#reset the level
level = 1
#update the score display
pen.clear()
pen.write("Score: {} High Score: {} Level: {} Lives: {}".format(score, high_score, level, lives),align = "center", font=("courier", 16, "normal"))
#levels
if level == 1 and score == 50:
level += 1
delay *= 0.9
if level == 2 and score == 100:
level += 1
delay *= 0.9
if level == 3 and score == 250:
level += 1
delay *= 0.9
if level == 4 and score == 350:
level += 1
delay *= 0.9
if level == 5 and score == 450:
level += 5
delay *= 0.9
time.sleep(delay)
wn.maingameloop()
Dieser Snake-Spielcode ist in Python-Turtle geschrieben. [url=viewtopic.php?t=30561]Ich möchte[/url] den Schlangenkopf verschieben, der mit dem Schildkrötenmodul gezeichnet wurde, aber leider funktioniert es nicht. Außerdem füge ich mithilfe der for-Schleife mehrere Futtermittel für die Schlange hinzu. Möglicherweise haben sie ein Kollisionsproblem, aber ich weiß nicht, wie ich das beheben kann...???? Module importieren [code]import turtle from turtle import * import random import time
delay = 0.1 level = 1 lives = 3
#score score = 0 high_score = 0
#setting the screen wn = turtle.Screen() wn.title('Snake Game') wn.bgcolor('black') wn.bgpic('pic55.png') #wn.addshape('snake head6.png') wn.setup(width= 600, height= 600) wn.tracer(0) #turns off the screen update [/code] Schlangenkopf mit Schildkröte gezeichnet [code]#snake head head = turtle.Turtle() def draw_circle(color, radius, x, y): #head(turtle.Turtle()) head.penup() head.fillcolor(color) head.goto(x, y) head.begin_fill() head.circle(radius) head.end_fill() head.hideturtle() draw_circle("#FF4500", 30, 0, -40) #face OrangeRed #FF4500 green #2CD717 draw_circle("#ffffff", 10, -10, -5) #left eye 9659BD purple draw_circle("#ffffff", 10, 10, -5) #right eye B4BCE2 light blue
for count in range(maxfoods): #maxfood.forward(3) if head.distance(foods) < 20: #MOve the head random x = random.randint(-290, 290) y = random.randint(-290, 290) foods.goto(x, y)
#add body to snake new_segment = turtle.Turtle() new_segment.speed(0) new_segment.shape('square') new_segment.color('green') new_segment.penup() segment.append(new_segment)
#shorten the delay delay -= 0.001
#increase the score score +=10 if score > high_score: high_score = score pen.clear() pen.write("Score: {} High Score: {} Level: {} Lives: {}".format(score, high_score, level, lives),align = "center", font=("courier", 16, "normal"))
#Move the end body in reverse order for index in range(len(segment)-1, 0, -1): x = segment[index-1].xcor() y = segment[index-1].ycor() segment[index].goto(x, y)
#move the body 0 t where the head is if len(segment) > 0: x = head.xcor() y = head.ycor() segment[0].goto(x, y)
move() #check for head collision with body/segment for segments in segment: if segments.distance(head) < 20: time.sleep(1) head.goto(0, 0) head.direction = 'stop'
#hide the segment for segments in segment: segments.goto(1000, 1000)
Ich habe ein Sprite in einem 2D -Handyspiel in Einheit und versuche, diesen Sprite mit meinem Finger zu berühren und zu ziehen, damit sich das Sprite genau dort bewegen sollte, wo der Finger auf dem...
Ich verwende InputTransformation In JetPack komponieren Sie die Benutzereingabe in einem BasicTextField . Die Transformation funktioniert korrekt, aber der Cursor bleibt in derselben Position,...
Ich arbeite an einer GUI, bei der das Drücken einer bestimmten Taste ein Popup-Fenster erzeugt, in dem eine lange, scrollbare Liste von Text angezeigt werden soll. Ich verwende das Text-Widget im...
Wenn ich etwas in den Textbereich eingebe, funktioniert es einwandfrei. Aber wenn ich versuche, den Cursor zurück zu bewegen, um Text hinzuzufügen/zu bearbeiten, bewegt er sich nach der Eingabe eines...