TModLoader v1.4.4.9
TModLoader source code documentation
Loading...
Searching...
No Matches

◆ CheckProgressFrostMoon()

void Terraria.NPC.CheckProgressFrostMoon ( )
inlineprivate

Definition at line 84096 of file NPC.cs.

84097 {
84098 //IL_03ec: Unknown result type (might be due to invalid IL or missing references)
84099 if (!Main.snowMoon)
84100 {
84101 return;
84102 }
84103 int num = 0;
84106 switch (waveNumber)
84107 {
84108 case 1:
84109 networkText = Lang.GetInvasionWaveText(2, 338, 350);
84110 break;
84111 case 2:
84112 networkText = Lang.GetInvasionWaveText(3, 338, 350, 342, 348);
84113 break;
84114 case 3:
84115 networkText = Lang.GetInvasionWaveText(4, 344, 338, 350, 342);
84116 break;
84117 case 4:
84118 networkText = Lang.GetInvasionWaveText(5, 344, 338, 350, 348);
84119 break;
84120 case 5:
84121 networkText = Lang.GetInvasionWaveText(6, 344, 350, 348, 347);
84122 break;
84123 case 6:
84124 networkText = Lang.GetInvasionWaveText(7, 346, 342, 350, 338);
84125 break;
84126 case 7:
84127 networkText = Lang.GetInvasionWaveText(8, 346, 347, 350, 348, 351);
84128 break;
84129 case 8:
84130 networkText = Lang.GetInvasionWaveText(9, 346, 344, 348, 347, 342);
84131 break;
84132 case 9:
84133 networkText = Lang.GetInvasionWaveText(10, 346, 344, 351, 338, 347);
84134 break;
84135 case 10:
84136 networkText = Lang.GetInvasionWaveText(11, 345, 352, 338, 342);
84137 break;
84138 case 11:
84139 networkText = Lang.GetInvasionWaveText(12, 345, 344, 342, 343, 338);
84140 break;
84141 case 12:
84142 networkText = Lang.GetInvasionWaveText(13, 345, 346, 342, 352, 343, 347);
84143 break;
84144 case 13:
84145 networkText = Lang.GetInvasionWaveText(14, 345, 346, 344, 343, 351);
84146 break;
84147 case 14:
84148 networkText = Lang.GetInvasionWaveText(15, 345, 346, 344, 343, 347);
84149 break;
84150 case 15:
84151 networkText = Lang.GetInvasionWaveText(16, 345, 346, 344, 343, 352);
84152 break;
84153 case 16:
84154 networkText = Lang.GetInvasionWaveText(17, 345, 346, 344, 343, 351, 347);
84155 break;
84156 case 17:
84157 networkText = Lang.GetInvasionWaveText(18, 345, 346, 344, 343, 348, 351);
84158 break;
84159 case 18:
84160 networkText = Lang.GetInvasionWaveText(19, 345, 346, 344, 343);
84161 break;
84162 case 19:
84163 networkText = Lang.GetInvasionWaveText(-1, 345, 346, 344);
84164 break;
84165 }
84166 float num2 = 0f;
84167 switch (type)
84168 {
84169 case 338:
84170 case 339:
84171 case 340:
84172 num2 = 1f;
84173 break;
84174 case 341:
84175 num2 = 20f;
84176 break;
84177 case 342:
84178 num2 = 2f;
84179 break;
84180 case 343:
84181 num2 = 18f;
84182 break;
84183 case 344:
84184 num2 = 50f;
84185 break;
84186 case 345:
84187 num2 = 150f;
84188 break;
84189 case 346:
84190 num2 = 100f;
84191 break;
84192 case 347:
84193 num2 = 8f;
84194 break;
84195 case 348:
84196 case 349:
84197 num2 = 4f;
84198 break;
84199 case 350:
84200 num2 = 3f;
84201 break;
84202 case 351:
84203 num2 = 10f;
84204 break;
84205 case 352:
84206 num2 = 5f;
84207 break;
84208 }
84210 float num3 = waveKills;
84211 waveKills += num2;
84213 if (waveKills >= (float)num && num != 0)
84214 {
84215 waveKills = 0f;
84216 waveNumber++;
84219 {
84220 if (Main.netMode == 0)
84221 {
84222 Main.NewText(networkText.ToString(), 175, 75);
84223 }
84224 else if (Main.netMode == 2)
84225 {
84226 ChatHelper.BroadcastChatMessage(networkText, new Color(175, 75, 255));
84227 }
84228 if (waveNumber == 15)
84229 {
84231 }
84232 }
84233 }
84234 if (waveKills != num3 && num2 != 0f)
84235 {
84236 if (Main.netMode != 1)
84237 {
84238 Main.ReportInvasionProgress((int)waveKills, num, 1, waveNumber);
84239 }
84240 if (Main.netMode == 2)
84241 {
84242 NetMessage.SendData(78, -1, -1, null, Main.invasionProgress, Main.invasionProgressMax, 1f, waveNumber);
84243 }
84244 }
84245 }
static void BroadcastChatMessage(NetworkText text, Color color, int excludedPlayer=-1)
Definition ChatHelper.cs:51
static readonly NetworkText Empty
Represents text that will be sent over the network in multiplayer and displayed to the receiving user...
static int waveNumber
Definition NPC.cs:476
float GetMoonEventPointScalar()
Definition NPC.cs:84083
static int[] MoonEventRequiredPointsPerWaveLookup
Definition NPC.cs:1247
static float totalInvasionPoints
Definition NPC.cs:472
int type
The NPC ID of this NPC. The NPC ID is a unique number assigned to each NPC loaded into the game....
Definition NPC.cs:990
static float waveKills
Definition NPC.cs:474

References Terraria.Chat.ChatHelper.BroadcastChatMessage(), Terraria.Localization.NetworkText.Empty, Terraria.Lang.GetInvasionWaveText(), Terraria.NPC.GetMoonEventPointScalar(), Terraria.Main.invasionProgress, Terraria.Main.invasionProgressMax, Terraria.NPC.MoonEventRequiredPointsPerWaveLookup, Terraria.Main.netMode, Terraria.Main.NewText(), Terraria.GameContent.Achievements.AchievementsHelper.NotifyProgressionEvent(), Terraria.Main.ReportInvasionProgress(), Terraria.NetMessage.SendData(), Terraria.Main.snowMoon, Terraria.NPC.totalInvasionPoints, Terraria.NPC.type, Terraria.NPC.waveKills, and Terraria.NPC.waveNumber.

Referenced by Terraria.NPC.checkDead().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: