привет, используя этот код, чтобы заставить игрока справиться с положением мыши (влево/вправо), но когда мышь останавливается в определенном месте, игрок идет за ним, а затем начинает вибрировать слева направо. . Я думаю, проблема в себе .vel_x функции обновления.как я могу заставить моего игрока остановить вибрацию слева направо?
class Player(pygame.sprite.Sprite):
#init Player Sprite
#sprite player
def __init__(self):
pygame.sprite.Sprite.__init__(self)
self.image=pygame.image.load(os.path.join(image_folder,"Player.png"))
self.rect = self.image.get_rect()
self.vel_x = 0
self.speed = 30
self.friction = 3.5
self.rect.center = (420,360)
self.delta = clock.tick(FPS)/1000.00
def update(self):
self.getX = pygame.mouse.get_pos()[0]-100 # get the X position of mouse
self.rect.x +=self.vel_x
##i think the problem is in here
self.vel_x = self.vel_x*(1-min(self.delta*self.friction,1))
#print "the GetX is ", self.getX
#print "the Rect.x is ", self.rect.x
if self.getX > self.rect.x:
self.vel_x+= self.speed*self.delta
else:
self.vel_x-= self.speed*self.delta
ummm, u получил его, благодаря его работе :) – karim