Client LuaCsForBarotrauma
BarotraumaClient/ClientSource/GameSession/UpgradeManager.cs
1 #nullable enable
3 using System.Linq;
4 
5 namespace Barotrauma
6 {
7  partial class UpgradeManager
8  {
9  partial void UpgradeNPCSpeak(string text, bool isSinglePlayer, Character? character)
10  {
11  if (Level.Loaded?.StartOutpost?.Info?.OutpostNPCs == null) { return; }
12 
13  if (character != null)
14  {
15  character.Speak(text, ChatMessageType.Default);
16  return;
17  }
18 
19  foreach (Character npc in Level.Loaded.StartOutpost.Info.OutpostNPCs.SelectMany(kpv => kpv.Value))
20  {
21  if (npc.CampaignInteractionType == CampaignMode.InteractionType.Upgrade)
22  {
23  npc.Speak(text, ChatMessageType.Default);
24  break;
25  }
26  }
27  }
28  }
29 }