Pygame Tilemap щелчок перемещения (проблема mouse.pos и self.pos) - PullRequest
0 голосов
/ 10 февраля 2019

https://www.youtube.com/watch?v=0ctJV0EPbuc&index=21&list=PLsk-HSGFjnaGQq7ybM8Lgkh5EMxUWPm2i%3D#t=3m54s Я пытаюсь добавить движение мыши щелчком мыши в этой игре, и фактически я добавил эту механику. Но у меня есть проблема. Я думаю, что проблема в мышах. Позволяет ограничить экран (наклон по ширинеили высота). Значит, если вы идете в конец карты, mouse.pos не может измениться (в той же точке), но изменяется 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

видео примера проблемы

...