فهرست منبع

Ajoute le pouvoir qui redonne une vie

DricomDragon 10 ماه پیش
والد
کامیت
3e76190c31

+ 3 - 1
godot/composants/objets/brique/brique.gd

@@ -46,10 +46,12 @@ func _montrer_type_pouvoir() -> void:
 
 func _associe_texture_brique(nouveau_type_pouvoir: Pouvoir.Type) -> void:
 	match nouveau_type_pouvoir:
+		Pouvoir.Type.AUCUN:
+			_texture_brique = preload("res://composants/objets/brique/images/01.png")
 		Pouvoir.Type.FEU:
 			_texture_brique = preload("res://composants/objets/brique/images/43.png")
 		_:
-			_texture_brique = preload("res://composants/objets/brique/images/01.png")
+			_texture_brique = preload("res://composants/objets/brique/images/34.png")
 
 
 func _mourir() -> void:

BIN
godot/composants/objets/brique/images/34.png


+ 34 - 0
godot/composants/objets/brique/images/34.png.import

@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://o3k7yuu4b2s8"
+path="res://.godot/imported/34.png-00fb24c569606f2a86fb4216d1200165.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://composants/objets/brique/images/34.png"
+dest_files=["res://.godot/imported/34.png-00fb24c569606f2a86fb4216d1200165.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1

+ 8 - 0
godot/composants/objets/lanceur/lanceur.gd

@@ -1,4 +1,6 @@
+class_name Lanceur
 extends Node2D
+## Gere les balles du jeu.
 
 
 signal partie_perdue
@@ -14,6 +16,7 @@ func _ready() -> void:
 	lancer_balle()
 
 
+## S'il en reste en reserve, lance une balle
 func lancer_balle() -> void:
 	if nombre_de_balles <= 0:
 		partie_perdue.emit()
@@ -24,6 +27,11 @@ func lancer_balle() -> void:
 	add_child.call_deferred(nouvelle_balle) # Appeler plus tard sinon Godot pas content
 
 
+func incrementer_nombre_de_balles() -> void:
+	nombre_de_balles += 1
+	nb_balles_change.emit(nombre_de_balles)
+
+
 func _quand_balle_detruite() -> void:
 	lancer_balle()
 

+ 1 - 1
godot/composants/objets/lanceur/lanceur.tscn

@@ -2,5 +2,5 @@
 
 [ext_resource type="Script" path="res://composants/objets/lanceur/lanceur.gd" id="1_o5mtd"]
 
-[node name="Lanceur" type="Node2D"]
+[node name="Lanceur" type="Node2D" groups=["groupe_des_lanceurs"]]
 script = ExtResource("1_o5mtd")

+ 4 - 0
godot/composants/pouvoirs/bonjour_pouvoir.gd

@@ -5,3 +5,7 @@ extends PouvoirBase
 
 func declencher_pouvoir(_arbre_scene: SceneTree) -> void:
 	print("Bonjour, je m'appelle ", self)
+
+
+func couleur_principale() -> Color:
+	return Color.ALICE_BLUE

+ 3 - 0
godot/composants/pouvoirs/commun/association_pouvoirs.gd

@@ -4,6 +4,7 @@ class_name Pouvoir
 enum Type {
 	AUCUN, # si pas de pouvoir, laisser en premier
 	FEU,
+	VIE,
 	BONJOUR # laisser en dernier
 }
 
@@ -14,6 +15,8 @@ static func depuis_enum(type: Type): # -> PouvoirBase
 			return BonjourPouvoir.new()
 		Type.FEU:
 			return PouvoirFeu.new()
+		Type.VIE:
+			return VieBonus.new()
 		Type.AUCUN:
 			return null
 		_:

+ 12 - 0
godot/composants/pouvoirs/vie_bonus.gd

@@ -0,0 +1,12 @@
+class_name VieBonus
+extends PouvoirBase
+## Pouvoir permettant de récupérer une balle
+
+
+func declencher_pouvoir(arbre_scene: SceneTree) -> void:
+	var lanceur: Lanceur = arbre_scene.get_first_node_in_group("groupe_des_lanceurs")
+	lanceur.incrementer_nombre_de_balles()
+
+
+func couleur_principale() -> Color:
+	return Color.FLORAL_WHITE

+ 10 - 0
godot/exec/niveaux/blob_facile.tscn

@@ -43,6 +43,7 @@ position = Vector2(180, 128)
 
 [node name="Brique8" parent="Briques" instance=ExtResource("4_nhi56")]
 position = Vector2(210, 128)
+pouvoir_type = 2
 
 [node name="Brique9" parent="Briques" instance=ExtResource("4_nhi56")]
 position = Vector2(240, 128)
@@ -62,6 +63,15 @@ position = Vector2(210, 144)
 [node name="Brique14" parent="Briques" instance=ExtResource("4_nhi56")]
 position = Vector2(240, 144)
 
+[node name="Brique4" parent="Briques/Brique14" instance=ExtResource("4_nhi56")]
+position = Vector2(30, -32)
+
+[node name="Brique10" parent="Briques/Brique14" instance=ExtResource("4_nhi56")]
+position = Vector2(60, -16)
+
+[node name="Brique14" parent="Briques/Brique14" instance=ExtResource("4_nhi56")]
+position = Vector2(30, 0)
+
 [node name="Arene" parent="." instance=ExtResource("5_jfp2p")]
 metadata/_edit_lock_ = true