From 2fb787a744d4f7a37d81233d2913a5ef39122f73 Mon Sep 17 00:00:00 2001 From: Matheus Date: Thu, 28 Aug 2025 00:38:48 -0300 Subject: Comentarios --- scripts/map/Tile.cs | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'scripts/map/Tile.cs') diff --git a/scripts/map/Tile.cs b/scripts/map/Tile.cs index e050701..67b9be5 100644 --- a/scripts/map/Tile.cs +++ b/scripts/map/Tile.cs @@ -1,14 +1,33 @@ using Godot; using System; +/// +/// O mundo do jogo é composto por Tiles. +/// Um tile é um quadrado de 16x16 que representa uma +/// unidade discreta do cenário. Tiles podem agir como +/// parede, chão, ou outras funções. +/// public partial class Tile : Sprite2D { + /// + /// A definição do tile carrega seus valores padrão. + /// private TileDefinition definition; + /// + /// Determina se atores podem andar em cima do Tile. + /// public bool IsWalkable { get; private set; } + /// + /// Determina se o tile bloqueia visão. + /// public bool IsTransparent { get; private set; } private bool isExplored = false; + /// + /// Se o jogador já viu este tile antes. + /// Tiles não descobertos são invisíveis. + /// public bool IsExplored { get => this.isExplored; set { @@ -20,6 +39,10 @@ public partial class Tile : Sprite2D } private bool isInView = false; + /// + /// Se o jogador vê o tile neste exato momento. + /// Elementos neste tile estão dentro do campo de visão do jogador. + /// public bool IsInView { get => this.isInView; set { @@ -32,12 +55,21 @@ public partial class Tile : Sprite2D public Tile(Vector2I pos, TileDefinition definition) { + // Tile herda da classe Sprite2D. + // Por padrão, a posição do Sprite2D é no centro de sua textura. + // Para o jogo, faz mais sentido que a posição seja no + // canto superior esquerdo. Centered = false; + // Tiles começam invisíveis porque não foram vistos pelo jogador. Visible = false; Position = Grid.GridToWorld(pos); SetDefinition(definition); } + /// + /// Define as características do tile. + /// + /// Definição do tile. public void SetDefinition(TileDefinition definition) { this.definition = definition; Texture = definition.Texture; -- cgit v1.2.3