实现人物移动时静态与动态的切换展示,并与鼠标触碰,鼠标闪动
- 人物的静态动态移动,
- 鼠标碰撞人物则闪烁鼠标指针
- 增加了主角 和 指针 以及碰撞三个类
- 代码没啥难点 就是开关多
# 鼠标开关 ===================
黄指针闪动 = False
# 主角人物开关 ============================================
动态图片开关 = False
目前动态位置 = False
主角移动开关 = False
静态图片开关 = True
目前静态位置 = "默认静态图片"
最大移动范围 = 60000 # 人物的移动边界
class 精灵类(pygame.sprite.Sprite):
def __init__(self):
pygame.sprite.Sprite.__init__(self)
class 指针(精灵类):
def __init__(self,left,top):
self.image = pygame.image.load('img/指针手.png').convert_alpha()
self.黄指针手 = [pygame.image.load("img/黄指针手{0}.png".format(i)).convert_alpha() for i in range(1, 4)]
self.index = 0
def 展示指针(self):
screen.blit(self.image, (鼠标_x,鼠标_y) )
def 黄闪指针闪动(self):
screen.blit(self.黄指针手[self.index % 3], (鼠标_x, 鼠标_y))
self.index += 1
class 主角人物():
def __init__(self, left, top):
self.images = {
"向下走": [pygame.image.load("img/无名小子 ({0}).png".format(i)).convert_alpha() for i in range(1, 4)],
"向左走": [pygame.image.load("img/无名小子 ({0}).png".format(i)).convert_alpha() for i in range(5, 8)],
"向右走": [pygame.image.load("img/无名小子 ({0}).png".format(i)).convert_alpha() for i in range(11, 14)],
"向上走": [pygame.image.load("img/无名小子 ({0}).png".format(i)).convert_alpha() for i in range(8, 11)]}
self.index = 0
self.步数 = 66
self.direction = "向上走"
self.image = self.images[self.direction]
self.rect = self.image[0].get_rect()
self.imag = {
"默认静态图片": pygame.image.load("img/无名小子 (2).png"),
"向下走": pygame.image.load("img/无名小子 (2).png"),
"向左走": pygame.image.load("img/无名小子 (6).png"),
"向右走": pygame.image.load("img/无名小子 (12).png"),
"向上走": pygame.image.load("img/无名小子 (9).png")}
self.dire = "默认静态图片"
self.im = self.imag[self.dire]
self.img = self.images[self.direction]
self.速度 = 20
self.主角是否被碰撞 = True
def 主角