start a bit of the lore sprinkle

This commit is contained in:
2025-11-24 23:18:37 +00:00
parent 73351418f1
commit 1008c2cea6
6 changed files with 62 additions and 10 deletions
+19 -7
View File
@@ -76,6 +76,12 @@ namespace ForgottenWawiTech.Content.NPCs.TownNPCs
NPCID.Sets.AttackAverageChance[NPC.type] = 30;
NPCID.Sets.HatOffsetY[NPC.type] = 4; // For when a party is active, the party hat spawns at a Y offset
NPC.Happiness
.SetNPCAffection(NPCID.Merchant, AffectionLevel.Love)
.SetNPCAffection(NPCID.Demolitionist, AffectionLevel.Like)
.SetNPCAffection(NPCID.GoblinTinkerer, AffectionLevel.Like)
.SetNPCAffection(NPCID.SkeletonMerchant, AffectionLevel.Dislike);
// Influences how the NPC looks in the Bestiary
NPCID.Sets.NPCBestiaryDrawModifiers drawModifiers = new NPCID.Sets.NPCBestiaryDrawModifiers(0)
{
@@ -134,6 +140,7 @@ namespace ForgottenWawiTech.Content.NPCs.TownNPCs
public override void SetChatButtons(ref string button, ref string button2)
{
button = Language.GetTextValue("LegacyInterface.28"); // "Shop"
button2 = "Talk";
}
@@ -143,6 +150,11 @@ namespace ForgottenWawiTech.Content.NPCs.TownNPCs
{
shop = "Shop";
}
else;
{
// TODO: Bring up a UI for a player to give an item to the NPC which will explain lore.
shop = "Shop"; // Placeholder to avoid errors
}
}
public override void AddShops()
@@ -156,7 +168,7 @@ namespace ForgottenWawiTech.Content.NPCs.TownNPCs
.Add<Items.Materials.FallenAngelFeather>(HasDefeatedNiko)
.Add<Items.Materials.HalfEatenFish>(HasDefeatedNeptune)
.Add<Items.Materials.LyykaBossDrop>(HasDefeatedLyyka)
.Add<Items.Materials.UnstableMatter>(HasDefeatedCorruptedSwarm)
.Add<Items.Materials.UnstableMatter>(HasDefeatedCorruptedSwarm) // TODO: Replace with Corrupted Swarm flag once implemented.
.Add(rainbowBrick, Condition.Hardmode)
.Add<Items.Materials.AvaliFeather>()
.Add<Items.Materials.RGBAlloy>(HasDefeatedMoonLord)
@@ -201,12 +213,12 @@ namespace ForgottenWawiTech.Content.NPCs.TownNPCs
if (HasDefeatedNiko.IsMet())
{
lines.Add("Astramora's Fallen Angel Feathers? Delicate, pricey, worth every coin.");
lines.Add("Astramora's Angel Feathers? Delicate, pricey, worth every coin.");
lines.Add("I've reinforced the shipping crates just for Astramora's volatile feathers.");
}
else if (Main.hardMode)
{
lines.Add("I've heard whispers of a rat angel around these parts of the galaxy...");
lines.Add("I've heard whispers of a faux angel around these parts of the galaxy...");
}
if (HasDefeatedNeptune.IsMet())
@@ -232,11 +244,11 @@ namespace ForgottenWawiTech.Content.NPCs.TownNPCs
if (HasDefeatedCorruptedSwarm.IsMet())
{
lines.Add("Unstable Matter? Just delicate enough for my clientele.");
lines.Add("Careful with the Unstable Matter; Avalon still has a watchful eye on it.");
lines.Add("Careful with the Unstable Matter; Avalon still has a watchful eye on it. Especially you.");
}
else if (Main.hardMode)
{
lines.Add("Rumor says there is a swarm of corrupted tech out there. If you defeat it, I might have something worth the risk.");
lines.Add("Manage to defeat the Corrupted Swarm, and I am sure I can sneak some of the best material your way.");
}
if (HasDefeatedAnyMechBoss.IsMet())
@@ -246,7 +258,7 @@ namespace ForgottenWawiTech.Content.NPCs.TownNPCs
if (HasDefeatedMoonLord.IsMet())
{
lines.Add("Moon Lord down? Excellent. His trinkets pair nicely with Avalian engineering.");
lines.Add("You have some Moon Lord tech? Excellent. His trinkets pair nicely with Avalian engineering.");
}
if (HasDefeatedExoMechs.IsMet())
@@ -256,7 +268,7 @@ namespace ForgottenWawiTech.Content.NPCs.TownNPCs
}
else if (ModLoader.TryGetMod("CalamityMod", out _))
{
lines.Add("Calamity's Exo Mechs still stalk your skies. Ground them and my singularity cache opens.");
lines.Add("Ground that stupid exo-worm and my singularity cache is yours.");
}
return lines.Count > 0 ? lines[Main.rand.Next(lines.Count)] : "Need something? My shop is always open!";