Python 如何让敌人改变方向

Python 如何让敌人改变方向,python,pygame,2d,Python,Pygame,2d,我正试图用pygame编写一个小游戏,目标是捕捉尽可能多的粪便,避免感染粪便,但我无法让敌人在撞到墙时改变方向 导入pygame 从pygame.locals导入* pygame.init() pygame.display.set_标题('POOPISTINKI') 屏幕宽度=800 屏幕高度=600 游戏运行=正确 pl_x=int(屏幕宽度/10) pl_y=int(屏幕高度/2) pl_宽度=80 pl_高度=40 pl_等级=30 en_宽度=80 en_高度=40 en_x=屏幕宽度-

我正试图用pygame编写一个小游戏,目标是捕捉尽可能多的粪便,避免感染粪便,但我无法让敌人在撞到墙时改变方向

导入pygame
从pygame.locals导入*
pygame.init()
pygame.display.set_标题('POOPISTINKI')
屏幕宽度=800
屏幕高度=600
游戏运行=正确
pl_x=int(屏幕宽度/10)
pl_y=int(屏幕高度/2)
pl_宽度=80
pl_高度=40
pl_等级=30
en_宽度=80
en_高度=40
en_x=屏幕宽度-屏幕宽度/10-屏幕宽度
en_y=int(屏幕高度/2)
en_yvel=10
screen=pygame.display.set_模式((屏幕宽度、屏幕高度))
运行游戏时:
pygame.时间延迟(100)
对于pygame.event.get()中的事件:
如果event.type==pygame.QUIT:
游戏运行=错误
如果event.type==MOUSEBUTTONDOWN:
如果event.button==4且pl_y>pl_vel:
pl_y-=pl_水平
elif event.button==5且pl_y<屏幕高度-pl_宽度:
pl_y+=pl_水平
如果en_y==0:
en_y+=en_yvel
如果en_y==屏幕高度-en_高度:
en_y-=en_yvel
屏幕填充((0,0,0))
pygame.draw.rect(屏幕,(105255125),(像素x,像素y,像素宽度,像素高度))
pygame.display.update()
pygame.draw.rect(屏幕,(255、125、115),(en_x、en_y、en_宽度、en_高度))
pygame.display.update()
pygame.quit()

一旦敌人
en\u y
击中窗口的顶部或底部,你必须反转
en\u yvel

此外,我建议分别使用以控制每秒的触发器

en_yvel=10
screen=pygame.display.set_模式((屏幕宽度、屏幕高度))
clock=pygame.time.clock()
运行游戏时:
时钟滴答(10)
对于pygame.event.get()中的事件:
# [...]
en_y+=en_yvel
如果en_y=屏幕高度-en_高度:
en_yvel=-en_yvel
# [...]

您只需调用一次
pygame.display.update()
。它将“刷新”窗口的所有更改。哦,对不起,我在度假时在笔记本电脑上编程了一点,互联网速度很慢,所以我一定是无意中点击了错误的按钮,但答案很好,效果很好