コード例 #1
0
ファイル: Plant.py プロジェクト: Voolshara/Lyceum2
    def __init__(self, x, y):
        sprite.Sprite.__init__(self)

        # ____________________-DEMONS FEATURES-___________________________

        self.health_points = 170
        self.max_hp = self.health_points
        self.damage = 100

        # ____________________-DEMONS FEATURES-___________________________

        self.xvel = 0  # скорость перемещения. 0 - стоять на месте
        self.startX = x  # Начальная позиция Х, пригодится когда будем переигрывать уровень
        self.startY = y
        self.POSITION_RIGHT = True
        self.yvel = 0  # скорость вертикального перемещения
        self.onGround = False  # На земле ли я?

        self.image = Surface((WIDTH + 10, HEIGHT + 40))
        self.image.fill(Color(COLOR))
        self.rect = Rect(x, y, WIDTH, HEIGHT + 25)  # прямоугольный объект
        self.image.set_colorkey(Color(COLOR))  # делаем фон прозрачным
        #        Анимация движения вправо

        self.image_hp = Surface((40, 10))
        self.image_hp.fill(Color(COLOR))
        self.image_hp.set_colorkey(Color(COLOR))  # делаем фон прозрачным

        boltAnim = []
        for anim in IDLE:
            boltAnim.append((anim, ANIMATION_DELAY))
        self.boltIdle = pyganim.PygAnimation(boltAnim)
        self.boltIdle.play()

        boltAnim = []
        for anim in HIT:
            boltAnim.append((anim, ANIMATION_DELAY))
        self.boltHit = pyganim.PygAnimation(boltAnim)
        self.boltHit.play()

        boltAnim = []
        for anim in ATTACK_LEFT:
            boltAnim.append((anim, ANIMATION_DELAY))
        self.boltAttackLeft = pyganim.PygAnimation(boltAnim, loop=False)
        self.boltAttackLeft.play()

        boltAnim = []
        for anim in ATTACK_RIGHT:
            boltAnim.append((anim, ANIMATION_DELAY))
        self.boltAttackRight = pyganim.PygAnimation(boltAnim, loop=False)
        self.boltAttackRight.play()

        self.total_damage = 0
        self.attack_time = self.boltAttackLeft.startTimes[
            -1]  # Брать из метода _startTimes текущей анимаци
        self.attack_flag = False
        self._isdo = True
コード例 #2
0
ファイル: NPC_Worm.py プロジェクト: Voolshara/Lyceum2
    def __init__(self, x, y):
        sprite.Sprite.__init__(self)
        self.xvel = 0  # скорость перемещения. 0 - стоять на месте
        self.startX = x  # Начальная позиция Х, пригодится когда будем переигрывать уровень
        self.startY = y
        self.POSITION_RIGHT = False
        self.yvel = 0  # скорость вертикального перемещения
        self.onGround = False  # На земле ли я?
        self.image = Surface((WIDTH + 40, HEIGHT + 15))
        self.image.fill(Color(COLOR))
        self.rect = Rect(x, y, WIDTH, HEIGHT + 15)  # прямоугольный объект
        self.image.set_colorkey(Color(COLOR))  # делаем фон прозрачным
        #        Анимация движения вправо

        boltAnim = []
        for anim in RUN:
            boltAnim.append((anim, ANIMATION_DELAY))
        self.boltRun = pyganim.PygAnimation(boltAnim)
        self.boltRun.play()

        boltAnim = []
        for anim in IDLE_RIGHT:
            boltAnim.append((anim, ANIMATION_DELAY))
        self.boltIdleRight = pyganim.PygAnimation(boltAnim)
        self.boltIdleRight.play()

        boltAnim = []
        for anim in IDLE_LEFT:
            boltAnim.append((anim, ANIMATION_DELAY))
        self.boltIdleLeft = pyganim.PygAnimation(boltAnim)
        self.boltIdleLeft.play()

        boltAnim = []
        for anim in HIT:
            boltAnim.append((anim, ANIMATION_DELAY))
        self.boltHit = pyganim.PygAnimation(boltAnim)
        self.boltHit.play()

        boltAnim = []
        for anim in ATTACK:
            boltAnim.append((anim, ANIMATION_DELAY))
        self.boltAttack = pyganim.PygAnimation(boltAnim)
        self.boltAttack.play()
コード例 #3
0
ファイル: hero.py プロジェクト: Voolshara/Lyceum2
    def __init__(self, x, y, hero_hp=250):
        # ____________________________-HERO FEATURES-______________________________

        self.MOVE_SPEED = 4
        self.JUMP_POWER = 9
        self.GRAVITY = 0.45  # Сила, которая будет тянуть нас вниз
        self.now_health_points = hero_hp
        self.max_health_points = 250

        # ____________________________-HERO FEATURES-______________________________

        self.WIDTH = 28
        self.HEIGHT = 48

        self.ANIMATION_DELAY = 0.1  # скорость смены кадров
        self.ANIMATION_DELAY_ATTACK = 0.09  # скорость смены кадров
        self.ANIMATION_DELAY_JUMP = 0.15  # скорость смены кадров прыжков
        self.ANIMATION_DELAY_CROUCH = 0.1
        self.ANIMATION_DELAY_DIE = 0.35

        # _________________________________-FLAG-_________________________________

        self.POSITION_RIGHT = True
        self.onGround = False  # На земле ли я?

        self.flag_attack = False
        self.attack_damage = 100
        self.atack_now = 0.00
        self.is_damage = True

        self.on_attack = False

        self.flag_ability = True

        # _________________________________-FLAG-_________________________________

        sprite.Sprite.__init__(self)
        self.x = x
        self.y = y
        self.xvel = 0  # скорость перемещения. 0 - стоять на месте
        self.startX = x  # Начальная позиция Х, пригодится когда будем переигрывать уровень
        self.startY = y
        self.yvel = 0  # скорость вертикального перемещения

        self.image1 = Surface((self.WIDTH + 50, self.HEIGHT))
        self.image1.fill(Color(COLOR))
        self.image = Surface((self.WIDTH + 50, self.HEIGHT))
        self.image.fill(Color(COLOR))
        self.return_update = 0
        self.rect = Rect(x, y - 10, self.WIDTH,
                         self.HEIGHT)  # прямоугольный объект
        self.image1.set_colorkey(Color(COLOR))  # делаем фон прозрачным
        self.image.set_colorkey(Color(COLOR))  # делаем фон прозрачным

        #        Анимация движения вправо
        boltAnim = []
        for anim in RUN_RIGHT:
            boltAnim.append((anim, self.ANIMATION_DELAY))
        self.boltRunRight = pyganim.PygAnimation(boltAnim)
        self.boltRunRight.play()

        boltAnim = []
        for anim in RUN_LEFT:
            boltAnim.append((anim, self.ANIMATION_DELAY))
        self.boltRunLeft = pyganim.PygAnimation(boltAnim)
        self.boltRunLeft.play()

        boltAnim = []
        for anim in IDLE_RIGHT:
            boltAnim.append((anim, self.ANIMATION_DELAY))
        self.boltIdleRight = pyganim.PygAnimation(boltAnim)
        self.boltIdleRight.play()

        boltAnim = []
        for anim in IDLE_LEFT:
            boltAnim.append((anim, self.ANIMATION_DELAY))
        self.boltIdleLeft = pyganim.PygAnimation(boltAnim)
        self.boltIdleLeft.play()

        boltAnim = []
        for anim in JUMP_RIGHT:
            boltAnim.append((anim, self.ANIMATION_DELAY_JUMP))
        self.boltJumpRight = pyganim.PygAnimation(boltAnim)
        self.boltJumpRight.play()

        boltAnim = []
        for anim in JUMP_LEFT:
            boltAnim.append((anim, self.ANIMATION_DELAY_JUMP))
        self.boltJumpLeft = pyganim.PygAnimation(boltAnim)
        self.boltJumpLeft.play()

        boltAnim = []
        for anim in ATTACK_HEW_RIGHT:
            boltAnim.append((anim, self.ANIMATION_DELAY_ATTACK))
        self.boltAttackHewRight = pyganim.PygAnimation(boltAnim, loop=False)

        boltAnim = []
        for anim in ATTACK_HEW_LEFT:
            boltAnim.append((anim, self.ANIMATION_DELAY_ATTACK))
        self.boltAttackHewLeft = pyganim.PygAnimation(boltAnim, loop=False)

        boltAnim = []
        for anim in ATTACK_PRICK_RIGHT:
            boltAnim.append((anim, self.ANIMATION_DELAY_ATTACK))
        self.boltAttackPrickRight = pyganim.PygAnimation(boltAnim, loop=False)

        boltAnim = []
        for anim in ATTACK_PRICK_LEFT:
            boltAnim.append((anim, self.ANIMATION_DELAY_ATTACK))
        self.boltAttackPrickLeft = pyganim.PygAnimation(boltAnim, loop=False)

        boltAnim = []
        for anim in ATTACK_SLASH_RIGHT:
            boltAnim.append((anim, self.ANIMATION_DELAY_ATTACK))
        self.boltAttaclSlashRight = pyganim.PygAnimation(boltAnim, loop=False)

        boltAnim = []
        for anim in ATTACK_SLASH_LEFT:
            boltAnim.append((anim, self.ANIMATION_DELAY_ATTACK))
        self.boltAttackSlashLeft = pyganim.PygAnimation(boltAnim, loop=False)

        boltAnim = []
        for anim in DEATH_RIGHT:
            boltAnim.append((anim, self.ANIMATION_DELAY_DIE))
        self.boltDieRight = pyganim.PygAnimation(boltAnim, loop=False)

        boltAnim = []
        for anim in DEATH_LEFT:
            boltAnim.append((anim, self.ANIMATION_DELAY_DIE))
        self.boltDieLeft = pyganim.PygAnimation(boltAnim, loop=False)