gestion erreur + meilleurs déplacement hors screen
This commit is contained in:
parent
19bdcabbf6
commit
a3709218ab
2 changed files with 11 additions and 8 deletions
|
@ -1,19 +1,21 @@
|
||||||
extends KinematicBody2D
|
extends KinematicBody2D
|
||||||
|
|
||||||
var deplacement = Vector2()
|
var deplacement = Vector2()
|
||||||
var ecart = 260
|
var ecart = 270
|
||||||
|
var vitesse
|
||||||
|
|
||||||
func _ready():
|
func _ready():
|
||||||
pass
|
pass
|
||||||
|
|
||||||
func _physics_process(_delta):
|
func _physics_process(_delta):
|
||||||
var Joueur = get_parent().get_node("Joueur") # récupère le joueur
|
var Joueur = get_parent().get_node("Joueur") # récupère le joueur
|
||||||
|
if (Joueur.position.x + ecart) > position.x and (Joueur.position.y + (ecart + 10)) > position.y:
|
||||||
if (Joueur.position.x + ecart) > position.x and (Joueur.position.y + ecart) > position.y:
|
vitesse = 50 # se déplace vers le joueur
|
||||||
position += (Joueur.position - position) / 50 # rapidité
|
else:
|
||||||
look_at(Joueur.position) # regarde le joueur
|
vitesse = 10000 # se déplace lentement, pas immobile
|
||||||
|
position += (Joueur.position - position) / vitesse # déplacement
|
||||||
|
|
||||||
move_and_collide(deplacement) # empeche la superposition des ennemis
|
var _resultMoveAndCollide = move_and_collide(deplacement) # empeche la superposition des ennemis + déplacement
|
||||||
|
|
||||||
func _on_Area2D_body_entered(body):
|
func _on_Area2D_body_entered(body):
|
||||||
if "Balle" in body.name:
|
if "Balle" in body.name:
|
||||||
|
|
|
@ -7,7 +7,7 @@ var balle = preload("res://scenes/Balle.tscn")
|
||||||
func _ready():
|
func _ready():
|
||||||
pass
|
pass
|
||||||
|
|
||||||
func _process(delta):
|
func _process(_delta):
|
||||||
var deplacement = Vector2() # déplacement du personnage
|
var deplacement = Vector2() # déplacement du personnage
|
||||||
|
|
||||||
if Input.is_action_pressed("haut"): # vers le haut
|
if Input.is_action_pressed("haut"): # vers le haut
|
||||||
|
@ -33,7 +33,8 @@ func tir():
|
||||||
get_tree().get_root().call_deferred("add_child", objectBalle) # ajout de la balle
|
get_tree().get_root().call_deferred("add_child", objectBalle) # ajout de la balle
|
||||||
|
|
||||||
func mort():
|
func mort():
|
||||||
get_tree().reload_current_scene() # reccomence au début
|
if get_tree().reload_current_scene() != OK: # reccomence au début
|
||||||
|
print("Une erreur est survenue lors du rechargement de la scène.")
|
||||||
|
|
||||||
func _on_Area2D_body_entered(body):
|
func _on_Area2D_body_entered(body):
|
||||||
if "Ennemi" in body.name: # collision avec l'ennemi
|
if "Ennemi" in body.name: # collision avec l'ennemi
|
||||||
|
|
Reference in a new issue