From 5eb55eb8085eb059046bf6aa9238a7debd47577e Mon Sep 17 00:00:00 2001 From: Ines Barral Date: Tue, 26 Nov 2024 15:38:35 -0300 Subject: [PATCH] Algunos comentarios agregados a clases generales --- src/Library/Attack.cs | 5 +++++ src/Library/DamageCalculator.cs | 3 +-- src/Library/Facade.cs | 13 +++++++++++-- src/Library/FullHealth.cs | 4 ++-- src/Library/IAttack.cs | 3 +++ src/Library/Pokemon.cs | 6 ++++++ src/Library/SpecialAttack.cs | 4 ++++ 7 files changed, 32 insertions(+), 6 deletions(-) diff --git a/src/Library/Attack.cs b/src/Library/Attack.cs index 3256c34..156610a 100644 --- a/src/Library/Attack.cs +++ b/src/Library/Attack.cs @@ -52,6 +52,11 @@ public Attack(string name, Type type, double accuracy, int power) this.Power =power; } + + /// + /// Genera una descripción formateada del ataque. + /// Incluye el nombre, tipo, precisión y potencia del ataque. + /// public string InfoAttack() { return $"**{this.Name}**: tipo *{this.Type}*, precisión *{this.Accuracy*100}*, potencia *{this.Power}*\n"; diff --git a/src/Library/DamageCalculator.cs b/src/Library/DamageCalculator.cs index e990a07..baa36b5 100644 --- a/src/Library/DamageCalculator.cs +++ b/src/Library/DamageCalculator.cs @@ -8,13 +8,12 @@ namespace Library; // Es una clase a la cual le delegamos la función de calcular el daño para aplicar SRP así game tiene una única responsabilidad // Es la clase Experta al momento de calcular daño -// Es una clase abstracta la cual nos permite evitar que el programa tenga interdependencias innecesarias (Aplicando DIP). public class DamageCalculator { private IStrategyCritCheck StrategyCritCheck { get; set; } /// - /// Proporciona el valor de efectividad de los ataques entre diferentes tipos de Pokémon. + /// Proporciona el valor de efectividad de los ataques entre diferentes tipos de Pokemon. /// /// /// Dictionary Diccionario donde la clave es una tupla que representa el tipo del ataque y el tipo del Pokemon objetivo, diff --git a/src/Library/Facade.cs b/src/Library/Facade.cs index 7664bad..84b624b 100644 --- a/src/Library/Facade.cs +++ b/src/Library/Facade.cs @@ -27,7 +27,9 @@ public class Facade private PokemonCatalogue Pokedex { get; } = PokemonCatalogue.Instance; - + /// + /// Crea una nueva instancia de Fachada si aún no existe. + /// public static Facade Instance { get @@ -41,11 +43,18 @@ public static Facade Instance } } + /// + /// Restablece la instancia a null, permitiendo crear una nueva. + /// public void Reset() { _instance = null; } + /// + /// Constructor de la clase Facade. + /// Inicializa las listas de espera y de juegos. + /// private Facade() { this.WaitingList = new WaitingList(); @@ -277,7 +286,7 @@ public string CheckTurn(string playerName) /// Comprueba el estado de una partida y determina si continúa o hay un ganador. /// /// La partida actual. - /// "Próximo turno" en caso de que la partida siga o un string conteniendo el + /// "Próximo turno, ahora es el turno de..." en caso de que la partida siga o un string conteniendo el /// ganador y el perdedor. public string CheckGameStatus(Game game) { diff --git a/src/Library/FullHealth.cs b/src/Library/FullHealth.cs index b144a8b..9821257 100644 --- a/src/Library/FullHealth.cs +++ b/src/Library/FullHealth.cs @@ -14,8 +14,8 @@ public class FullHealth : IItem /// /// Le quita cualquier estado negativo al Pokemon. /// - /// Pokemón a ser curado. - /// El pokemon ya no tiene estado negativo. + /// Pokemon a ser curado. + /// El Pokemon ya no tiene estado negativo. public string? Use(Pokemon? pokemon) { if (pokemon != null) diff --git a/src/Library/IAttack.cs b/src/Library/IAttack.cs index 7f83992..0f8d4b8 100644 --- a/src/Library/IAttack.cs +++ b/src/Library/IAttack.cs @@ -19,5 +19,8 @@ public interface IAttack /// public double Accuracy {get;} + /// + /// Genera una descripción del ataque. + /// public string InfoAttack(); } \ No newline at end of file diff --git a/src/Library/Pokemon.cs b/src/Library/Pokemon.cs index f543cb2..29784ff 100644 --- a/src/Library/Pokemon.cs +++ b/src/Library/Pokemon.cs @@ -91,6 +91,9 @@ public void GainLife(double hp) } + /// + /// Establece un número aleatorio entre 1 y 4 de turnos durante los cuales un Pokemon estará dormido. + /// public void SetAsleepTurns() { Random random = new Random(); @@ -180,6 +183,9 @@ public Attack FindAttackByName(string attackString) return null; } + /// + /// Método abstracto para obtener una nueva instancia del Pokemon deseado. + /// public abstract Pokemon Instance(); } \ No newline at end of file diff --git a/src/Library/SpecialAttack.cs b/src/Library/SpecialAttack.cs index f238ec6..07a84a5 100644 --- a/src/Library/SpecialAttack.cs +++ b/src/Library/SpecialAttack.cs @@ -49,6 +49,10 @@ public void SetCooldown() Cooldown = 4; } + /// + /// Genera una descripción formateada del ataque. + /// Incluye el nombre, tipo, precisión, potencia del ataque, efecto especial y cooldown. + /// public string InfoAttack() { return $"**{this.Name}**: tipo *{this.Type}*, precisión *{this.Accuracy*100}*, potencia *{this.Power}*, efecto especial *{this.SpecialEffect}*, cooldown de uso actual *{this.Cooldown}*\n";