papush!
e8be8b52ab
implémentation du patron Observateur dans la classe Observer qui permet à un objet d’être notifié quand une propriété d’un autre objet est modifiée. CollideRect observe maintenant les propriétés x et y de l’entité à laquelle il appartient et met à jour son rect accordément.
21 lines
482 B
Python
21 lines
482 B
Python
from .observer import Observer
|
|
|
|
class Entity(Observer):
|
|
def __init__(self):
|
|
super().__init__()
|
|
self._components = []
|
|
self.x = 0
|
|
self.y = 0
|
|
self.script = None
|
|
|
|
def add(self, component):
|
|
self._components.append(component)
|
|
|
|
def register(self):
|
|
for component in self._components:
|
|
component.register()
|
|
|
|
def unregister(self):
|
|
for component in self._components:
|
|
component.unregister()
|