显示’将军’效果

3.1 说明

  1. 如果遍历了当前所有的棋子发现能够攻击到对方的”将“,此时在对方的”将“的附近显示一张”将军“的图片
  2. 显示一小段时间后,取消”将军“图片的显示

经过上述2个步骤,就能够实现,一方将军另外一方时显示的”将军“效果

3.2 代码实现

self.show_attack = False
self.show_attack_count = 0
self.show_attack_time = 100
self.attack_img = pygame.image.load("images/pk.png")

image-20210821200532402

        # 通过计时,实现显示一会"将军"之后,就消失
        if self.show_attack:
            self.show_attack_count += 1
            if self.show_attack_count == self.show_attack_time:
                self.show_attack_count = 0
                self.show_attack = False
            # 显示"将军"效果
            if self.show_attack:
                self.screen.blit(self.attack_img, (230, 400))
            # 显示"将军"效果
            if self.show_attack:
                self.screen.blit(self.attack_img, (230, 100))
    def set_attack(self):
        """
        标记"将军"效果
        """
        self.show_attack = True

image-20210821200746179

# 如果攻击到对方,则标记显示"将军"效果
game.set_attack()

image-20210821200836656

3.3 运行效果

img

当红方的”兵“移动到将军的位置后,出现了上述的”将军“效果,此时走棋方变为黑方

Copyright © itprojects.cn 2021 all right reserved,著作权归itprojects.cn所有,由王铭东编写该文件修订时间: 2021-08-21 20:35:16