Python-Schildkröte: Wie erstelle ich ein Schildkrötenobjekt, das automatisch Kugeln abfeuern kann? [Duplikat]Python

Python-Programme
Anonymous
 Python-Schildkröte: Wie erstelle ich ein Schildkrötenobjekt, das automatisch Kugeln abfeuern kann? [Duplikat]

Post by Anonymous »

Wie erstelle ich ein Schildkrötenobjekt, das automatisch und kontrolliert Kugeln abfeuern kann? Bitte hilf mir. Ich habe diesen Code ausprobiert und das Spiel stürzt ab (Feindliche Flugzeuge haben ununterbrochen Kugeln abgefeuert, seit sie zum ersten Mal erschienen sind)
Das ist mein Code:

Code: Select all

bg.addshape("F 22 Raptor.gif")
enemy2 = turtle.Turtle()
enemy2.shape("F 22 Raptor.gif")
enemy2.setheading(-90)
enemy2.turtlesize(3)
enemy2.penup()
enemy2.goto(0,360)

PlayerBullets = [] # Menyimpan peluru
EnemyBullets = [] # Menyimpan peluru musuh

def EnemyBullet():
Ebullet = turtle.Turtle()
Ebullet.shape("triangle")
Ebullet.color("yellow")
Ebullet.shapesize(stretch_wid=0.3, stretch_len=0.1)
Ebullet.penup()
Ebullet.goto(enemy2.xcor(), enemy2.ycor())  # Posisi awal peluru sama dengan posisi Spaceshuttle
Ebullet.speed(0.01)
return Ebullet

def EFireBullet():
Ebullet = EnemyBullet()
EnemyBullets.append(Ebullet)
bulletsSound.play()

def MoveEnemyBullets():
global EnemyBullets
newbullets = []
for Ebullet in EnemyBullets:
y = Ebullet.ycor()
y += -2  # Mengubah posisi Y agar peluru turun
Ebullet.sety(y)

if y > 300:# Hapus peluru yang mencapai batas atas layar
Ebullet.hideturtle()
else:
newbullets.append(Ebullet)
EnemyBullets = newbullets

def CheckEnemyCollision():
global score, HighScore
for Ebullet in EnemyBullets:
if Ebullet.distance(SpaceShuttle) < 20:
Ebullet.hideturtle()  # menyembunyikan peluru jika mencapai batas atas layar
EnemyBullets.remove(Ebullet)
HitMarker.play()
if score > HighScore:
HighScore = score
with open("highscore.txt", "w") as file:
file.write(str(HighScore))

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post