Mercurial > skaapsteker
diff skaapsteker/sprites/base.py @ 249:30ae3c681507
Doors and stuff.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Thu, 07 Apr 2011 22:20:58 +0200 |
parents | 129afb4417cf |
children | 8d7edd77bfbf |
line wrap: on
line diff
--- a/skaapsteker/sprites/base.py Thu Apr 07 19:44:04 2011 +0200 +++ b/skaapsteker/sprites/base.py Thu Apr 07 22:20:58 2011 +0200 @@ -3,6 +3,7 @@ import re from pygame import Rect +import pygame.transform from ..physics import Sprite from ..constants import Layers @@ -263,6 +264,36 @@ return (0, 240, 0) + +class Doorway(GameSprite): + mobile = False + gravitates = False + collides_with = set([PC_LAYER]) + + image_file = 'torii.png' + + debug_color = (120, 240, 120) + + def __init__(self, pos, **opts): + GameSprite.__init__(self, pos, **opts) + self._layer = Layers.PLAYER + self.image = pygame.transform.scale(self.image, self.image.get_rect().center) + self.rect = self.image.get_rect(midbottom=self.rect.midbottom) + self.collide_rect = self.rect + + + def setup(self, leadsto): + self.leadsto = leadsto + print leadsto + + + def collided_player(self, player): + print "Player touched %s" % self + from .. import engine, levelscene + engine.ChangeScene.post((levelscene.LevelScene, self.leadsto)) + + + def find_sprite(descr, mod_name=None): """Create a sprite object from a dictionary describing it.""" descr = descr.copy()