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

◆ DrawNPCDirect_GetHallowBossArmFrame()

static void Terraria.Main.DrawNPCDirect_GetHallowBossArmFrame ( NPC rCurrentNPC,
out int armFrame_Count,
out int armFrameToUseLeft,
out int armFrameToUseRight )
inlinestaticprivate

Definition at line 25013 of file Main.cs.

25014 {
25015 int num = 0;
25016 int num2 = 1;
25017 int num3 = 2;
25018 int num4 = 3;
25019 int num5 = 4;
25020 int num6 = 5;
25021 int num7 = 6;
25022 armFrame_Count = 7;
25023 armFrameToUseLeft = num;
25024 armFrameToUseRight = num;
25025 float num8 = rCurrentNPC.ai[1];
25026 int num9 = num;
25027 switch ((int)rCurrentNPC.ai[0])
25028 {
25029 case 6:
25030 armFrameToUseRight = (armFrameToUseLeft = ((num8 < 6f) ? num3 : ((num8 < 174f) ? num4 : ((!(num8 < 180f)) ? num : num3))));
25031 break;
25032 case 0:
25033 armFrameToUseRight = (armFrameToUseLeft = ((num8 < 106f) ? num2 : ((!(num8 < 110f)) ? num : num3)));
25034 break;
25035 case 2:
25036 case 11:
25037 num9 = ((num8 < 5f) ? num3 : ((!(num8 < 65f)) ? num3 : num4));
25039 break;
25040 case 5:
25041 num9 = ((num8 < 6f) ? num3 : ((!(num8 < 54f)) ? num3 : num4));
25043 break;
25044 case 4:
25045 case 10:
25046 armFrameToUseRight = (armFrameToUseLeft = ((num8 < 6f) ? num3 : ((!(num8 < 54f)) ? num3 : num4)));
25047 break;
25048 case 8:
25049 case 9:
25050 {
25051 num9 = ((num8 < 10f) ? num3 : ((num8 < 20f) ? num4 : ((!(num8 < 30f)) ? num6 : num3)));
25052 int num13 = num9;
25053 int num14 = num9;
25054 int num15 = (int)rCurrentNPC.ai[3];
25055 int num16 = -1;
25056 if (num8 < 30f)
25057 {
25058 if (num15 == -1 * num16)
25059 {
25060 num14 = num2;
25061 }
25062 if (num15 == num16)
25063 {
25064 num13 = num2;
25065 }
25066 }
25067 int num17 = num6;
25068 int num18 = num7;
25069 if (num15 == num16 && num14 == num17)
25070 {
25071 num14 = num18;
25072 }
25073 if (num15 == -1 * num16 && num13 == num17)
25074 {
25075 num13 = num18;
25076 }
25079 break;
25080 }
25081 case 7:
25082 {
25083 bool isExpertMode = GameModeInfo.IsExpertMode;
25084 int num10 = (isExpertMode ? 40 : 60);
25085 int num11 = 0;
25086 int num12 = 5;
25087 if (num8 < (float)(num11 + num12))
25088 {
25090 break;
25091 }
25092 num11 += num12;
25093 if (num8 < (float)(num11 + num10 - num12))
25094 {
25096 break;
25097 }
25098 num11 += num10 - num12;
25099 if (num8 < (float)(num11 + num12))
25100 {
25103 break;
25104 }
25105 num11 += num12;
25106 if (num8 < (float)(num11 + num10 - num12))
25107 {
25110 break;
25111 }
25112 num11 += num10 - num12;
25113 if (num8 < (float)(num11 + num10))
25114 {
25117 break;
25118 }
25119 num11 += num10;
25120 if (num8 < (float)(num11 + num10))
25121 {
25124 break;
25125 }
25126 num11 += num10;
25127 if (isExpertMode)
25128 {
25129 if (num8 < (float)(num11 + num12))
25130 {
25133 break;
25134 }
25135 num11 += num12;
25136 if (num8 < (float)(num11 + num10 - num12))
25137 {
25140 break;
25141 }
25142 num11 += num10 - num12;
25143 if (num8 < (float)(num11 + num12))
25144 {
25147 break;
25148 }
25149 num11 += num12;
25150 if (num8 < (float)(num11 + num10 - num12))
25151 {
25154 break;
25155 }
25156 num11 += num10 - num12;
25157 }
25158 if (num8 >= (float)num11)
25159 {
25162 }
25163 break;
25164 }
25165 case 1:
25166 case 3:
25167 break;
25168 }
25169 }
static GameModeData GameModeInfo
Definition Main.cs:2682

References Terraria.Main.GameModeInfo.

Referenced by Terraria.Main.DrawNPCDirect_HallowBoss().