From a338e92742d7fa0e8628e86046823a0daa0cb34c Mon Sep 17 00:00:00 2001 From: YouHaveTrouble Date: Tue, 27 Jan 2026 18:10:28 +0100 Subject: [PATCH] icon and a tooltip line for when ambition is fully realized --- Buffs/SummonerAmbitionBuff.png | Bin 3266 -> 693 bytes Items/SummonersAmbition.cs | 33 +++++++++++++++++++-------- Items/SummonersAmbition.png | Bin 1605 -> 693 bytes Localization/en-US_Mods.YHTMod.hjson | 1 + 4 files changed, 24 insertions(+), 10 deletions(-) diff --git a/Buffs/SummonerAmbitionBuff.png b/Buffs/SummonerAmbitionBuff.png index 3677becad61d5f9fc73a57a12771e267009ef1a5..dbcdc217e0962077896b3a198597433aba73b4f9 100644 GIT binary patch delta 670 zcmV;P0%85a8MOtFBYyx1a7bBm000XT000XT0n*)m`~Uy~XGugsR9Hu2WFQlS&bloI z)e56wCcOeNR;Q_gX+nUBkOErEvyf^5lFxOadiS82Ax?^!Lnj1aJ{K2a2mAcpr(Y;O z|NZB`3n@N_sU7?wfbR3J-~WJpuA#sO_QaEy-=aYD`_I2GlYf%>hfW9pT?)?UU!Xo$ zlI8(B{?)r5U|Num4NU)=8i3y1z5dz@2{rUSJ*kiBW{e*@9J4zJ)J`7gI@RlJ7 zOwT`Xf~b%f5`Q58uGN4g9XP-L`tuJQ=i4*nz&_kk0V(=@Iv^py0Ht?sg@gnlFeE|% z#S@q7)Uo>kxEtLH3?tKaD!@RYShR>v6NW%ywu2gvq z(q1^OiZ>Yy-VlJ*fg=V1EWy-#5J%lE&qmeCb_ zK`?kj0O)FPr0O=^gvKo-^@q=W45okn2N(4W!mJQK@UcMntPGG6^WVD<_&g4m8@wR^ z^Z_Ie#RR}q)a-{~+E5Wr{{$EA-)`Oq z`{V$2_&zlHh6G!#{;6xh<$<{9 delta 3263 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 diff --git a/Items/SummonersAmbition.cs b/Items/SummonersAmbition.cs index 8dc528e..54f821e 100644 --- a/Items/SummonersAmbition.cs +++ b/Items/SummonersAmbition.cs @@ -32,6 +32,7 @@ public class SummonersAmbition : ModItem { public override void ModifyTooltips(List tooltips) { YhtPlayer player = Main.LocalPlayer.GetModPlayer(); + tooltips.Add(new TooltipLine(Mod, "SummonerAmbition", Language.GetTextValue("Mods.YHTMod.Items.SummonersAmbition.Tooltip", player.GetSummonersAmbitionMinionBonus()))); @@ -99,16 +100,22 @@ public class SummonersAmbition : ModItem { Language.GetTextValue("Mods.YHTMod.Items.SummonersAmbition.Skeletron"))); } - if (player.SummonerAmbitions.Contains("wall_of_flesh")) { - tooltips.Add(new TooltipLine(Mod, "SummonerAmbitionWallOfFlesh", - Language.GetTextValue("Mods.YHTMod.Items.SummonersAmbition.WallOfFlesh"))); - } - if (ModLoader.HasMod("CalamityMod") && player.SummonerAmbitions.Contains("slime_god")) { int id = ModContent.ItemType(); tooltips.Add(new TooltipLine(Mod, "SummonerAmbitionSlimeGod", Language.GetTextValue("Mods.YHTMod.Items.SummonersAmbition.SlimeGod", "[i:" + id + "]"))); } + + if (player.SummonerAmbitions.Contains("wall_of_flesh")) { + tooltips.Add(new TooltipLine(Mod, "SummonerAmbitionWallOfFlesh", + Language.GetTextValue("Mods.YHTMod.Items.SummonersAmbition.WallOfFlesh"))); + } + + if (IsPreHardmodeRealized(player.Player)) { + tooltips.Add(new TooltipLine(Mod, "SummonerAmbitionPreHardmodeRealized", + Language.GetTextValue("Mods.YHTMod.Items.SummonersAmbition.PreHardmodeRealized"))); + } + } public override void AddRecipes() { @@ -120,27 +127,33 @@ public class SummonersAmbition : ModItem { .Register(); } - public static bool IsPreHardmodeRealized(Player player) { + private static bool IsPreHardmodeRealized(Player player) { YhtPlayer modPlayer = player.GetModPlayer(); HashSet bossesToCheck = [ "king_slime", "eye_of_cthulhu", "deerclops", - "eater_of_worlds", - "brain_of_cthulhu", "queen_bee", "skeletron", "wall_of_flesh" ]; + if (!modPlayer.SummonerAmbitions.Contains("eater_of_worlds") && !modPlayer.SummonerAmbitions.Contains("brain_of_cthulhu")) { + return false; + } + if (ModLoader.HasMod("CalamityMod")) { bossesToCheck.Add("desert_scourge"); bossesToCheck.Add("crabulon"); - bossesToCheck.Add("perforators"); - bossesToCheck.Add("hive_mind"); bossesToCheck.Add("slime_god"); + + if (!modPlayer.SummonerAmbitions.Contains("perforators") && !modPlayer.SummonerAmbitions.Contains("hive_mind")) { + return false; + } } + + return bossesToCheck.All(boss => modPlayer.SummonerAmbitions.Contains(boss)); } diff --git a/Items/SummonersAmbition.png b/Items/SummonersAmbition.png index 8e27abd25ffe5a235cd453245f769665207c24f3..dbcdc217e0962077896b3a198597433aba73b4f9 100644 GIT binary patch delta 670 zcmV;P0%85d47CN2BYyx1a7bBm000XT000XT0n*)m`~Uy~XGugsR9Hu2WFQlS&bloI z)e56wCcOeNR;Q_gX+nUBkOErEvyf^5lFxOadiS82Ax?^!Lnj1aJ{K2a2mAcpr(Y;O z|NZB`3n@N_sU7?wfbR3J-~WJpuA#sO_QaEy-=aYD`_I2GlYf%>hfW9pT?)?UU!Xo$ zlI8(B{?)r5U|Num4NU)=8i3y1z5dz@2{rUSJ*kiBW{e*@9J4zJ)J`7gI@RlJ7 zOwT`Xf~b%f5`Q58uGN4g9XP-L`tuJQ=i4*nz&_kk0V(=@Iv^py0Ht?sg@gnlFeE|% z#S@q7)Uo>kxEtLH3?tKaD!@RYShR>v6NW%ywu2gvq z(q1^OiZ>Yy-VlJ*fg=V1EWy-#5J%lE&qmeCb_ zK`?kj0O)FPr0O=^gvKo-^@q=W45okn2N(4W!mJQK@UcMntPGG6^WVD<_&g4m8@wR^ z^Z_Ie#RR}q)a-{~+E5Wr{{$EA-)`Oq z`{V$2_&zlHh6G!#{;6xh<$CXy zg~w8X4Jtb%_#arXV8H@SX2p^PtoRSufP@MX1>`XxN}GyJ8|6nsX&c#OJf2C$^XvV* zk9%e`$cgQVs}{JL^X_}^+;hI)bMC$8zA^bfxBm%&*VY^5(|_Xp+zE`qq#w&4ZZFj2 z{v;BgD}kdRUTRcCT*da+*X!4X#D9%|0E-BKi7LN-sc~HyS=q{raxYG5Z{A+IF1nNC zGiP87>?aK8Sz*?Uyiu9&yF__aD_Qmq6Ph_eH&G?PB9dB(x^Gi6pfa0U+v|0ooH7Uo z8S(0f}1D9Ov2e6MwTj+i_Ub3v4aO^KzrWE6pjc zE#-OfnmGi2r_|-Z3NfOzEDLfHxacNkK)_{CKCvrSU}#{6t9w2h2R^T~3#?u-hrlxC z=3m?VZK1<~AE7L&%C)wh7QNV=NQQ_iiHt!V_8W>p zUhyCo)A3UVc2W&&h1h-?aE;F~0`gK0k;N!i$r&kgI;GPW!7Ygf(s0z-1|Q!*zc#xfc?`Ff0isSlGv-zqOh4vWDQvtNY53fNPl^s98_uy3b&SGY`N7KOyz zE`K<7x#=Ypu@^aOCQP1avw>Ud`DtwsXLzAO(qowV+#JKjH~TUaO_K|$%Y}|hsb`aq zO)how__|JHVOBx6vu5Ej0%9cdukC3RBU&>lhac)E1L8;E6u@7CHN6Edv~o=A=vTTS z&-5(jgMrS7gPR$Q&xW&P!PM>_`;CnxvVSarcDqgeEeP9Ccn;>T!pvp3^c^_2YO)&5 zvvHt?K0L$ZrNe2=yitiGwIdaDsF-j$MnJ}zS+?__6p`r9naFWyybJw3=zaoDQ4`pJ zXTJ$AeGgV&hn34EiYr zNJlS)r}Z9K9!%?EH1`z^{2F}e2O}aEFVAtloWr@E7pWFCo^1Y`q@5MaXG6{|&hMV_3ZGF&AVQHX`M0z_2zj zp&cV2V`U-6rXsWy{esOyU6@+VA%72V@gEYse?m`Bi4d`;814}Nyxt)!VPsGWZ4y&G zwIrWNKuFk%YM5mNq;x%-o})N$T0;`={RH0m;V2vXe;H-ODZvZh22XF-bCF9vF!lB| zDw0w0cbb?dDa7d4_ZF^8iS61t96hMHf$tdbdyKyMh*6xb@pzxdH-kd z?vLQD?}IE<(}K8^4W~dB_1ND@{X_ziiNMOLD$!z6d+1y2y{LD`RF1u3kp~xwynoT; z#6`!n00v1!K~w_(OjopDbuN