changement fonctionnement balles
This commit is contained in:
parent
9a0f4ff13d
commit
f01362e4d1
3 changed files with 26 additions and 18 deletions
|
@ -1,23 +1,17 @@
|
|||
[gd_scene load_steps=3 format=2]
|
||||
[gd_scene load_steps=4 format=2]
|
||||
|
||||
[ext_resource path="res://images/balle.png" type="Texture" id=1]
|
||||
[ext_resource path="res://scripts/Balle.gd" type="Script" id=2]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id=1]
|
||||
extents = Vector2( 2, 0.5 )
|
||||
[sub_resource type="RectangleShape2D" id=2]
|
||||
extents = Vector2( 4, 1.5 )
|
||||
|
||||
[node name="Balle" type="RigidBody2D"]
|
||||
[node name="Area2D" type="Area2D"]
|
||||
script = ExtResource( 2 )
|
||||
|
||||
[node name="CollisionShape2D_devant" type="CollisionShape2D" parent="."]
|
||||
position = Vector2( -2, 0 )
|
||||
shape = SubResource( 1 )
|
||||
|
||||
[node name="CollisionShape2D_haut" type="CollisionShape2D" parent="."]
|
||||
position = Vector2( 2, -1 )
|
||||
shape = SubResource( 1 )
|
||||
|
||||
[node name="CollisionShape2D_bas" type="CollisionShape2D" parent="."]
|
||||
position = Vector2( 2, 1 )
|
||||
shape = SubResource( 1 )
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource( 2 )
|
||||
|
||||
[node name="Sprite" type="Sprite" parent="."]
|
||||
texture = ExtResource( 1 )
|
||||
[connection signal="body_entered" from="." to="." method="_on_Area2D_body_entered"]
|
||||
|
|
16
scripts/Balle.gd
Normal file
16
scripts/Balle.gd
Normal file
|
@ -0,0 +1,16 @@
|
|||
extends Area2D
|
||||
|
||||
var vitesseBalle = 700
|
||||
|
||||
func _ready():
|
||||
pass
|
||||
|
||||
func _physics_process(delta):
|
||||
position += transform.x * vitesseBalle * delta
|
||||
|
||||
func _on_Area2D_body_entered(body):
|
||||
if "Murs" in body.name:
|
||||
queue_free()
|
||||
if "Ennemi" in body.name:
|
||||
queue_free()
|
||||
body.queue_free()
|
|
@ -1,7 +1,6 @@
|
|||
extends KinematicBody2D
|
||||
|
||||
var vitesseDeplacement = 500
|
||||
var vitesseBalle = 2000
|
||||
|
||||
var balle = preload("res://scenes/Balle.tscn")
|
||||
|
||||
|
@ -31,11 +30,10 @@ 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()
|
||||
get_tree().reload_current_scene() # reccomence au début
|
||||
|
||||
func _on_Area2D_body_entered(body):
|
||||
if "Ennemi" in body.name: # collision avec l'ennemi
|
||||
|
|
Reference in a new issue