Flying enemy sprites
This commit is contained in:
@@ -80,6 +80,7 @@ class Drakora():
|
||||
|
||||
self.speedUpLabelCD = 0
|
||||
self.nextEnemyMustBeFlying = False
|
||||
|
||||
self.enemyCD = self.getNextEnemyCD()
|
||||
|
||||
self.speedUpCheatLabelCD = 0
|
||||
|
||||
+31
-3
@@ -5,17 +5,33 @@ Flying enemy entity class
|
||||
|
||||
import pygame
|
||||
import random
|
||||
import math
|
||||
import os
|
||||
|
||||
from Enemy import Enemy
|
||||
|
||||
|
||||
class FlyingEnemy(Enemy):
|
||||
imgDir = os.path.join(os.path.dirname(__file__), 'data')
|
||||
senemyImage = pygame.image.load(os.path.join(imgDir, 'fenemy.png'))#.convert()
|
||||
images = (
|
||||
pygame.transform.scale(senemyImage.subsurface((0, 0, 16, 8)), (64, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((16, 0, 16, 8)), (64, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((32, 0, 16, 8)), (64, 32)),
|
||||
)
|
||||
for image in images:
|
||||
image.set_colorkey((255,0,255))
|
||||
|
||||
def __init__(self, mainGameClass):
|
||||
Enemy.__init__(self, mainGameClass)
|
||||
|
||||
self.subtype = random.randint(1, 7)
|
||||
self.updateCount = 0
|
||||
self.currentImage = 0
|
||||
|
||||
self.subtype = random.randint(1, 10)
|
||||
|
||||
self.image = FlyingEnemy.images[self.currentImage]
|
||||
|
||||
self.image = pygame.Surface((50, 25))
|
||||
self.image.fill((51, 51, 0))
|
||||
self.rect = self.image.get_rect()
|
||||
self.height -= self.rect.height/2 + 10 + 10*self.subtype
|
||||
|
||||
@@ -23,3 +39,15 @@ class FlyingEnemy(Enemy):
|
||||
self.height)
|
||||
|
||||
self.speed = self.thisGame.getGameSpeed()*2
|
||||
|
||||
|
||||
def update(self):
|
||||
super().update()
|
||||
|
||||
self.updateCount += 1
|
||||
if self.updateCount >= 22 - math.log2(self.thisGame.getGameSpeed()) * 2:
|
||||
self.currentImage += 1
|
||||
if self.currentImage >= len(FlyingEnemy.images):
|
||||
self.currentImage = 0
|
||||
self.image = FlyingEnemy.images[self.currentImage]
|
||||
self.updateCount = 0
|
||||
|
||||
@@ -94,7 +94,7 @@ class Player(pygame.sprite.Sprite):
|
||||
|
||||
|
||||
def update(self):
|
||||
if not self.speed: self.rect.y += 1
|
||||
self.updateCount += 1
|
||||
|
||||
if not self.isDownJump:
|
||||
self.hoverCount = 0
|
||||
@@ -134,8 +134,7 @@ class Player(pygame.sprite.Sprite):
|
||||
|
||||
self.rect.y += self.speed
|
||||
|
||||
self.updateCount += 1
|
||||
if self.updateCount == 22 - math.log2(self.gameSpeed) * 2:
|
||||
if self.updateCount >= 22 - math.log2(self.gameSpeed) * 2:
|
||||
if self.isOnFloor:
|
||||
if self.isCrouching:
|
||||
self.currentCrouchImage += 1
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 282 B |
Binary file not shown.
Reference in New Issue
Block a user