From cbd7f4a71da3d5f265ad6f8c127df24aaac89146 Mon Sep 17 00:00:00 2001 From: Noah Stolk <31079637+NoahStolk@users.noreply.github.com> Date: Tue, 30 Aug 2022 21:17:37 +0200 Subject: [PATCH] Add Skull page --- .../Extensions/EnemyExtensions.cs | 15 +++++ .../Pages/Wiki/Enemies/Andras.razor | 3 + .../Pages/Wiki/Enemies/Centipede.razor | 3 + .../Pages/Wiki/Enemies/Ghostpede.razor | 3 + .../Pages/Wiki/Enemies/Gigapede.razor | 3 + .../Pages/Wiki/Enemies/Leviathan.razor | 5 ++ .../Pages/Wiki/Enemies/Skull.razor | 63 +++++++++++++++++++ .../Pages/Wiki/Enemies/Spider.razor | 3 + .../Pages/Wiki/Enemies/Squid.razor | 3 + .../Pages/Wiki/Enemies/Thorn.razor | 3 + .../Pages/Wiki/EnemiesPage.razor | 8 +-- 11 files changed, 108 insertions(+), 4 deletions(-) create mode 100644 src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Andras.razor create mode 100644 src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Centipede.razor create mode 100644 src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Ghostpede.razor create mode 100644 src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Gigapede.razor create mode 100644 src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Leviathan.razor create mode 100644 src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Spider.razor create mode 100644 src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Squid.razor create mode 100644 src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Thorn.razor diff --git a/src/web-client/DevilDaggersInfo.Web.Client/Extensions/EnemyExtensions.cs b/src/web-client/DevilDaggersInfo.Web.Client/Extensions/EnemyExtensions.cs index e9d17f425..ef1c39ff6 100644 --- a/src/web-client/DevilDaggersInfo.Web.Client/Extensions/EnemyExtensions.cs +++ b/src/web-client/DevilDaggersInfo.Web.Client/Extensions/EnemyExtensions.cs @@ -15,4 +15,19 @@ public static string GetImageName(this Enemy enemy) .Replace(' ', '-') .ToLower(); } + + public static string GetUrl(this Enemy enemy) + { + string enemyName = enemy.Name.ToLower(); + if (enemyName.Contains("skull")) + return "skull"; + + if (enemyName.StartsWith("squid")) + return "squid"; + + if (enemyName.EndsWith("orb")) + return "leviathan"; + + return enemyName.StartsWith("spider") ? "spider" : enemyName; + } } diff --git a/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Andras.razor b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Andras.razor new file mode 100644 index 000000000..65e89a81e --- /dev/null +++ b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Andras.razor @@ -0,0 +1,3 @@ +@page "/wiki/enemies/andras" + + diff --git a/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Centipede.razor b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Centipede.razor new file mode 100644 index 000000000..7ac26f4f8 --- /dev/null +++ b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Centipede.razor @@ -0,0 +1,3 @@ +@page "/wiki/enemies/centipede" + + diff --git a/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Ghostpede.razor b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Ghostpede.razor new file mode 100644 index 000000000..5abb7ee31 --- /dev/null +++ b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Ghostpede.razor @@ -0,0 +1,3 @@ +@page "/wiki/enemies/ghostpede" + + diff --git a/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Gigapede.razor b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Gigapede.razor new file mode 100644 index 000000000..7b11d6d72 --- /dev/null +++ b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Gigapede.razor @@ -0,0 +1,3 @@ +@page "/wiki/enemies/gigapede" + + diff --git a/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Leviathan.razor b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Leviathan.razor new file mode 100644 index 000000000..c88fe168c --- /dev/null +++ b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Leviathan.razor @@ -0,0 +1,5 @@ +@page "/wiki/enemies/leviathan" + + + +@*TODO: Orb since V3, V1 HP was 600.*@ diff --git a/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Skull.razor b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Skull.razor index 451d37b2e..eae1bd8a8 100644 --- a/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Skull.razor +++ b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Skull.razor @@ -1,3 +1,66 @@ @page "/wiki/enemies/skull" + +
+ @foreach (Enemy enemy in _skulls) + { + @enemy.Name + } +
+ +

+ Skulls are the most common enemy in the game. They are spawned by Squids. +

+ + + +

+ Skulls can be transmuted by Leviathan and The Orb. This means they are sucked up and thrown back into the arena with their HP reset to a much larger value, making them much more dangerous. +

+ +
+ @foreach (Enemy enemy in _transmutedSkulls) + { + @enemy.Name + } +
+ + + +
+ Skull + HP + Gems + Death type + Base velocity + Max velocity + @foreach (Enemy enemy in _skulls.Concat(_transmutedSkulls)) + { + @MarkupUtils.EnemyString(enemy) + @enemy.Hp + @enemy.Gems + @MarkupUtils.DeathString(enemy.Death) + TODO + TODO + } +
+ +@code +{ + private readonly Enemy[] _skulls = + { + EnemiesV3_2.Skull1, + EnemiesV3_2.Skull2, + EnemiesV3_2.Skull3, + EnemiesV3_2.Skull4, + }; + + private readonly Enemy[] _transmutedSkulls = + { + EnemiesV3_2.TransmutedSkull1, + EnemiesV3_2.TransmutedSkull2, + EnemiesV3_2.TransmutedSkull3, + EnemiesV3_2.TransmutedSkull4, + }; +} diff --git a/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Spider.razor b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Spider.razor new file mode 100644 index 000000000..4b3f80c23 --- /dev/null +++ b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Spider.razor @@ -0,0 +1,3 @@ +@page "/wiki/enemies/spider" + + diff --git a/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Squid.razor b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Squid.razor new file mode 100644 index 000000000..b4ffeae18 --- /dev/null +++ b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Squid.razor @@ -0,0 +1,3 @@ +@page "/wiki/enemies/squid" + + diff --git a/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Thorn.razor b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Thorn.razor new file mode 100644 index 000000000..a9ada874d --- /dev/null +++ b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/Enemies/Thorn.razor @@ -0,0 +1,3 @@ +@page "/wiki/enemies/thorn" + + diff --git a/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/EnemiesPage.razor b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/EnemiesPage.razor index 0057d2ee4..1c211f4ca 100644 --- a/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/EnemiesPage.razor +++ b/src/web-client/DevilDaggersInfo.Web.Client/Pages/Wiki/EnemiesPage.razor @@ -30,7 +30,7 @@
@foreach (Enemy enemy in enemies) { - + }
@@ -165,12 +165,12 @@ { private static MarkupString GetHomingDamage(int damage, int hp) { - if (damage == 0) + if (damage == 0) return MarkupStrings.NoDataMarkup; - + if (damage >= hp) return new("Instant"); - + return new(damage.ToString()); } }