Browse Source

:paint: Change l'aspect de la brique en fonction du pouvoir

qu'elle contient.
DricomDragon 11 tháng trước cách đây
mục cha
commit
5fbdc6c2b4

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

@@ -12,11 +12,17 @@ const NOMBRE_DE_VIES_MAX: int = 4
 ## Le nombre de coups necessaires pour detruire la brique.
 @export_range(1, NOMBRE_DE_VIES_MAX) var nombre_de_vies: int = 1:
 	set = set_nombre_de_vies
-@export var pouvoir_type: Pouvoir.Type = Pouvoir.Type.AUCUN
+@export var pouvoir_type: Pouvoir.Type = Pouvoir.Type.AUCUN:
+	set = set_pouvoir_type
+
+var _texture_brique: Texture2D = preload("res://composants/objets/brique/images/01.png")
+
+@onready var image: Sprite2D = $Image
 
 
 func _ready() -> void:
 	_montrer_nombre_vies()
+	_montrer_type_pouvoir()
 
 
 func frapper(nb_degats: int) -> void:
@@ -31,6 +37,21 @@ func _montrer_nombre_vies() -> void:
 	set_modulate(nouvelle_couleur)
 
 
+func _montrer_type_pouvoir() -> void:
+	if not is_node_ready():
+		return
+
+	image.set_texture(_texture_brique)
+
+
+func _associe_texture_brique(nouveau_type_pouvoir: Pouvoir.Type) -> void:
+	match nouveau_type_pouvoir:
+		Pouvoir.Type.FEU:
+			_texture_brique = preload("res://composants/objets/brique/images/43.png")
+		_:
+			_texture_brique = preload("res://composants/objets/brique/images/01.png")
+
+
 func _mourir() -> void:
 	queue_free()
 	_eclater()
@@ -58,3 +79,8 @@ func _liberer_capsule() -> void:
 func set_nombre_de_vies(nb: int) -> void:
 	nombre_de_vies = nb
 	_montrer_nombre_vies()
+
+
+func set_pouvoir_type(nouveau_type: Pouvoir.Type) -> void:
+	pouvoir_type = nouveau_type
+	_associe_texture_brique(nouveau_type)

+ 2 - 2
godot/composants/objets/brique/brique.tscn

@@ -2,7 +2,7 @@
 
 [ext_resource type="PhysicsMaterial" uid="uid://c6bddricwmcxx" path="res://ressources/materiaux/metal.tres" id="1_exny1"]
 [ext_resource type="Script" path="res://composants/objets/brique/brique.gd" id="2_gkrr0"]
-[ext_resource type="Texture2D" uid="uid://r7iyjvdve5a1" path="res://composants/objets/brique/01.png" id="3_fmy5a"]
+[ext_resource type="Texture2D" uid="uid://r7iyjvdve5a1" path="res://composants/objets/brique/images/01.png" id="3_72vd6"]
 
 [sub_resource type="RectangleShape2D" id="RectangleShape2D_ong6t"]
 size = Vector2(30, 16)
@@ -13,7 +13,7 @@ physics_material_override = ExtResource("1_exny1")
 script = ExtResource("2_gkrr0")
 
 [node name="Image" type="Sprite2D" parent="."]
-texture = ExtResource("3_fmy5a")
+texture = ExtResource("3_72vd6")
 centered = false
 
 [node name="Forme" type="CollisionShape2D" parent="."]

godot/composants/objets/brique/01.png → godot/composants/objets/brique/images/01.png


+ 3 - 3
godot/composants/objets/brique/01.png.import

@@ -3,15 +3,15 @@
 importer="texture"
 type="CompressedTexture2D"
 uid="uid://r7iyjvdve5a1"
-path="res://.godot/imported/01.png-ccb5020781453538009e336363b0782e.ctex"
+path="res://.godot/imported/01.png-8adccc9ce15407ac02041e1d6059ad00.ctex"
 metadata={
 "vram_texture": false
 }
 
 [deps]
 
-source_file="res://composants/objets/brique/01.png"
-dest_files=["res://.godot/imported/01.png-ccb5020781453538009e336363b0782e.ctex"]
+source_file="res://composants/objets/brique/images/01.png"
+dest_files=["res://.godot/imported/01.png-8adccc9ce15407ac02041e1d6059ad00.ctex"]
 
 [params]
 

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


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

@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://wdfi76mal17m"
+path="res://.godot/imported/05.png-8dd316eb38ea6d741454da9393a27ecf.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://composants/objets/brique/images/05.png"
+dest_files=["res://.godot/imported/05.png-8dd316eb38ea6d741454da9393a27ecf.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

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


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

@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cqh52nf7huku4"
+path="res://.godot/imported/08.png-c9ae8fd805057084f447a715bb68d3cb.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://composants/objets/brique/images/08.png"
+dest_files=["res://.godot/imported/08.png-c9ae8fd805057084f447a715bb68d3cb.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

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


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

@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dx5mdxvbyqlc5"
+path="res://.godot/imported/09.png-63d29bf5a593c5af412359b664861790.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://composants/objets/brique/images/09.png"
+dest_files=["res://.godot/imported/09.png-63d29bf5a593c5af412359b664861790.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

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


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

@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://beuw56yume3ck"
+path="res://.godot/imported/12.png-2db88c5eb0f40df6ac4da911f0e01893.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://composants/objets/brique/images/12.png"
+dest_files=["res://.godot/imported/12.png-2db88c5eb0f40df6ac4da911f0e01893.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

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


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

@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://svcdhbt7wjp"
+path="res://.godot/imported/39.png-463b7c17ad594e78ba1b8382c81571ba.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://composants/objets/brique/images/39.png"
+dest_files=["res://.godot/imported/39.png-463b7c17ad594e78ba1b8382c81571ba.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

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


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

@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://epopren4pfja"
+path="res://.godot/imported/43.png-43cc4b436243cce5d50852b80fcae426.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://composants/objets/brique/images/43.png"
+dest_files=["res://.godot/imported/43.png-43cc4b436243cce5d50852b80fcae426.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

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


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

@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bqpqb8b3s6v6v"
+path="res://.godot/imported/44.png-faaa396a8db0bc39aa48994cc9ff894f.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://composants/objets/brique/images/44.png"
+dest_files=["res://.godot/imported/44.png-faaa396a8db0bc39aa48994cc9ff894f.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

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


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

@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bidshumi76om6"
+path="res://.godot/imported/46.png-43ca65b47d3e237e40ea7f5de996dc46.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://composants/objets/brique/images/46.png"
+dest_files=["res://.godot/imported/46.png-43ca65b47d3e237e40ea7f5de996dc46.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