Test cacti sprites
This commit is contained in:
@@ -9,45 +9,46 @@ import os
|
||||
|
||||
|
||||
class Player(pygame.sprite.Sprite):
|
||||
imgDir = os.path.join(os.path.dirname(__file__), 'data')
|
||||
playerImage = pygame.image.load(os.path.join(imgDir, 'player.png'))#.convert()
|
||||
walkImages = (
|
||||
pygame.transform.scale(playerImage.subsurface((0, 0, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((16, 0, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((32, 0, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((16, 0, 16, 24)), (64, 98)),
|
||||
)
|
||||
|
||||
upImages = (
|
||||
pygame.transform.scale(playerImage.subsurface((0, 24, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((16, 24, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((32, 24, 16, 24)), (64, 98)),
|
||||
)
|
||||
|
||||
downImages = (
|
||||
pygame.transform.scale(playerImage.subsurface((0, 48, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((16, 48, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((32, 48, 16, 24)), (64, 98)),
|
||||
)
|
||||
|
||||
crouchImages = (
|
||||
pygame.transform.scale(playerImage.subsurface((0, 72, 16, 16)), (64, 64)),
|
||||
pygame.transform.scale(playerImage.subsurface((16, 72, 16, 16)), (64, 64)),
|
||||
)
|
||||
|
||||
|
||||
for array in (walkImages, upImages, downImages, crouchImages):
|
||||
for image in array:
|
||||
image.set_colorkey((255,0,255))
|
||||
|
||||
def __init__(self):
|
||||
self.imgDir = os.path.join(os.path.dirname(__file__), 'data')
|
||||
pygame.sprite.Sprite.__init__(self)
|
||||
|
||||
playerImage = pygame.image.load(os.path.join(self.imgDir, 'player.png')).convert()
|
||||
|
||||
self.walkImages = (
|
||||
pygame.transform.scale(playerImage.subsurface((0, 0, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((16, 0, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((32, 0, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((16, 0, 16, 24)), (64, 98)),
|
||||
)
|
||||
self.currentWalkImage = 0
|
||||
|
||||
self.upImages = (
|
||||
pygame.transform.scale(playerImage.subsurface((0, 24, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((16, 24, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((32, 24, 16, 24)), (64, 98)),
|
||||
)
|
||||
self.currentUpImage = 0
|
||||
|
||||
self.downImages = (
|
||||
pygame.transform.scale(playerImage.subsurface((0, 48, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((16, 48, 16, 24)), (64, 98)),
|
||||
pygame.transform.scale(playerImage.subsurface((32, 48, 16, 24)), (64, 98)),
|
||||
)
|
||||
self.currentDownImage = 0
|
||||
|
||||
self.crouchImages = (
|
||||
pygame.transform.scale(playerImage.subsurface((0, 72, 16, 16)), (64, 64)),
|
||||
pygame.transform.scale(playerImage.subsurface((16, 72, 16, 16)), (64, 64)),
|
||||
)
|
||||
self.currentCrouchImage = 0
|
||||
|
||||
for array in (self.walkImages, self.upImages, self.downImages, self.crouchImages):
|
||||
for image in array:
|
||||
image.set_colorkey((255,0,255))
|
||||
|
||||
pygame.sprite.Sprite.__init__(self)
|
||||
self.image = self.walkImages[self.currentWalkImage]
|
||||
self.image = Player.downImages[self.currentDownImage]
|
||||
|
||||
self.rect = self.image.get_rect()
|
||||
self.rect.center = (100, 400)
|
||||
@@ -138,22 +139,22 @@ class Player(pygame.sprite.Sprite):
|
||||
if self.isOnFloor:
|
||||
if self.isCrouching:
|
||||
self.currentCrouchImage += 1
|
||||
if self.currentCrouchImage >= len(self.crouchImages):
|
||||
if self.currentCrouchImage >= len(Player.crouchImages):
|
||||
self.currentCrouchImage = 0
|
||||
self.image = self.crouchImages[self.currentCrouchImage]
|
||||
self.image = Player.crouchImages[self.currentCrouchImage]
|
||||
else:
|
||||
self.currentWalkImage += 1
|
||||
if self.currentWalkImage >= len(self.walkImages):
|
||||
if self.currentWalkImage >= len(Player.walkImages):
|
||||
self.currentWalkImage = 0
|
||||
self.image = self.walkImages[self.currentWalkImage]
|
||||
self.image = Player.walkImages[self.currentWalkImage]
|
||||
elif self.isJumping:
|
||||
self.currentUpImage += 1
|
||||
if self.currentUpImage >= len(self.upImages):
|
||||
if self.currentUpImage >= len(Player.upImages):
|
||||
self.currentUpImage = 0
|
||||
self.image = self.upImages[self.currentUpImage]
|
||||
self.image = Player.upImages[self.currentUpImage]
|
||||
else:
|
||||
self.currentDownImage += 1
|
||||
if self.currentDownImage >= len(self.downImages):
|
||||
if self.currentDownImage >= len(Player.downImages):
|
||||
self.currentDownImage = 0
|
||||
self.image = self.downImages[self.currentDownImage]
|
||||
self.image = Player.downImages[self.currentDownImage]
|
||||
self.updateCount = 0
|
||||
|
||||
+70
-8
@@ -5,23 +5,85 @@ Standing enemy entity class
|
||||
|
||||
import pygame
|
||||
import random
|
||||
import os
|
||||
|
||||
from Enemy import Enemy
|
||||
|
||||
|
||||
class StandingEnemy(Enemy):
|
||||
imgDir = os.path.join(os.path.dirname(__file__), 'data')
|
||||
senemyImage = pygame.image.load(os.path.join(imgDir, 'senemy.png'))#.convert()
|
||||
images = (
|
||||
(
|
||||
pygame.transform.scale(senemyImage.subsurface((0, 0, 8, 24)), (32, 98)),
|
||||
pygame.transform.scale(senemyImage.subsurface((8, 0, 8, 24)), (32, 98)),
|
||||
pygame.transform.scale(senemyImage.subsurface((16, 0, 8, 24)), (32, 98)),
|
||||
pygame.transform.scale(senemyImage.subsurface((24, 0, 8, 24)), (32, 98)),
|
||||
pygame.transform.scale(senemyImage.subsurface((32, 0, 8, 24)), (32, 98)),
|
||||
pygame.transform.scale(senemyImage.subsurface((40, 0, 8, 24)), (32, 98)),
|
||||
),
|
||||
(
|
||||
pygame.transform.scale(senemyImage.subsurface((0, 24, 8, 16)), (32, 64)),
|
||||
pygame.transform.scale(senemyImage.subsurface((8, 24, 8, 16)), (32, 64)),
|
||||
pygame.transform.scale(senemyImage.subsurface((16, 24, 8, 16)), (32, 64)),
|
||||
pygame.transform.scale(senemyImage.subsurface((24, 24, 8, 16)), (32, 64)),
|
||||
pygame.transform.scale(senemyImage.subsurface((32, 24, 8, 16)), (32, 64)),
|
||||
pygame.transform.scale(senemyImage.subsurface((40, 24, 8, 16)), (32, 64)),
|
||||
),
|
||||
(
|
||||
pygame.transform.scale(senemyImage.subsurface((0, 40, 16, 16)), (64, 64)),
|
||||
pygame.transform.scale(senemyImage.subsurface((16, 40, 16, 16)), (64, 64)),
|
||||
pygame.transform.scale(senemyImage.subsurface((32, 40, 16, 16)), (64, 64)),
|
||||
pygame.transform.scale(senemyImage.subsurface((0, 56, 16, 16)), (64, 64)),
|
||||
pygame.transform.scale(senemyImage.subsurface((16, 56, 16, 16)), (64, 64)),
|
||||
pygame.transform.scale(senemyImage.subsurface((32, 56, 16, 16)), (64, 64)),
|
||||
),
|
||||
(
|
||||
pygame.transform.scale(senemyImage.subsurface((0, 72, 8, 8)), (32, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((8, 72, 8, 8)), (32, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((16, 72, 8, 8)), (32, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((24, 72, 8, 8)), (32, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((32, 72, 8, 8)), (32, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((40, 72, 8, 8)), (32, 32)),
|
||||
),
|
||||
(
|
||||
pygame.transform.scale(senemyImage.subsurface((0, 80, 16, 8)), (64, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((16, 80, 16, 8)), (64, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((32, 80, 16, 8)), (64, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((0, 88, 16, 8)), (64, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((16, 88, 16, 8)), (64, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((32, 88, 16, 8)), (64, 32)),
|
||||
),
|
||||
(
|
||||
pygame.transform.scale(senemyImage.subsurface((0, 96, 24, 8)), (98, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((24, 96, 24, 8)), (98, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((0, 104, 24, 8)), (98, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((24, 104, 24, 8)), (98, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((0, 112, 24, 8)), (98, 32)),
|
||||
pygame.transform.scale(senemyImage.subsurface((24, 112, 24, 8)), (98, 32)),
|
||||
),
|
||||
)
|
||||
|
||||
def __init__(self, mainGameClass):
|
||||
Enemy.__init__(self, mainGameClass)
|
||||
|
||||
self.subtype = random.randint(1, 5)
|
||||
for array in self.images:
|
||||
for image in array:
|
||||
image.set_colorkey((255,0,255))
|
||||
|
||||
if self.subtype == 1: self.image = pygame.Surface((25, 75))
|
||||
elif self.subtype == 2: self.image = pygame.Surface((25, 25))
|
||||
elif self.subtype == 3: self.image = pygame.Surface((75, 25))
|
||||
elif self.subtype == 4: self.image = pygame.Surface((50, 25))
|
||||
elif self.subtype == 5: self.image = pygame.Surface((50, 50))
|
||||
else: self.image = pygame.Surface((25, 50))
|
||||
|
||||
self.image.fill((0, 153, 0))
|
||||
self.subtype = random.randint(1, len(StandingEnemy.images))
|
||||
|
||||
self.image = random.choice(StandingEnemy.images[self.subtype-1])
|
||||
|
||||
# if self.subtype == 1: self.image = pygame.Surface((32, 96))
|
||||
# elif self.subtype == 2: self.image = pygame.Surface((32, 64))
|
||||
# elif self.subtype == 3: self.image = pygame.Surface((64, 64))
|
||||
# elif self.subtype == 4: self.image = pygame.Surface((32, 32))
|
||||
# elif self.subtype == 5: self.image = pygame.Surface((64, 32))
|
||||
# else: self.image = pygame.Surface((96, 32))
|
||||
|
||||
# self.image.fill((0, 153, 0))
|
||||
self.rect = self.image.get_rect()
|
||||
self.height -= self.rect.height/2
|
||||
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 2.0 KiB |
Binary file not shown.
Reference in New Issue
Block a user