From e17510951f1136f4afeb2afbf76c47df151b299b Mon Sep 17 00:00:00 2001 From: Matheus Date: Thu, 28 Aug 2025 17:21:38 -0300 Subject: Mapa iluminado --- assets/definitions/tiles/floor.tres | 2 ++ assets/definitions/tiles/wall.tres | 3 +++ scripts/map/Tile.cs | 6 ++++-- scripts/map/TileDefinition.cs | 4 ++++ 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/assets/definitions/tiles/floor.tres b/assets/definitions/tiles/floor.tres index 7fa64ea..d06e101 100644 --- a/assets/definitions/tiles/floor.tres +++ b/assets/definitions/tiles/floor.tres @@ -6,6 +6,8 @@ [resource] script = ExtResource("1_snxyj") Texture = ExtResource("1_vvyfi") +LitColor = Color(1, 1, 1, 1) +DarkColor = Color(0.272655, 0.272655, 0.272655, 1) IsWalkable = true IsTransparent = true metadata/_custom_type_script = "uid://ba82a33ov6uuo" diff --git a/assets/definitions/tiles/wall.tres b/assets/definitions/tiles/wall.tres index bc16528..c4d67f7 100644 --- a/assets/definitions/tiles/wall.tres +++ b/assets/definitions/tiles/wall.tres @@ -6,5 +6,8 @@ [resource] script = ExtResource("1_ugwtv") Texture = ExtResource("1_jkwov") +LitColor = Color(1, 1, 1, 1) +DarkColor = Color(0.152476, 0.152476, 0.152476, 1) IsWalkable = false +IsTransparent = false metadata/_custom_type_script = "uid://ba82a33ov6uuo" diff --git a/scripts/map/Tile.cs b/scripts/map/Tile.cs index 67b9be5..39f7486 100644 --- a/scripts/map/Tile.cs +++ b/scripts/map/Tile.cs @@ -44,9 +44,10 @@ public partial class Tile : Sprite2D /// Elementos neste tile estão dentro do campo de visão do jogador. /// public bool IsInView { - get => this.isInView; + get => isInView; set { - this.isInView = value; + isInView = value; + Modulate = isInView ? definition.LitColor : definition.DarkColor; if (IsInView && !IsExplored) { IsExplored = true; } @@ -72,6 +73,7 @@ public partial class Tile : Sprite2D /// Definição do tile. public void SetDefinition(TileDefinition definition) { this.definition = definition; + Modulate = definition.DarkColor; Texture = definition.Texture; IsWalkable = definition.IsWalkable; IsTransparent = definition.IsTransparent; diff --git a/scripts/map/TileDefinition.cs b/scripts/map/TileDefinition.cs index 235508a..84e5cc1 100644 --- a/scripts/map/TileDefinition.cs +++ b/scripts/map/TileDefinition.cs @@ -9,6 +9,10 @@ public partial class TileDefinition : Resource [ExportCategory("Visuals")] [Export] public Texture2D Texture { get; set; } + [Export(PropertyHint.ColorNoAlpha)] + public Color LitColor { get; set; } = Colors.White; + [Export(PropertyHint.ColorNoAlpha)] + public Color DarkColor { get; set; } = Colors.White; [ExportCategory("Mechanics")] [Export] -- cgit v1.2.3