test implementation of ambition upgrade system

This commit is contained in:
2026-01-03 03:42:54 +01:00
parent 8bc637b9b8
commit 65690a59f5
7 changed files with 296 additions and 1 deletions
+37
View File
@@ -0,0 +1,37 @@
using Terraria;
using Terraria.Localization;
using Terraria.ModLoader;
namespace YHTMod.Buffs;
public class SummonerAmbitionBuff : ModBuff
{
public override void SetStaticDefaults()
{
Main.buffNoSave[Type] = true;
Main.buffNoTimeDisplay[Type] = true;
}
public override void ModifyBuffText(ref string buffName, ref string tip, ref int rare)
{
var modPlayer = Main.LocalPlayer.TryGetModPlayer<YhtPlayer>(out var mp) ? mp : null;
if (modPlayer == null) return;
tip = Language.GetTextValue("Mods.YHTMod.Buffs.SummonerAmbitionBuff.Description", modPlayer.SummonerAmbitionCrafts.Count);
}
public override void Update(Player player, ref int buffIndex)
{
var modPlayer = player.GetModPlayer<YhtPlayer>();
if (modPlayer.SummonerAmbition)
{
player.buffTime[buffIndex] = 18000;
}
else
{
player.DelBuff(buffIndex);
buffIndex--;
}
}
}