assets update + hoverable component #23

Merged
tipragot merged 9 commits from menu into main 2023-10-27 22:29:36 +00:00
Showing only changes of commit e72d90606f - Show all commits

View file

@ -26,8 +26,7 @@ class HoverPlugin(Plugin):
# on execute les update de toutes les entities qui ont le composant Hover et qui sont hoverable
if Hover in entity and Hoverable in entity:
entity[Hoverable]._update(world, entity)
entity[Hoverable].callback(world, entity)
entity[Hoverable].update_callback(world, entity)
CoCo_Sol marked this conversation as resolved Outdated

Pourquoi ne pas le faire dans la condition en dessous ?

Pourquoi ne pas le faire dans la condition en dessous ?

on peux mais le component hover ne sert plus a rien.
(a part si on l'utilise dans le code du jeu mais je vois pas trop ou)

on peux mais le component hover ne sert plus a rien. (a part si on l'utilise dans le code du jeu mais je vois pas trop ou)
# Récupération de la position et de la taille de l'entité
entity_pos: Vec2 = entity[Position]
@ -45,8 +44,10 @@ class HoverPlugin(Plugin):
# si notre entitée est aussi hoverable, on execute son initialisation
if Hoverable in entity:
entity[Hoverable].callback(world, entity)
entity[Hoverable].init_callback(world, entity)
else:
if Hover in entity:
entity[Hoverable].end_callback(world, entity)
entity.remove(Hover)
def apply(self, game: Game) -> None:
@ -69,9 +70,13 @@ class Hoverable:
Un composant qui marque une entitée comme pouvant etre survolée.
"""
def __init__(self, callback: Callable[[World, Entity], None], update_callback: Callable[[World, Entity], None]) -> None:
self.update_callback = update_callback
self.callback = callback
def __init__(self,
init_callback: Callable[[World, Entity], None] = lambda _a,_b : (),
update_callback: Callable[[World, Entity], None] = lambda _a,_b : (),
end_callback: Callable[[World, Entity], None] = lambda _a,_b : (),
) -> None:
CoCo_Sol marked this conversation as resolved Outdated

Je ne comprend pas l'utilité de cette fonction.

Je ne comprend pas l'utilité de cette fonction.
self.update_callback = update_callback
self.init_callback = init_callback
self.end_callback = end_callback
CoCo_Sol marked this conversation as resolved Outdated

Plutot enter_callback et exit_callback non ?

Plutot enter_callback et exit_callback non ?
def _update(self, world: World, entity: Entity) -> None:
self.callback = self.update_callback