Pygame Tilemap单击移动(mouse.pos和self.pos问题)

时间:2019-02-10 11:48:24

标签: python pygame move rect pos

https://www.youtube.com/watch?v=0ctJV0EPbuc&index=21&list=PLsk-HSGFjnaGQq7ybM8Lgkh5EMxUWPm2i%3D#t=3m54s 我试图在这个游戏中添加鼠标点击动作,实际上我添加了这个机制。但是我有一个问题。我认为问题是mouse.pos受屏幕限制(不能超过宽度或高度)。 map。end不能更改(在同一点),但是self.pos可以更改。因此,如果ı移动x(或y)方向的末尾,则self.pos.x超过self.mouse.pos.x且字符移动否定或停止。您可以在照片或视频上看到  很抱歉英语不好:)

 def update(self):
    self.vel = vec(0, 0)
    self.mouse = pg.mouse.get_pos()
    self.mouse1 = self.mouse[0]
    self.mouse2 = self.mouse[1]
    self.rel_x = self.mouse1 - self.pos.x
    self.rel_y = self.mouse2 - self.pos.y
    self.click = pg.mouse.get_pressed()
    self.angle = math.atan2(self.rel_y, self.rel_x)
    self.angle = (180 / math.pi) * -math.atan2(self.rel_y, self.rel_x)

    if self.click[0] == 1:

        self.vel = vec((self.rel_x),(self.rel_y))

photo1

photo2

photo3

video of example problem

0 个答案:

没有答案