diff --git a/src/Data/GameMaster.cs b/src/Data/GameMaster.cs index 391f2d61..8506ffb5 100644 --- a/src/Data/GameMaster.cs +++ b/src/Data/GameMaster.cs @@ -110,6 +110,10 @@ public static PokedexPokemon GetPokemon(uint pokemonId, uint formId = 0) var useForm = /*!pkmn.Attack.HasValue &&*/ formId > 0 && pkmn.Forms.ContainsKey(formId); var pkmnForm = useForm ? pkmn.Forms[formId] : pkmn; pkmnForm.Name = pkmn.Name; + // Check if Pokemon is form and Pokemon types provided, if not use normal Pokemon types as fallback + pkmnForm.Types = useForm && (pkmn.Forms[formId].Types?.Count ?? 0) > 0 + ? pkmn.Forms[formId].Types + : pkmn.Types; return pkmnForm; } diff --git a/src/Services/Webhook/Models/PokemonData.cs b/src/Services/Webhook/Models/PokemonData.cs index fec868f3..dba24b6a 100644 --- a/src/Services/Webhook/Models/PokemonData.cs +++ b/src/Services/Webhook/Models/PokemonData.cs @@ -342,6 +342,8 @@ public PokemonData() #endregion + #region Public Methods + /// /// Set despawn times because .NET doesn't support Unix timestamp /// deserialization to class by default. @@ -426,6 +428,10 @@ public async Task GenerateEmbedMessageAsync(AlarmMessageS }; } + #endregion + + #region Private Methods + private async Task GetPropertiesAsync(AlarmMessageSettings properties) { var pkmnInfo = GameMaster.GetPokemon(PokemonId, FormId); @@ -629,5 +635,7 @@ private async Task GetPropertiesAsync(AlarmMessageSettings properties) }; return dict; } + + #endregion } } \ No newline at end of file diff --git a/src/WhMgr.csproj b/src/WhMgr.csproj index c615a932..5d59dcce 100644 --- a/src/WhMgr.csproj +++ b/src/WhMgr.csproj @@ -76,10 +76,6 @@ - - - - @@ -96,6 +92,13 @@ PreserveNewest + + + + + + + True