lactase: rajout d'un nouvel item, la lactase
Cet item supprime les vents de la princesse en lui permettant d'immédiatement digérer le lactose. Ce qui a pour effet de couper son dash en cours et de lui vider les intestincs. J'ai rajouté plein d'éléments dans le niveau numéro deux pour tester ça. Addition supplémentaires: - le fromage peut être de différentes couleurs avec pour conséquences différentes intensités. Ce qui a pour effet de recharger plus ou moins vite la jauge de pét. - J'ai rajouté une passerelle à sens unique qui permet de créer un petit point de non retour, j'aimerai bien aussi l'avoir à la verticale, mais pour le moment, je n'y arrive pas.
This commit is contained in:
37
princesse.gd
37
princesse.gd
@@ -50,8 +50,10 @@ var DASH_SPEED = WALKING_SPEED * 2
|
||||
|
||||
@export var MAX_FARTS : int = 3
|
||||
|
||||
signal cheese_collected() # utilisé pour remplir le HUD qui apelera
|
||||
signal cheese_collected(speed:float) # utilisé pour remplir le HUD qui apelera
|
||||
# ensuite la fonction reload_fart quand il aura fini
|
||||
signal lactase_collected() # utilisé pour vider le HUD qui apelera
|
||||
# ensuite la fonction kill_farts quand il aura fini
|
||||
signal dash_fart() # utilisé pour vider le HUD
|
||||
signal princesse_is_dead() # signal au jeu de recharger la scene
|
||||
|
||||
@@ -389,6 +391,8 @@ func read_input() -> void:
|
||||
kick_direction = 1
|
||||
else:
|
||||
kick_direction = -1
|
||||
if not coyote_grab[-1]:
|
||||
kick_direction *= -1
|
||||
# Dès qu'il peut et veut sauter, déclencher le saut
|
||||
if need_jump and (is_on_floor() or get_coyote(coyote_ground)):
|
||||
need_jump = false
|
||||
@@ -425,16 +429,16 @@ func read_input() -> void:
|
||||
|
||||
# Le joueur veut-il et peut-il s'accrocher au mur ?
|
||||
if pressing_wall:
|
||||
if not grab_wall:
|
||||
if not grab_wall :
|
||||
grab_wall = (
|
||||
(pressing_wall_left and (
|
||||
walking or kicking or dashing
|
||||
) and direction == -1)
|
||||
or
|
||||
(pressing_wall_right and (
|
||||
walking or kicking or dashing
|
||||
) and direction == 1)
|
||||
abs(velocity.x) > 0 and
|
||||
(
|
||||
(pressing_wall_left and direction == -1)
|
||||
or
|
||||
(pressing_wall_right and direction == 1)
|
||||
)
|
||||
)
|
||||
|
||||
else:
|
||||
grab_wall = false
|
||||
|
||||
@@ -546,18 +550,27 @@ func _physics_process(_delta: float) -> void:
|
||||
move_and_handle_collisions()
|
||||
play_animation()
|
||||
|
||||
func you_got_cheese() -> void:
|
||||
cheese_collected.emit()
|
||||
func you_got_cheese(speed:float=1) -> void:
|
||||
cheese_collected.emit(speed)
|
||||
|
||||
func reload_fart() -> void:
|
||||
available_dashs = min(available_dashs+1, MAX_FARTS)
|
||||
Input.start_joy_vibration(0, 0, 1, 0.2)
|
||||
|
||||
func you_got_lactase() -> void:
|
||||
lactase_collected.emit()
|
||||
kill_farts()
|
||||
|
||||
func kill_farts() -> void:
|
||||
available_dashs = 0
|
||||
cancel_dash()
|
||||
Input.start_joy_vibration(0, 0.5, 0, 0.1)
|
||||
|
||||
func death() -> void:
|
||||
if not dead:
|
||||
print("death")
|
||||
locked = true
|
||||
Input.start_joy_vibration(0, 1, 1, 1)
|
||||
Input.start_joy_vibration(0, 1,0.7, 1)
|
||||
self.rotation = 90
|
||||
dead = true
|
||||
death_animation.play(&"death")
|
||||
|
||||
Reference in New Issue
Block a user