我试图创建一个使用pygame的Python中的游戏。在我的游戏中你是一个男人和你身边有很多僵尸谁,你一定要拍,但我不明白如何让每一次我的性格拍在鼠标的方向子弹在设定的速度。我的游戏是2D的,并具有画面上的精灵的俯视图。
该代码将是这个样子:
class bullet:
def __init__(self, x, y, speed):
self.x = x
self.y = y
self.speed = speed
def move(self):
This is where you guys come in
def draw(self):
pygame.draw.circle(screen,(0,0,0),(self.x,self,y,5)
预先感谢您非常多。
你需要知道angle
或者如果不是你需要一个明确的x_speed
和y_speed
...
如果你有角度你可以计算出它
x_speed = math.cos(angle)*speed
y_speed = math.sin(angle)*speed
然后在每一步
new_x = old_x + x_speed
new_y = old_y + y_speed
你可以得到math.atan2角度
angle = math.atan2(character.x-mouse.x,character.y-mouse.y)