This repository has been archived on 2022-03-31. You can view files and clone it, but cannot push or open issues or pull requests.
Tyra/scripts/Joueur.gd

43 lines
1.3 KiB
GDScript3
Raw Normal View History

2021-04-03 23:47:20 +02:00
extends KinematicBody2D
var vitesseDeplacement = 500
var vitesseBalle = 2000
var balle = preload("res://scenes/Balle.tscn")
func _ready():
pass
func _process(delta):
var deplacement = Vector2() # déplacement du personnage
if Input.is_action_pressed("haut"): # vers le haut
deplacement.y -= 1
if Input.is_action_pressed("bas"): # vers le bas
deplacement.y += 1
if Input.is_action_pressed("gauche"): # vers la gauche
deplacement.x -= 1
if Input.is_action_pressed("droite"): # vers la droite
deplacement.x += 1
deplacement = deplacement.normalized() # empeche de doubler la vitesse en diagonale
deplacement = move_and_slide(deplacement * vitesseDeplacement) # vitesse
look_at(get_global_mouse_position()) # regarde le curseur
if Input.is_action_just_pressed("clicGauche"):
tir()
func tir():
var objectBalle = balle.instance() # création object balle
objectBalle.position = get_global_position() # récupération de la position
objectBalle.rotation_degrees = rotation_degrees # récupération du degré de rotation
objectBalle.apply_impulse(Vector2(), Vector2(vitesseBalle, 0).rotated(rotation)) # lancement de la balle
get_tree().get_root().call_deferred("add_child", objectBalle) # ajout de la balle
func mort():
get_tree().reload_current_scene()
func _on_Area2D_body_entered(body):
if "Ennemi" in body.name: # collision avec l'ennemi
mort()