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

◆ AI_084_LunaticCultist()

void Terraria.NPC.AI_084_LunaticCultist ( )
inlineprivate

Definition at line 68990 of file NPC.cs.

68991 {
68992 //IL_0496: Unknown result type (might be due to invalid IL or missing references)
68993 //IL_049b: Unknown result type (might be due to invalid IL or missing references)
68994 //IL_0303: Unknown result type (might be due to invalid IL or missing references)
68995 //IL_0308: Unknown result type (might be due to invalid IL or missing references)
68996 //IL_051c: Unknown result type (might be due to invalid IL or missing references)
68997 //IL_0521: Unknown result type (might be due to invalid IL or missing references)
68998 //IL_04dc: Unknown result type (might be due to invalid IL or missing references)
68999 //IL_04e1: Unknown result type (might be due to invalid IL or missing references)
69000 //IL_0853: Unknown result type (might be due to invalid IL or missing references)
69001 //IL_085d: Unknown result type (might be due to invalid IL or missing references)
69002 //IL_0e5a: Unknown result type (might be due to invalid IL or missing references)
69003 //IL_0e5f: Unknown result type (might be due to invalid IL or missing references)
69004 //IL_0e61: Unknown result type (might be due to invalid IL or missing references)
69005 //IL_0e66: Unknown result type (might be due to invalid IL or missing references)
69006 //IL_0e6b: Unknown result type (might be due to invalid IL or missing references)
69007 //IL_0e6d: Unknown result type (might be due to invalid IL or missing references)
69008 //IL_075f: Unknown result type (might be due to invalid IL or missing references)
69009 //IL_0769: Unknown result type (might be due to invalid IL or missing references)
69010 //IL_076e: Unknown result type (might be due to invalid IL or missing references)
69011 //IL_1201: Unknown result type (might be due to invalid IL or missing references)
69012 //IL_1206: Unknown result type (might be due to invalid IL or missing references)
69013 //IL_1208: Unknown result type (might be due to invalid IL or missing references)
69014 //IL_120d: Unknown result type (might be due to invalid IL or missing references)
69015 //IL_1212: Unknown result type (might be due to invalid IL or missing references)
69016 //IL_1214: Unknown result type (might be due to invalid IL or missing references)
69017 //IL_0e23: Unknown result type (might be due to invalid IL or missing references)
69018 //IL_0e28: Unknown result type (might be due to invalid IL or missing references)
69019 //IL_0db7: Unknown result type (might be due to invalid IL or missing references)
69020 //IL_0dbd: Unknown result type (might be due to invalid IL or missing references)
69021 //IL_0dc2: Unknown result type (might be due to invalid IL or missing references)
69022 //IL_0dc7: Unknown result type (might be due to invalid IL or missing references)
69023 //IL_07cd: Unknown result type (might be due to invalid IL or missing references)
69024 //IL_07d2: Unknown result type (might be due to invalid IL or missing references)
69025 //IL_07d7: Unknown result type (might be due to invalid IL or missing references)
69026 //IL_1922: Unknown result type (might be due to invalid IL or missing references)
69027 //IL_1927: Unknown result type (might be due to invalid IL or missing references)
69028 //IL_1929: Unknown result type (might be due to invalid IL or missing references)
69029 //IL_192e: Unknown result type (might be due to invalid IL or missing references)
69030 //IL_11ca: Unknown result type (might be due to invalid IL or missing references)
69031 //IL_11cf: Unknown result type (might be due to invalid IL or missing references)
69032 //IL_1946: Unknown result type (might be due to invalid IL or missing references)
69033 //IL_15eb: Unknown result type (might be due to invalid IL or missing references)
69034 //IL_15f0: Unknown result type (might be due to invalid IL or missing references)
69035 //IL_21b1: Unknown result type (might be due to invalid IL or missing references)
69036 //IL_21b6: Unknown result type (might be due to invalid IL or missing references)
69037 //IL_21b8: Unknown result type (might be due to invalid IL or missing references)
69038 //IL_21bd: Unknown result type (might be due to invalid IL or missing references)
69039 //IL_21c2: Unknown result type (might be due to invalid IL or missing references)
69040 //IL_21c4: Unknown result type (might be due to invalid IL or missing references)
69041 //IL_217a: Unknown result type (might be due to invalid IL or missing references)
69042 //IL_217f: Unknown result type (might be due to invalid IL or missing references)
69043 //IL_145e: Unknown result type (might be due to invalid IL or missing references)
69044 //IL_1468: Unknown result type (might be due to invalid IL or missing references)
69045 //IL_10a9: Unknown result type (might be due to invalid IL or missing references)
69046 //IL_10ae: Unknown result type (might be due to invalid IL or missing references)
69047 //IL_10b0: Unknown result type (might be due to invalid IL or missing references)
69048 //IL_10b7: Unknown result type (might be due to invalid IL or missing references)
69049 //IL_10c1: Unknown result type (might be due to invalid IL or missing references)
69050 //IL_10c6: Unknown result type (might be due to invalid IL or missing references)
69051 //IL_10cb: Unknown result type (might be due to invalid IL or missing references)
69052 //IL_10d0: Unknown result type (might be due to invalid IL or missing references)
69053 //IL_10d2: Unknown result type (might be due to invalid IL or missing references)
69054 //IL_18eb: Unknown result type (might be due to invalid IL or missing references)
69055 //IL_18f0: Unknown result type (might be due to invalid IL or missing references)
69056 //IL_10ef: Unknown result type (might be due to invalid IL or missing references)
69057 //IL_1103: Unknown result type (might be due to invalid IL or missing references)
69058 //IL_1108: Unknown result type (might be due to invalid IL or missing references)
69059 //IL_110d: Unknown result type (might be due to invalid IL or missing references)
69060 //IL_149b: Unknown result type (might be due to invalid IL or missing references)
69061 //IL_14a0: Unknown result type (might be due to invalid IL or missing references)
69062 //IL_14a2: Unknown result type (might be due to invalid IL or missing references)
69063 //IL_14a9: Unknown result type (might be due to invalid IL or missing references)
69064 //IL_14b3: Unknown result type (might be due to invalid IL or missing references)
69065 //IL_14b8: Unknown result type (might be due to invalid IL or missing references)
69066 //IL_14bd: Unknown result type (might be due to invalid IL or missing references)
69067 //IL_14c2: Unknown result type (might be due to invalid IL or missing references)
69068 //IL_14c4: Unknown result type (might be due to invalid IL or missing references)
69069 //IL_2923: Unknown result type (might be due to invalid IL or missing references)
69070 //IL_2928: Unknown result type (might be due to invalid IL or missing references)
69071 //IL_25e2: Unknown result type (might be due to invalid IL or missing references)
69072 //IL_25e7: Unknown result type (might be due to invalid IL or missing references)
69073 //IL_20f1: Unknown result type (might be due to invalid IL or missing references)
69074 //IL_20f6: Unknown result type (might be due to invalid IL or missing references)
69075 //IL_14e1: Unknown result type (might be due to invalid IL or missing references)
69076 //IL_14f5: Unknown result type (might be due to invalid IL or missing references)
69077 //IL_14fa: Unknown result type (might be due to invalid IL or missing references)
69078 //IL_14ff: Unknown result type (might be due to invalid IL or missing references)
69079 //IL_1114: Unknown result type (might be due to invalid IL or missing references)
69080 //IL_111b: Unknown result type (might be due to invalid IL or missing references)
69081 //IL_1120: Unknown result type (might be due to invalid IL or missing references)
69082 //IL_1128: Unknown result type (might be due to invalid IL or missing references)
69083 //IL_112f: Unknown result type (might be due to invalid IL or missing references)
69084 //IL_1136: Unknown result type (might be due to invalid IL or missing references)
69085 //IL_113d: Unknown result type (might be due to invalid IL or missing references)
69086 //IL_0a94: Unknown result type (might be due to invalid IL or missing references)
69087 //IL_0aa3: Unknown result type (might be due to invalid IL or missing references)
69088 //IL_0aa8: Unknown result type (might be due to invalid IL or missing references)
69089 //IL_0aad: Unknown result type (might be due to invalid IL or missing references)
69090 //IL_0aaf: Unknown result type (might be due to invalid IL or missing references)
69091 //IL_0ab4: Unknown result type (might be due to invalid IL or missing references)
69092 //IL_2408: Unknown result type (might be due to invalid IL or missing references)
69093 //IL_2412: Unknown result type (might be due to invalid IL or missing references)
69094 //IL_0f46: Unknown result type (might be due to invalid IL or missing references)
69095 //IL_0f4b: Unknown result type (might be due to invalid IL or missing references)
69096 //IL_0f4f: Unknown result type (might be due to invalid IL or missing references)
69097 //IL_0f59: Unknown result type (might be due to invalid IL or missing references)
69098 //IL_1fef: Unknown result type (might be due to invalid IL or missing references)
69099 //IL_1ff4: Unknown result type (might be due to invalid IL or missing references)
69100 //IL_1ff6: Unknown result type (might be due to invalid IL or missing references)
69101 //IL_1ff9: Unknown result type (might be due to invalid IL or missing references)
69102 //IL_1ffe: Unknown result type (might be due to invalid IL or missing references)
69103 //IL_2003: Unknown result type (might be due to invalid IL or missing references)
69104 //IL_2005: Unknown result type (might be due to invalid IL or missing references)
69105 //IL_2007: Unknown result type (might be due to invalid IL or missing references)
69106 //IL_1f22: Unknown result type (might be due to invalid IL or missing references)
69107 //IL_1f27: Unknown result type (might be due to invalid IL or missing references)
69108 //IL_1f29: Unknown result type (might be due to invalid IL or missing references)
69109 //IL_1f2c: Unknown result type (might be due to invalid IL or missing references)
69110 //IL_1f31: Unknown result type (might be due to invalid IL or missing references)
69111 //IL_1f36: Unknown result type (might be due to invalid IL or missing references)
69112 //IL_1f38: Unknown result type (might be due to invalid IL or missing references)
69113 //IL_1f3a: Unknown result type (might be due to invalid IL or missing references)
69114 //IL_1509: Unknown result type (might be due to invalid IL or missing references)
69115 //IL_1522: Unknown result type (might be due to invalid IL or missing references)
69116 //IL_1527: Unknown result type (might be due to invalid IL or missing references)
69117 //IL_1529: Unknown result type (might be due to invalid IL or missing references)
69118 //IL_1534: Unknown result type (might be due to invalid IL or missing references)
69119 //IL_1539: Unknown result type (might be due to invalid IL or missing references)
69120 //IL_1541: Unknown result type (might be due to invalid IL or missing references)
69121 //IL_1548: Unknown result type (might be due to invalid IL or missing references)
69122 //IL_154f: Unknown result type (might be due to invalid IL or missing references)
69123 //IL_1556: Unknown result type (might be due to invalid IL or missing references)
69124 //IL_26bc: Unknown result type (might be due to invalid IL or missing references)
69125 //IL_26c6: Unknown result type (might be due to invalid IL or missing references)
69126 //IL_2445: Unknown result type (might be due to invalid IL or missing references)
69127 //IL_244a: Unknown result type (might be due to invalid IL or missing references)
69128 //IL_244c: Unknown result type (might be due to invalid IL or missing references)
69129 //IL_2453: Unknown result type (might be due to invalid IL or missing references)
69130 //IL_245d: Unknown result type (might be due to invalid IL or missing references)
69131 //IL_2462: Unknown result type (might be due to invalid IL or missing references)
69132 //IL_2467: Unknown result type (might be due to invalid IL or missing references)
69133 //IL_246c: Unknown result type (might be due to invalid IL or missing references)
69134 //IL_246e: Unknown result type (might be due to invalid IL or missing references)
69135 //IL_2026: Unknown result type (might be due to invalid IL or missing references)
69136 //IL_2013: Unknown result type (might be due to invalid IL or missing references)
69137 //IL_2018: Unknown result type (might be due to invalid IL or missing references)
69138 //IL_201d: Unknown result type (might be due to invalid IL or missing references)
69139 //IL_1f59: Unknown result type (might be due to invalid IL or missing references)
69140 //IL_1f46: Unknown result type (might be due to invalid IL or missing references)
69141 //IL_1f4b: Unknown result type (might be due to invalid IL or missing references)
69142 //IL_1f50: Unknown result type (might be due to invalid IL or missing references)
69143 //IL_1dda: Unknown result type (might be due to invalid IL or missing references)
69144 //IL_1ddf: Unknown result type (might be due to invalid IL or missing references)
69145 //IL_1de1: Unknown result type (might be due to invalid IL or missing references)
69146 //IL_1de4: Unknown result type (might be due to invalid IL or missing references)
69147 //IL_1de9: Unknown result type (might be due to invalid IL or missing references)
69148 //IL_1dee: Unknown result type (might be due to invalid IL or missing references)
69149 //IL_1df0: Unknown result type (might be due to invalid IL or missing references)
69150 //IL_1df2: Unknown result type (might be due to invalid IL or missing references)
69151 //IL_1d0d: Unknown result type (might be due to invalid IL or missing references)
69152 //IL_1d12: Unknown result type (might be due to invalid IL or missing references)
69153 //IL_1d14: Unknown result type (might be due to invalid IL or missing references)
69154 //IL_1d17: Unknown result type (might be due to invalid IL or missing references)
69155 //IL_1d1c: Unknown result type (might be due to invalid IL or missing references)
69156 //IL_1d21: Unknown result type (might be due to invalid IL or missing references)
69157 //IL_1d23: Unknown result type (might be due to invalid IL or missing references)
69158 //IL_1d25: Unknown result type (might be due to invalid IL or missing references)
69159 //IL_16d7: Unknown result type (might be due to invalid IL or missing references)
69160 //IL_16dc: Unknown result type (might be due to invalid IL or missing references)
69161 //IL_16e0: Unknown result type (might be due to invalid IL or missing references)
69162 //IL_16ea: Unknown result type (might be due to invalid IL or missing references)
69163 //IL_1306: Unknown result type (might be due to invalid IL or missing references)
69164 //IL_130b: Unknown result type (might be due to invalid IL or missing references)
69165 //IL_130f: Unknown result type (might be due to invalid IL or missing references)
69166 //IL_1319: Unknown result type (might be due to invalid IL or missing references)
69167 //IL_0f8e: Unknown result type (might be due to invalid IL or missing references)
69168 //IL_0f93: Unknown result type (might be due to invalid IL or missing references)
69169 //IL_0f95: Unknown result type (might be due to invalid IL or missing references)
69170 //IL_0f9c: Unknown result type (might be due to invalid IL or missing references)
69171 //IL_0fa6: Unknown result type (might be due to invalid IL or missing references)
69172 //IL_0fab: Unknown result type (might be due to invalid IL or missing references)
69173 //IL_0fb0: Unknown result type (might be due to invalid IL or missing references)
69174 //IL_0fb5: Unknown result type (might be due to invalid IL or missing references)
69175 //IL_0fb7: Unknown result type (might be due to invalid IL or missing references)
69176 //IL_248b: Unknown result type (might be due to invalid IL or missing references)
69177 //IL_249f: Unknown result type (might be due to invalid IL or missing references)
69178 //IL_24a4: Unknown result type (might be due to invalid IL or missing references)
69179 //IL_24a9: Unknown result type (might be due to invalid IL or missing references)
69180 //IL_2048: Unknown result type (might be due to invalid IL or missing references)
69181 //IL_1f7b: Unknown result type (might be due to invalid IL or missing references)
69182 //IL_1e11: Unknown result type (might be due to invalid IL or missing references)
69183 //IL_1dfe: Unknown result type (might be due to invalid IL or missing references)
69184 //IL_1e03: Unknown result type (might be due to invalid IL or missing references)
69185 //IL_1e08: Unknown result type (might be due to invalid IL or missing references)
69186 //IL_1d44: Unknown result type (might be due to invalid IL or missing references)
69187 //IL_1d31: Unknown result type (might be due to invalid IL or missing references)
69188 //IL_1d36: Unknown result type (might be due to invalid IL or missing references)
69189 //IL_1d3b: Unknown result type (might be due to invalid IL or missing references)
69190 //IL_0fd3: Unknown result type (might be due to invalid IL or missing references)
69191 //IL_0fe4: Unknown result type (might be due to invalid IL or missing references)
69192 //IL_0fe9: Unknown result type (might be due to invalid IL or missing references)
69193 //IL_0fee: Unknown result type (might be due to invalid IL or missing references)
69194 //IL_0fcc: Unknown result type (might be due to invalid IL or missing references)
69195 //IL_0fd1: Unknown result type (might be due to invalid IL or missing references)
69196 //IL_2072: Unknown result type (might be due to invalid IL or missing references)
69197 //IL_1fa5: Unknown result type (might be due to invalid IL or missing references)
69198 //IL_1e33: Unknown result type (might be due to invalid IL or missing references)
69199 //IL_1d66: Unknown result type (might be due to invalid IL or missing references)
69200 //IL_171f: Unknown result type (might be due to invalid IL or missing references)
69201 //IL_1724: Unknown result type (might be due to invalid IL or missing references)
69202 //IL_1726: Unknown result type (might be due to invalid IL or missing references)
69203 //IL_172d: Unknown result type (might be due to invalid IL or missing references)
69204 //IL_1737: Unknown result type (might be due to invalid IL or missing references)
69205 //IL_173c: Unknown result type (might be due to invalid IL or missing references)
69206 //IL_1741: Unknown result type (might be due to invalid IL or missing references)
69207 //IL_1746: Unknown result type (might be due to invalid IL or missing references)
69208 //IL_1748: Unknown result type (might be due to invalid IL or missing references)
69209 //IL_1848: Unknown result type (might be due to invalid IL or missing references)
69210 //IL_1853: Unknown result type (might be due to invalid IL or missing references)
69211 //IL_134e: Unknown result type (might be due to invalid IL or missing references)
69212 //IL_1353: Unknown result type (might be due to invalid IL or missing references)
69213 //IL_1355: Unknown result type (might be due to invalid IL or missing references)
69214 //IL_135c: Unknown result type (might be due to invalid IL or missing references)
69215 //IL_1366: Unknown result type (might be due to invalid IL or missing references)
69216 //IL_136b: Unknown result type (might be due to invalid IL or missing references)
69217 //IL_1370: Unknown result type (might be due to invalid IL or missing references)
69218 //IL_1375: Unknown result type (might be due to invalid IL or missing references)
69219 //IL_1377: Unknown result type (might be due to invalid IL or missing references)
69220 //IL_24c1: Unknown result type (might be due to invalid IL or missing references)
69221 //IL_24c5: Unknown result type (might be due to invalid IL or missing references)
69222 //IL_24ca: Unknown result type (might be due to invalid IL or missing references)
69223 //IL_24cc: Unknown result type (might be due to invalid IL or missing references)
69224 //IL_24e6: Unknown result type (might be due to invalid IL or missing references)
69225 //IL_24ec: Unknown result type (might be due to invalid IL or missing references)
69226 //IL_24ee: Unknown result type (might be due to invalid IL or missing references)
69227 //IL_24f3: Unknown result type (might be due to invalid IL or missing references)
69228 //IL_251f: Unknown result type (might be due to invalid IL or missing references)
69229 //IL_2527: Unknown result type (might be due to invalid IL or missing references)
69230 //IL_253e: Unknown result type (might be due to invalid IL or missing references)
69231 //IL_2545: Unknown result type (might be due to invalid IL or missing references)
69232 //IL_2560: Unknown result type (might be due to invalid IL or missing references)
69233 //IL_2562: Unknown result type (might be due to invalid IL or missing references)
69234 //IL_22ab: Unknown result type (might be due to invalid IL or missing references)
69235 //IL_22b0: Unknown result type (might be due to invalid IL or missing references)
69236 //IL_22b4: Unknown result type (might be due to invalid IL or missing references)
69237 //IL_22be: Unknown result type (might be due to invalid IL or missing references)
69238 //IL_1e5d: Unknown result type (might be due to invalid IL or missing references)
69239 //IL_1d90: Unknown result type (might be due to invalid IL or missing references)
69240 //IL_1764: Unknown result type (might be due to invalid IL or missing references)
69241 //IL_1775: Unknown result type (might be due to invalid IL or missing references)
69242 //IL_177a: Unknown result type (might be due to invalid IL or missing references)
69243 //IL_177f: Unknown result type (might be due to invalid IL or missing references)
69244 //IL_1393: Unknown result type (might be due to invalid IL or missing references)
69245 //IL_13a4: Unknown result type (might be due to invalid IL or missing references)
69246 //IL_13a9: Unknown result type (might be due to invalid IL or missing references)
69247 //IL_13ae: Unknown result type (might be due to invalid IL or missing references)
69248 //IL_138c: Unknown result type (might be due to invalid IL or missing references)
69249 //IL_1391: Unknown result type (might be due to invalid IL or missing references)
69250 //IL_0ff8: Unknown result type (might be due to invalid IL or missing references)
69251 //IL_1011: Unknown result type (might be due to invalid IL or missing references)
69252 //IL_1016: Unknown result type (might be due to invalid IL or missing references)
69253 //IL_1018: Unknown result type (might be due to invalid IL or missing references)
69254 //IL_1023: Unknown result type (might be due to invalid IL or missing references)
69255 //IL_1028: Unknown result type (might be due to invalid IL or missing references)
69256 //IL_1030: Unknown result type (might be due to invalid IL or missing references)
69257 //IL_1037: Unknown result type (might be due to invalid IL or missing references)
69258 //IL_103e: Unknown result type (might be due to invalid IL or missing references)
69259 //IL_1045: Unknown result type (might be due to invalid IL or missing references)
69260 //IL_0b7c: Unknown result type (might be due to invalid IL or missing references)
69261 //IL_0b81: Unknown result type (might be due to invalid IL or missing references)
69262 //IL_2700: Unknown result type (might be due to invalid IL or missing references)
69263 //IL_2705: Unknown result type (might be due to invalid IL or missing references)
69264 //IL_270a: Unknown result type (might be due to invalid IL or missing references)
69265 //IL_2718: Unknown result type (might be due to invalid IL or missing references)
69266 //IL_271d: Unknown result type (might be due to invalid IL or missing references)
69267 //IL_2722: Unknown result type (might be due to invalid IL or missing references)
69268 //IL_2730: Unknown result type (might be due to invalid IL or missing references)
69269 //IL_2736: Unknown result type (might be due to invalid IL or missing references)
69270 //IL_273b: Unknown result type (might be due to invalid IL or missing references)
69271 //IL_2740: Unknown result type (might be due to invalid IL or missing references)
69272 //IL_1a9c: Unknown result type (might be due to invalid IL or missing references)
69273 //IL_1aa1: Unknown result type (might be due to invalid IL or missing references)
69274 //IL_1ab9: Unknown result type (might be due to invalid IL or missing references)
69275 //IL_1abf: Unknown result type (might be due to invalid IL or missing references)
69276 //IL_1ac1: Unknown result type (might be due to invalid IL or missing references)
69277 //IL_1ac6: Unknown result type (might be due to invalid IL or missing references)
69278 //IL_1acd: Unknown result type (might be due to invalid IL or missing references)
69279 //IL_22f3: Unknown result type (might be due to invalid IL or missing references)
69280 //IL_22f8: Unknown result type (might be due to invalid IL or missing references)
69281 //IL_22fa: Unknown result type (might be due to invalid IL or missing references)
69282 //IL_2301: Unknown result type (might be due to invalid IL or missing references)
69283 //IL_230b: Unknown result type (might be due to invalid IL or missing references)
69284 //IL_2310: Unknown result type (might be due to invalid IL or missing references)
69285 //IL_2315: Unknown result type (might be due to invalid IL or missing references)
69286 //IL_231a: Unknown result type (might be due to invalid IL or missing references)
69287 //IL_231c: Unknown result type (might be due to invalid IL or missing references)
69288 //IL_1789: Unknown result type (might be due to invalid IL or missing references)
69289 //IL_17a2: Unknown result type (might be due to invalid IL or missing references)
69290 //IL_17a7: Unknown result type (might be due to invalid IL or missing references)
69291 //IL_17a9: Unknown result type (might be due to invalid IL or missing references)
69292 //IL_17b4: Unknown result type (might be due to invalid IL or missing references)
69293 //IL_17b9: Unknown result type (might be due to invalid IL or missing references)
69294 //IL_17c1: Unknown result type (might be due to invalid IL or missing references)
69295 //IL_17c8: Unknown result type (might be due to invalid IL or missing references)
69296 //IL_17cf: Unknown result type (might be due to invalid IL or missing references)
69297 //IL_17d6: Unknown result type (might be due to invalid IL or missing references)
69298 //IL_13b8: Unknown result type (might be due to invalid IL or missing references)
69299 //IL_13d1: Unknown result type (might be due to invalid IL or missing references)
69300 //IL_13d6: Unknown result type (might be due to invalid IL or missing references)
69301 //IL_13d8: Unknown result type (might be due to invalid IL or missing references)
69302 //IL_13e3: Unknown result type (might be due to invalid IL or missing references)
69303 //IL_13e8: Unknown result type (might be due to invalid IL or missing references)
69304 //IL_13f0: Unknown result type (might be due to invalid IL or missing references)
69305 //IL_13f7: Unknown result type (might be due to invalid IL or missing references)
69306 //IL_13fe: Unknown result type (might be due to invalid IL or missing references)
69307 //IL_1405: Unknown result type (might be due to invalid IL or missing references)
69308 //IL_0bd5: Unknown result type (might be due to invalid IL or missing references)
69309 //IL_0bdf: Unknown result type (might be due to invalid IL or missing references)
69310 //IL_0be5: Unknown result type (might be due to invalid IL or missing references)
69311 //IL_0be7: Unknown result type (might be due to invalid IL or missing references)
69312 //IL_0bf6: Unknown result type (might be due to invalid IL or missing references)
69313 //IL_0bfb: Unknown result type (might be due to invalid IL or missing references)
69314 //IL_0c00: Unknown result type (might be due to invalid IL or missing references)
69315 //IL_0c04: Unknown result type (might be due to invalid IL or missing references)
69316 //IL_0c09: Unknown result type (might be due to invalid IL or missing references)
69317 //IL_0c0b: Unknown result type (might be due to invalid IL or missing references)
69318 //IL_0c10: Unknown result type (might be due to invalid IL or missing references)
69319 //IL_0c12: Unknown result type (might be due to invalid IL or missing references)
69320 //IL_0c17: Unknown result type (might be due to invalid IL or missing references)
69321 //IL_0c3a: Unknown result type (might be due to invalid IL or missing references)
69322 //IL_0c3e: Unknown result type (might be due to invalid IL or missing references)
69323 //IL_0c43: Unknown result type (might be due to invalid IL or missing references)
69324 //IL_2338: Unknown result type (might be due to invalid IL or missing references)
69325 //IL_2349: Unknown result type (might be due to invalid IL or missing references)
69326 //IL_234e: Unknown result type (might be due to invalid IL or missing references)
69327 //IL_2353: Unknown result type (might be due to invalid IL or missing references)
69328 //IL_2331: Unknown result type (might be due to invalid IL or missing references)
69329 //IL_2336: Unknown result type (might be due to invalid IL or missing references)
69330 //IL_0c5a: Unknown result type (might be due to invalid IL or missing references)
69331 //IL_0c61: Unknown result type (might be due to invalid IL or missing references)
69332 //IL_0c66: Unknown result type (might be due to invalid IL or missing references)
69333 //IL_0c6b: Unknown result type (might be due to invalid IL or missing references)
69334 //IL_2779: Unknown result type (might be due to invalid IL or missing references)
69335 //IL_2783: Unknown result type (might be due to invalid IL or missing references)
69336 //IL_279b: Unknown result type (might be due to invalid IL or missing references)
69337 //IL_27a5: Unknown result type (might be due to invalid IL or missing references)
69338 //IL_27ba: Unknown result type (might be due to invalid IL or missing references)
69339 //IL_27f5: Unknown result type (might be due to invalid IL or missing references)
69340 //IL_27c8: Unknown result type (might be due to invalid IL or missing references)
69341 //IL_235d: Unknown result type (might be due to invalid IL or missing references)
69342 //IL_2376: Unknown result type (might be due to invalid IL or missing references)
69343 //IL_237b: Unknown result type (might be due to invalid IL or missing references)
69344 //IL_237d: Unknown result type (might be due to invalid IL or missing references)
69345 //IL_2388: Unknown result type (might be due to invalid IL or missing references)
69346 //IL_238d: Unknown result type (might be due to invalid IL or missing references)
69347 //IL_2395: Unknown result type (might be due to invalid IL or missing references)
69348 //IL_239c: Unknown result type (might be due to invalid IL or missing references)
69349 //IL_23a3: Unknown result type (might be due to invalid IL or missing references)
69350 //IL_23aa: Unknown result type (might be due to invalid IL or missing references)
69351 //IL_2803: Unknown result type (might be due to invalid IL or missing references)
69352 //IL_27d6: Unknown result type (might be due to invalid IL or missing references)
69353 //IL_2811: Unknown result type (might be due to invalid IL or missing references)
69354 //IL_27e4: Unknown result type (might be due to invalid IL or missing references)
69355 //IL_1c5b: Unknown result type (might be due to invalid IL or missing references)
69356 //IL_1c66: Unknown result type (might be due to invalid IL or missing references)
69357 //IL_1ca4: Unknown result type (might be due to invalid IL or missing references)
69358 //IL_1ca9: Unknown result type (might be due to invalid IL or missing references)
69359 //IL_1cc1: Unknown result type (might be due to invalid IL or missing references)
69360 //IL_1cc7: Unknown result type (might be due to invalid IL or missing references)
69361 //IL_1cc9: Unknown result type (might be due to invalid IL or missing references)
69362 //IL_1cce: Unknown result type (might be due to invalid IL or missing references)
69363 //IL_281f: Unknown result type (might be due to invalid IL or missing references)
69364 //IL_1b3c: Unknown result type (might be due to invalid IL or missing references)
69365 //IL_1b41: Unknown result type (might be due to invalid IL or missing references)
69366 //IL_1b59: Unknown result type (might be due to invalid IL or missing references)
69367 //IL_1b5f: Unknown result type (might be due to invalid IL or missing references)
69368 //IL_1b61: Unknown result type (might be due to invalid IL or missing references)
69369 //IL_1b66: Unknown result type (might be due to invalid IL or missing references)
69370 //IL_1b6b: Unknown result type (might be due to invalid IL or missing references)
69371 //IL_1c17: Unknown result type (might be due to invalid IL or missing references)
69372 //IL_1b80: Unknown result type (might be due to invalid IL or missing references)
69373 //IL_1b88: Unknown result type (might be due to invalid IL or missing references)
69374 if (this.ai[0] != -1f && Main.rand.Next(1000) == 0)
69375 {
69376 SoundEngine.PlaySound(29, (int)position.X, (int)position.Y, Main.rand.Next(88, 92));
69377 }
69378 bool expertMode = Main.expertMode;
69379 bool flag = life <= lifeMax / 2;
69380 int num = 120;
69382 if (expertMode)
69383 {
69384 num = 90;
69385 }
69386 if (Main.getGoodWorld)
69387 {
69388 num -= 30;
69389 }
69390 int num12 = 18;
69391 int num23 = 3;
69393 if (expertMode)
69394 {
69395 num12 = 12;
69396 num23 = 4;
69397 }
69398 if (Main.getGoodWorld)
69399 {
69400 num12 = 10;
69401 num23 = 5;
69402 }
69403 int num34 = 80;
69405 if (expertMode)
69406 {
69407 num34 = 40;
69408 }
69409 if (Main.getGoodWorld)
69410 {
69411 num34 -= 20;
69412 }
69413 int num45 = 20;
69414 int num56 = 2;
69415 if (expertMode)
69416 {
69417 num45 = 30;
69418 num56 = 2;
69419 }
69420 int num58 = 20;
69421 int num59 = 3;
69422 bool flag2 = type == 439;
69423 bool flag3 = false;
69424 bool flag4 = false;
69425 if (flag)
69426 {
69427 defense = (int)((float)defDefense * 0.65f);
69428 }
69429 if (!flag2)
69430 {
69431 if (this.ai[3] < 0f || !Main.npc[(int)this.ai[3]].active || Main.npc[(int)this.ai[3]].type != 439)
69432 {
69433 life = 0;
69434 HitEffect();
69435 active = false;
69436 return;
69437 }
69438 this.ai[0] = Main.npc[(int)this.ai[3]].ai[0];
69439 this.ai[1] = Main.npc[(int)this.ai[3]].ai[1];
69440 if (this.ai[0] == 5f)
69441 {
69442 if (justHit)
69443 {
69444 life = 0;
69445 HitEffect();
69446 active = false;
69447 if (Main.netMode != 1)
69448 {
69449 NetMessage.SendData(23, -1, -1, null, whoAmI);
69450 }
69451 NPC obj = Main.npc[(int)this.ai[3]];
69452 obj.ai[0] = 6f;
69453 obj.ai[1] = 0f;
69454 obj.netUpdate = true;
69455 }
69456 }
69457 else
69458 {
69459 flag3 = true;
69460 flag4 = true;
69461 }
69462 }
69463 else if (this.ai[0] == 5f && this.ai[1] >= 120f && this.ai[1] < 420f && justHit)
69464 {
69465 this.ai[0] = 0f;
69466 this.ai[1] = 0f;
69467 this.ai[3] += 1f;
69468 velocity = Vector2.Zero;
69469 netUpdate = true;
69470 List<int> list = new List<int>();
69471 for (int i = 0; i < 200; i++)
69472 {
69473 if (Main.npc[i].active && Main.npc[i].type == 440 && Main.npc[i].ai[3] == (float)whoAmI)
69474 {
69475 list.Add(i);
69476 }
69477 }
69478 int num60 = 10;
69479 if (Main.expertMode)
69480 {
69481 num60 = 3;
69482 }
69483 foreach (int item in list)
69484 {
69485 NPC nPC = Main.npc[item];
69486 if (nPC.localAI[1] == localAI[1] && num60 > 0)
69487 {
69488 num60--;
69489 nPC.life = 0;
69490 nPC.HitEffect();
69491 nPC.active = false;
69492 if (Main.netMode != 1)
69493 {
69494 NetMessage.SendData(23, -1, -1, null, item);
69495 }
69496 }
69497 else if (num60 > 0)
69498 {
69499 num60--;
69500 nPC.life = 0;
69501 nPC.HitEffect();
69502 nPC.active = false;
69503 }
69504 }
69505 Main.projectile[(int)this.ai[2]].ai[1] = -1f;
69506 Main.projectile[(int)this.ai[2]].netUpdate = true;
69507 }
69508 Vector2 center = base.Center;
69509 Player player = Main.player[target];
69510 float num2 = 5600f;
69511 if (target < 0 || target == 255 || player.dead || !player.active || Vector2.Distance(player.Center, center) > num2)
69512 {
69514 player = Main.player[target];
69515 netUpdate = true;
69516 }
69517 if (player.dead || !player.active || Vector2.Distance(player.Center, center) > num2)
69518 {
69519 life = 0;
69520 HitEffect();
69521 active = false;
69522 if (Main.netMode != 1)
69523 {
69524 NetMessage.SendData(28, -1, -1, null, whoAmI, -1f);
69525 }
69526 new List<int>().Add(whoAmI);
69527 for (int j = 0; j < 200; j++)
69528 {
69529 if (Main.npc[j].active && Main.npc[j].type == 440 && Main.npc[j].ai[3] == (float)whoAmI)
69530 {
69531 Main.npc[j].life = 0;
69532 Main.npc[j].HitEffect();
69533 Main.npc[j].active = false;
69534 if (Main.netMode != 1)
69535 {
69536 NetMessage.SendData(28, -1, -1, null, whoAmI, -1f);
69537 }
69538 }
69539 }
69540 }
69541 float num3 = this.ai[3];
69542 if (localAI[0] == 0f)
69543 {
69544 SoundEngine.PlaySound(29, (int)position.X, (int)position.Y, 89);
69545 localAI[0] = 1f;
69546 alpha = 255;
69547 rotation = 0f;
69548 if (Main.netMode != 1)
69549 {
69550 this.ai[0] = -1f;
69551 netUpdate = true;
69552 }
69553 }
69554 if (this.ai[0] == -1f)
69555 {
69556 alpha -= 5;
69557 if (alpha < 0)
69558 {
69559 alpha = 0;
69560 }
69561 this.ai[1] += 1f;
69562 if (this.ai[1] >= 420f)
69563 {
69564 this.ai[0] = 0f;
69565 this.ai[1] = 0f;
69566 netUpdate = true;
69567 }
69568 else if (this.ai[1] > 360f)
69569 {
69570 velocity *= 0.95f;
69571 if (localAI[2] != 13f)
69572 {
69573 SoundEngine.PlaySound(29, (int)position.X, (int)position.Y, 105);
69574 }
69575 localAI[2] = 13f;
69576 }
69577 else if (this.ai[1] > 300f)
69578 {
69579 velocity = -Vector2.UnitY;
69580 localAI[2] = 10f;
69581 }
69582 else if (this.ai[1] > 120f)
69583 {
69584 localAI[2] = 1f;
69585 }
69586 else
69587 {
69588 localAI[2] = 0f;
69589 }
69590 flag3 = true;
69591 flag4 = true;
69592 }
69593 Vector2 center8;
69594 if (this.ai[0] == 0f)
69595 {
69596 if (this.ai[1] == 0f)
69597 {
69599 }
69600 localAI[2] = 10f;
69601 int num4 = Math.Sign(player.Center.X - center.X);
69602 if (num4 != 0)
69603 {
69605 }
69606 this.ai[1] += 1f;
69607 if (this.ai[1] >= 40f && flag2)
69608 {
69609 int num5 = 0;
69610 if (flag)
69611 {
69612 switch ((int)this.ai[3])
69613 {
69614 case 0:
69615 num5 = 0;
69616 break;
69617 case 1:
69618 num5 = 1;
69619 break;
69620 case 2:
69621 num5 = 0;
69622 break;
69623 case 3:
69624 num5 = 5;
69625 break;
69626 case 4:
69627 num5 = 0;
69628 break;
69629 case 5:
69630 num5 = 3;
69631 break;
69632 case 6:
69633 num5 = 0;
69634 break;
69635 case 7:
69636 num5 = 5;
69637 break;
69638 case 8:
69639 num5 = 0;
69640 break;
69641 case 9:
69642 num5 = 2;
69643 break;
69644 case 10:
69645 num5 = 0;
69646 break;
69647 case 11:
69648 num5 = 3;
69649 break;
69650 case 12:
69651 num5 = 0;
69652 break;
69653 case 13:
69654 num5 = 4;
69655 this.ai[3] = -1f;
69656 break;
69657 default:
69658 this.ai[3] = -1f;
69659 break;
69660 }
69661 }
69662 else
69663 {
69664 switch ((int)this.ai[3])
69665 {
69666 case 0:
69667 num5 = 0;
69668 break;
69669 case 1:
69670 num5 = 1;
69671 break;
69672 case 2:
69673 num5 = 0;
69674 break;
69675 case 3:
69676 num5 = 2;
69677 break;
69678 case 4:
69679 num5 = 0;
69680 break;
69681 case 5:
69682 num5 = 3;
69683 break;
69684 case 6:
69685 num5 = 0;
69686 break;
69687 case 7:
69688 num5 = 1;
69689 break;
69690 case 8:
69691 num5 = 0;
69692 break;
69693 case 9:
69694 num5 = 2;
69695 break;
69696 case 10:
69697 num5 = 0;
69698 break;
69699 case 11:
69700 num5 = 4;
69701 this.ai[3] = -1f;
69702 break;
69703 default:
69704 this.ai[3] = -1f;
69705 break;
69706 }
69707 }
69708 int maxValue = 6;
69709 if (life < lifeMax / 3)
69710 {
69711 maxValue = 4;
69712 }
69713 if (life < lifeMax / 4)
69714 {
69715 maxValue = 3;
69716 }
69717 if (expertMode && flag && Main.rand.Next(maxValue) == 0 && num5 != 0 && num5 != 4 && num5 != 5 && CountNPCS(523) < 10)
69718 {
69719 num5 = 6;
69720 }
69721 if (num5 == 0)
69722 {
69723 center8 = player.Center + new Vector2(0f, -100f) - center;
69724 float num6 = (float)Math.Ceiling(((Vector2)(ref center8)).Length() / 50f);
69725 if (num6 == 0f)
69726 {
69727 num6 = 1f;
69728 }
69729 List<int> list2 = new List<int>();
69730 int num7 = 0;
69731 list2.Add(whoAmI);
69732 for (int k = 0; k < 200; k++)
69733 {
69734 if (Main.npc[k].active && Main.npc[k].type == 440 && Main.npc[k].ai[3] == (float)whoAmI)
69735 {
69736 list2.Add(k);
69737 }
69738 }
69739 bool flag5 = list2.Count % 2 == 0;
69740 foreach (int item2 in list2)
69741 {
69742 NPC nPC2 = Main.npc[item2];
69743 Vector2 center2 = nPC2.Center;
69744 float num8 = (float)((num7 + flag5.ToInt() + 1) / 2) * ((float)Math.PI * 2f) * 0.4f / (float)list2.Count;
69745 if (num7 % 2 == 1)
69746 {
69747 num8 *= -1f;
69748 }
69749 if (list2.Count == 1)
69750 {
69751 num8 = 0f;
69752 }
69753 Vector2 spinningpoint3 = new Vector2(0f, -1f);
69754 double radians = num8;
69755 center8 = default(Vector2);
69756 Vector2 vector = Utils.RotatedBy(spinningpoint3, radians, center8) * new Vector2(300f, 200f);
69757 Vector2 vector9 = player.Center + vector - center2;
69758 nPC2.ai[0] = 1f;
69759 nPC2.ai[1] = num6 * 2f;
69760 nPC2.velocity = vector9 / num6;
69761 if (whoAmI >= nPC2.whoAmI)
69762 {
69763 nPC2.position -= nPC2.velocity;
69764 }
69765 nPC2.netUpdate = true;
69766 num7++;
69767 }
69768 }
69769 switch (num5)
69770 {
69771 case 1:
69772 this.ai[0] = 3f;
69773 this.ai[1] = 0f;
69774 break;
69775 case 2:
69776 this.ai[0] = 2f;
69777 this.ai[1] = 0f;
69778 break;
69779 case 3:
69780 this.ai[0] = 4f;
69781 this.ai[1] = 0f;
69782 break;
69783 case 4:
69784 this.ai[0] = 5f;
69785 this.ai[1] = 0f;
69786 break;
69787 }
69788 if (num5 == 5)
69789 {
69790 this.ai[0] = 7f;
69791 this.ai[1] = 0f;
69792 }
69793 if (num5 == 6)
69794 {
69795 this.ai[0] = 8f;
69796 this.ai[1] = 0f;
69797 }
69798 netUpdate = true;
69799 }
69800 }
69801 else if (this.ai[0] == 1f)
69802 {
69803 flag3 = true;
69804 localAI[2] = 10f;
69805 if ((float)(int)this.ai[1] % 2f != 0f && this.ai[1] != 1f)
69806 {
69807 position -= velocity;
69808 }
69809 this.ai[1] -= 1f;
69810 if (this.ai[1] <= 0f)
69811 {
69812 this.ai[0] = 0f;
69813 this.ai[1] = 0f;
69814 this.ai[3] += 1f;
69815 velocity = Vector2.Zero;
69816 netUpdate = true;
69817 }
69818 }
69819 else if (this.ai[0] == 2f)
69820 {
69821 localAI[2] = 11f;
69822 Vector2 vec = Vector2.Normalize(player.Center - center);
69823 if (vec.HasNaNs())
69824 {
69825 ((Vector2)(ref vec))._002Ector((float)direction, 0f);
69826 }
69827 if (this.ai[1] >= 4f && flag2 && (int)(this.ai[1] - 4f) % num == 0)
69828 {
69829 if (Main.netMode != 1)
69830 {
69831 List<int> list3 = new List<int>();
69832 for (int l = 0; l < 200; l++)
69833 {
69834 if (Main.npc[l].active && Main.npc[l].type == 440 && Main.npc[l].ai[3] == (float)whoAmI)
69835 {
69836 list3.Add(l);
69837 }
69838 }
69839 foreach (int item3 in list3)
69840 {
69841 NPC nPC3 = Main.npc[item3];
69842 Vector2 center3 = nPC3.Center;
69843 int num9 = Math.Sign(player.Center.X - center3.X);
69844 if (num9 != 0)
69845 {
69846 nPC3.direction = (nPC3.spriteDirection = num9);
69847 }
69848 if (Main.netMode != 1)
69849 {
69850 vec = Vector2.Normalize(player.Center - center3 + player.velocity * 20f);
69851 if (vec.HasNaNs())
69852 {
69853 vec = new Vector2((float)direction, 0f);
69854 }
69855 Vector2 vector10 = center3 + new Vector2((float)(direction * 30), 12f);
69856 for (int m = 0; m < 1; m++)
69857 {
69858 Vector2 spinninpoint = vec * (6f + (float)Main.rand.NextDouble() * 4f);
69859 spinninpoint = spinninpoint.RotatedByRandom(0.5235987901687622);
69860 Projectile.NewProjectile(GetSpawnSource_ForProjectile(), vector10.X, vector10.Y, spinninpoint.X, spinninpoint.Y, 468, 18, 0f, Main.myPlayer);
69861 }
69862 }
69863 }
69864 }
69865 if (Main.netMode != 1)
69866 {
69867 vec = Vector2.Normalize(player.Center - center + player.velocity * 20f);
69868 if (vec.HasNaNs())
69869 {
69870 ((Vector2)(ref vec))._002Ector((float)direction, 0f);
69871 }
69872 Vector2 vector11 = base.Center + new Vector2((float)(direction * 30), 12f);
69873 for (int n = 0; n < 1; n++)
69874 {
69875 Vector2 vector12 = vec * 4f;
69876 Projectile.NewProjectile(GetSpawnSource_ForProjectile(), vector11.X, vector11.Y, vector12.X, vector12.Y, 464, attackDamage_ForProjectiles, 0f, Main.myPlayer, 0f, 1f);
69877 }
69878 }
69879 }
69880 this.ai[1] += 1f;
69881 if (this.ai[1] >= (float)(4 + num))
69882 {
69883 this.ai[0] = 0f;
69884 this.ai[1] = 0f;
69885 this.ai[3] += 1f;
69886 velocity = Vector2.Zero;
69887 netUpdate = true;
69888 }
69889 }
69890 else if (this.ai[0] == 3f)
69891 {
69892 localAI[2] = 11f;
69893 Vector2 vec2 = Vector2.Normalize(player.Center - center);
69894 if (vec2.HasNaNs())
69895 {
69896 ((Vector2)(ref vec2))._002Ector((float)direction, 0f);
69897 }
69898 if (this.ai[1] >= 4f && flag2 && (int)(this.ai[1] - 4f) % num12 == 0)
69899 {
69900 if ((int)(this.ai[1] - 4f) / num12 == 2)
69901 {
69902 List<int> list4 = new List<int>();
69903 for (int num10 = 0; num10 < 200; num10++)
69904 {
69905 if (Main.npc[num10].active && Main.npc[num10].type == 440 && Main.npc[num10].ai[3] == (float)whoAmI)
69906 {
69907 list4.Add(num10);
69908 }
69909 }
69910 if (Main.netMode != 1)
69911 {
69912 foreach (int item4 in list4)
69913 {
69914 NPC nPC4 = Main.npc[item4];
69915 Vector2 center4 = nPC4.Center;
69916 int num11 = Math.Sign(player.Center.X - center4.X);
69917 if (num11 != 0)
69918 {
69919 nPC4.direction = (nPC4.spriteDirection = num11);
69920 }
69921 if (Main.netMode != 1)
69922 {
69923 vec2 = Vector2.Normalize(player.Center - center4 + player.velocity * 20f);
69924 if (vec2.HasNaNs())
69925 {
69926 vec2 = new Vector2((float)direction, 0f);
69927 }
69928 Vector2 vector13 = center4 + new Vector2((float)(direction * 30), 12f);
69929 for (int num13 = 0; num13 < 1; num13++)
69930 {
69931 Vector2 spinninpoint2 = vec2 * (6f + (float)Main.rand.NextDouble() * 4f);
69932 spinninpoint2 = spinninpoint2.RotatedByRandom(0.5235987901687622);
69933 Projectile.NewProjectile(GetSpawnSource_ForProjectile(), vector13.X, vector13.Y, spinninpoint2.X, spinninpoint2.Y, 468, 18, 0f, Main.myPlayer);
69934 }
69935 }
69936 }
69937 }
69938 }
69939 int num14 = Math.Sign(player.Center.X - center.X);
69940 if (num14 != 0)
69941 {
69943 }
69944 if (Main.netMode != 1)
69945 {
69946 vec2 = Vector2.Normalize(player.Center - center + player.velocity * 20f);
69947 if (vec2.HasNaNs())
69948 {
69949 ((Vector2)(ref vec2))._002Ector((float)direction, 0f);
69950 }
69951 Vector2 vector14 = base.Center + new Vector2((float)(direction * 30), 12f);
69952 for (int num15 = 0; num15 < 1; num15++)
69953 {
69954 Vector2 spinninpoint3 = vec2 * (6f + (float)Main.rand.NextDouble() * 4f);
69955 spinninpoint3 = spinninpoint3.RotatedByRandom(0.5235987901687622);
69956 Projectile.NewProjectile(GetSpawnSource_ForProjectile(), vector14.X, vector14.Y, spinninpoint3.X, spinninpoint3.Y, 467, attackDamage_ForProjectiles2, 0f, Main.myPlayer);
69957 }
69958 }
69959 }
69960 this.ai[1] += 1f;
69961 if (this.ai[1] >= (float)(4 + num12 * num23))
69962 {
69963 this.ai[0] = 0f;
69964 this.ai[1] = 0f;
69965 this.ai[3] += 1f;
69966 velocity = Vector2.Zero;
69967 netUpdate = true;
69968 }
69969 }
69970 else if (this.ai[0] == 4f)
69971 {
69972 if (flag2)
69973 {
69974 localAI[2] = 12f;
69975 }
69976 else
69977 {
69978 localAI[2] = 11f;
69979 }
69980 if (this.ai[1] == 20f && flag2 && Main.netMode != 1)
69981 {
69982 List<int> list5 = new List<int>();
69983 for (int num16 = 0; num16 < 200; num16++)
69984 {
69985 if (Main.npc[num16].active && Main.npc[num16].type == 440 && Main.npc[num16].ai[3] == (float)whoAmI)
69986 {
69987 list5.Add(num16);
69988 }
69989 }
69990 foreach (int item5 in list5)
69991 {
69992 NPC nPC5 = Main.npc[item5];
69993 Vector2 center5 = nPC5.Center;
69994 int num17 = Math.Sign(player.Center.X - center5.X);
69995 if (num17 != 0)
69996 {
69997 nPC5.direction = (nPC5.spriteDirection = num17);
69998 }
69999 if (Main.netMode != 1)
70000 {
70001 Vector2 vector15 = Vector2.Normalize(player.Center - center5 + player.velocity * 20f);
70002 if (vector15.HasNaNs())
70003 {
70004 ((Vector2)(ref vector15))._002Ector((float)direction, 0f);
70005 }
70006 Vector2 vector16 = center5 + new Vector2((float)(direction * 30), 12f);
70007 for (int num18 = 0; num18 < 1; num18++)
70008 {
70009 Vector2 spinninpoint4 = vector15 * (6f + (float)Main.rand.NextDouble() * 4f);
70010 spinninpoint4 = spinninpoint4.RotatedByRandom(0.5235987901687622);
70011 Projectile.NewProjectile(GetSpawnSource_ForProjectile(), vector16.X, vector16.Y, spinninpoint4.X, spinninpoint4.Y, 468, 18, 0f, Main.myPlayer);
70012 }
70013 }
70014 }
70015 if ((int)(this.ai[1] - 20f) % num34 == 0)
70016 {
70017 Projectile.NewProjectile(GetSpawnSource_ForProjectile(), base.Center.X, base.Center.Y - 100f, 0f, 0f, 465, attackDamage_ForProjectiles3, 0f, Main.myPlayer);
70018 }
70019 }
70020 this.ai[1] += 1f;
70021 if (this.ai[1] >= (float)(20 + num34))
70022 {
70023 this.ai[0] = 0f;
70024 this.ai[1] = 0f;
70025 this.ai[3] += 1f;
70026 velocity = Vector2.Zero;
70027 netUpdate = true;
70028 }
70029 }
70030 else if (this.ai[0] == 5f)
70031 {
70032 localAI[2] = 10f;
70033 if (Vector2.Normalize(player.Center - center).HasNaNs())
70034 {
70035 new Vector2((float)direction, 0f);
70036 }
70037 if (this.ai[1] >= 0f && this.ai[1] < 30f)
70038 {
70039 flag3 = true;
70040 flag4 = true;
70041 float num19 = (this.ai[1] - 0f) / 30f;
70042 alpha = (int)(num19 * 255f);
70043 }
70044 else if (this.ai[1] >= 30f && this.ai[1] < 90f)
70045 {
70046 if (this.ai[1] == 30f && Main.netMode != 1 && flag2)
70047 {
70048 localAI[1] += 1f;
70049 Vector2 spinningpoint = default(Vector2);
70050 ((Vector2)(ref spinningpoint))._002Ector(180f, 0f);
70051 List<int> list6 = new List<int>();
70052 for (int num20 = 0; num20 < 200; num20++)
70053 {
70054 if (Main.npc[num20].active && Main.npc[num20].type == 440 && Main.npc[num20].ai[3] == (float)whoAmI)
70055 {
70056 list6.Add(num20);
70057 }
70058 }
70059 int num21 = 6 - list6.Count;
70060 if (num21 > 2)
70061 {
70062 num21 = 2;
70063 }
70064 int num22 = list6.Count + num21 + 1;
70065 float[] array = new float[num22];
70066 for (int num24 = 0; num24 < array.Length; num24++)
70067 {
70068 int num61 = num24;
70069 Vector2 center9 = base.Center;
70070 Vector2 spinningpoint4 = spinningpoint;
70071 double radians2 = (float)num24 * ((float)Math.PI * 2f) / (float)num22 - (float)Math.PI / 2f;
70072 center8 = default(Vector2);
70073 array[num61] = Vector2.Distance(center9 + spinningpoint4.RotatedBy(radians2, center8), player.Center);
70074 }
70075 int num25 = 0;
70076 for (int num26 = 1; num26 < array.Length; num26++)
70077 {
70078 if (array[num25] > array[num26])
70079 {
70080 num25 = num26;
70081 }
70082 }
70083 num25 = ((num25 >= num22 / 2) ? (num25 - num22 / 2) : (num25 + num22 / 2));
70084 int num27 = num21;
70085 for (int num28 = 0; num28 < array.Length; num28++)
70086 {
70087 if (num25 != num28)
70088 {
70089 Vector2 center10 = base.Center;
70090 Vector2 spinningpoint5 = spinningpoint;
70091 double radians3 = (float)num28 * ((float)Math.PI * 2f) / (float)num22 - (float)Math.PI / 2f;
70092 center8 = default(Vector2);
70093 Vector2 center6 = center10 + spinningpoint5.RotatedBy(radians3, center8);
70094 if (num27-- > 0)
70095 {
70096 int num29 = NewNPC(GetSpawnSourceForNPCFromNPCAI(), (int)center6.X, (int)center6.Y + height / 2, 440, whoAmI);
70097 Main.npc[num29].ai[3] = whoAmI;
70098 Main.npc[num29].netUpdate = true;
70099 Main.npc[num29].localAI[1] = localAI[1];
70100 }
70101 else
70102 {
70103 int num30 = list6[-num27 - 1];
70104 Main.npc[num30].Center = center6;
70105 NetMessage.SendData(23, -1, -1, null, num30);
70106 }
70107 }
70108 }
70109 this.ai[2] = Projectile.NewProjectile(GetSpawnSource_ForProjectile(), base.Center.X, base.Center.Y, 0f, 0f, 490, 0, 0f, Main.myPlayer, 0f, whoAmI);
70110 Vector2 center11 = base.Center;
70111 Vector2 spinningpoint6 = spinningpoint;
70112 double radians4 = (float)num25 * ((float)Math.PI * 2f) / (float)num22 - (float)Math.PI / 2f;
70113 center8 = default(Vector2);
70114 base.Center = center11 + spinningpoint6.RotatedBy(radians4, center8);
70115 netUpdate = true;
70116 list6.Clear();
70117 }
70118 flag3 = true;
70119 flag4 = true;
70120 alpha = 255;
70121 if (flag2)
70122 {
70123 Vector2 vector2 = Main.projectile[(int)this.ai[2]].Center;
70124 vector2 -= base.Center;
70125 if (vector2 == Vector2.Zero)
70126 {
70127 vector2 = -Vector2.UnitY;
70128 }
70129 ((Vector2)(ref vector2)).Normalize();
70130 if (Math.Abs(vector2.Y) < 0.77f)
70131 {
70132 localAI[2] = 11f;
70133 }
70134 else if (vector2.Y < 0f)
70135 {
70136 localAI[2] = 12f;
70137 }
70138 else
70139 {
70140 localAI[2] = 10f;
70141 }
70142 int num31 = Math.Sign(vector2.X);
70143 if (num31 != 0)
70144 {
70146 }
70147 }
70148 else
70149 {
70150 Vector2 vector3 = Main.projectile[(int)Main.npc[(int)this.ai[3]].ai[2]].Center;
70151 vector3 -= base.Center;
70152 if (vector3 == Vector2.Zero)
70153 {
70154 vector3 = -Vector2.UnitY;
70155 }
70156 ((Vector2)(ref vector3)).Normalize();
70157 if (Math.Abs(vector3.Y) < 0.77f)
70158 {
70159 localAI[2] = 11f;
70160 }
70161 else if (vector3.Y < 0f)
70162 {
70163 localAI[2] = 12f;
70164 }
70165 else
70166 {
70167 localAI[2] = 10f;
70168 }
70169 int num32 = Math.Sign(vector3.X);
70170 if (num32 != 0)
70171 {
70173 }
70174 }
70175 }
70176 else if (this.ai[1] >= 90f && this.ai[1] < 120f)
70177 {
70178 flag3 = true;
70179 flag4 = true;
70180 float num33 = (this.ai[1] - 90f) / 30f;
70181 alpha = 255 - (int)(num33 * 255f);
70182 }
70183 else if (this.ai[1] >= 120f && this.ai[1] < 420f)
70184 {
70185 flag4 = true;
70186 alpha = 0;
70187 if (flag2)
70188 {
70189 Vector2 vector4 = Main.projectile[(int)this.ai[2]].Center;
70190 vector4 -= base.Center;
70191 if (vector4 == Vector2.Zero)
70192 {
70193 vector4 = -Vector2.UnitY;
70194 }
70195 ((Vector2)(ref vector4)).Normalize();
70196 if (Math.Abs(vector4.Y) < 0.77f)
70197 {
70198 localAI[2] = 11f;
70199 }
70200 else if (vector4.Y < 0f)
70201 {
70202 localAI[2] = 12f;
70203 }
70204 else
70205 {
70206 localAI[2] = 10f;
70207 }
70208 int num35 = Math.Sign(vector4.X);
70209 if (num35 != 0)
70210 {
70212 }
70213 }
70214 else
70215 {
70216 Vector2 vector5 = Main.projectile[(int)Main.npc[(int)this.ai[3]].ai[2]].Center;
70217 vector5 -= base.Center;
70218 if (vector5 == Vector2.Zero)
70219 {
70220 vector5 = -Vector2.UnitY;
70221 }
70222 ((Vector2)(ref vector5)).Normalize();
70223 if (Math.Abs(vector5.Y) < 0.77f)
70224 {
70225 localAI[2] = 11f;
70226 }
70227 else if (vector5.Y < 0f)
70228 {
70229 localAI[2] = 12f;
70230 }
70231 else
70232 {
70233 localAI[2] = 10f;
70234 }
70235 int num36 = Math.Sign(vector5.X);
70236 if (num36 != 0)
70237 {
70239 }
70240 }
70241 }
70242 this.ai[1] += 1f;
70243 if (this.ai[1] >= 420f)
70244 {
70245 flag4 = true;
70246 this.ai[0] = 0f;
70247 this.ai[1] = 0f;
70248 this.ai[3] += 1f;
70249 velocity = Vector2.Zero;
70250 netUpdate = true;
70251 }
70252 }
70253 else if (this.ai[0] == 6f)
70254 {
70255 localAI[2] = 13f;
70256 this.ai[1] += 1f;
70257 if (this.ai[1] >= 120f)
70258 {
70259 this.ai[0] = 0f;
70260 this.ai[1] = 0f;
70261 this.ai[3] += 1f;
70262 velocity = Vector2.Zero;
70263 netUpdate = true;
70264 }
70265 }
70266 else if (this.ai[0] == 7f)
70267 {
70268 localAI[2] = 11f;
70269 Vector2 vec3 = Vector2.Normalize(player.Center - center);
70270 if (vec3.HasNaNs())
70271 {
70272 ((Vector2)(ref vec3))._002Ector((float)direction, 0f);
70273 }
70274 if (this.ai[1] >= 4f && flag2 && (int)(this.ai[1] - 4f) % num45 == 0)
70275 {
70276 if ((int)(this.ai[1] - 4f) / num45 == 2)
70277 {
70278 List<int> list7 = new List<int>();
70279 for (int num37 = 0; num37 < 200; num37++)
70280 {
70281 if (Main.npc[num37].active && Main.npc[num37].type == 440 && Main.npc[num37].ai[3] == (float)whoAmI)
70282 {
70283 list7.Add(num37);
70284 }
70285 }
70286 foreach (int item6 in list7)
70287 {
70288 NPC nPC6 = Main.npc[item6];
70289 Vector2 center7 = nPC6.Center;
70290 int num38 = Math.Sign(player.Center.X - center7.X);
70291 if (num38 != 0)
70292 {
70293 nPC6.direction = (nPC6.spriteDirection = num38);
70294 }
70295 if (Main.netMode != 1)
70296 {
70297 vec3 = Vector2.Normalize(player.Center - center7 + player.velocity * 20f);
70298 if (vec3.HasNaNs())
70299 {
70300 vec3 = new Vector2((float)direction, 0f);
70301 }
70302 Vector2 vector6 = center7 + new Vector2((float)(direction * 30), 12f);
70303 for (int num39 = 0; (float)num39 < 5f; num39++)
70304 {
70305 Vector2 spinninpoint5 = vec3 * (6f + (float)Main.rand.NextDouble() * 4f);
70306 spinninpoint5 = spinninpoint5.RotatedByRandom(1.2566370964050293);
70307 Projectile.NewProjectile(GetSpawnSource_ForProjectile(), vector6.X, vector6.Y, spinninpoint5.X, spinninpoint5.Y, 468, 18, 0f, Main.myPlayer);
70308 }
70309 }
70310 }
70311 }
70312 int num40 = Math.Sign(player.Center.X - center.X);
70313 if (num40 != 0)
70314 {
70316 }
70317 if (Main.netMode != 1)
70318 {
70319 vec3 = Vector2.Normalize(player.Center - center + player.velocity * 20f);
70320 if (vec3.HasNaNs())
70321 {
70322 ((Vector2)(ref vec3))._002Ector((float)direction, 0f);
70323 }
70324 Vector2 vector7 = base.Center + new Vector2((float)(direction * 30), 12f);
70325 float num41 = 8f;
70326 float num42 = (float)Math.PI * 2f / 25f;
70327 for (int num43 = 0; (float)num43 < 5f; num43++)
70328 {
70329 Vector2 spinningpoint2 = vec3 * num41;
70331 double radians5 = num42 * (float)num43 - ((float)Math.PI * 2f / 5f - num42) / 2f;
70332 center8 = default(Vector2);
70334 float ai = (Main.rand.NextFloat() - 0.5f) * 0.3f * ((float)Math.PI * 2f) / 60f;
70335 int num44 = NewNPC(GetSpawnSourceForNPCFromNPCAI(), (int)vector7.X, (int)vector7.Y + 7, 522, 0, 0f, ai, spinningpoint2.X, spinningpoint2.Y);
70336 Main.npc[num44].velocity = spinningpoint2;
70337 Main.npc[num44].netUpdate = true;
70338 }
70339 }
70340 }
70341 this.ai[1] += 1f;
70342 if (this.ai[1] >= (float)(4 + num45 * num56))
70343 {
70344 this.ai[0] = 0f;
70345 this.ai[1] = 0f;
70346 this.ai[3] += 1f;
70347 velocity = Vector2.Zero;
70348 netUpdate = true;
70349 }
70350 }
70351 else if (this.ai[0] == 8f)
70352 {
70353 localAI[2] = 13f;
70354 if (this.ai[1] >= 4f && flag2 && (int)(this.ai[1] - 4f) % num58 == 0)
70355 {
70356 List<int> list8 = new List<int>();
70357 for (int num46 = 0; num46 < 200; num46++)
70358 {
70359 if (Main.npc[num46].active && Main.npc[num46].type == 440 && Main.npc[num46].ai[3] == (float)whoAmI)
70360 {
70361 list8.Add(num46);
70362 }
70363 }
70364 int num47 = list8.Count + 1;
70365 if (num47 > 3)
70366 {
70367 num47 = 3;
70368 }
70369 int num48 = Math.Sign(player.Center.X - center.X);
70370 if (num48 != 0)
70371 {
70373 }
70374 if (Main.netMode != 1)
70375 {
70376 for (int num49 = 0; num49 < num47; num49++)
70377 {
70378 Point point = base.Center.ToTileCoordinates();
70379 Point point2 = Main.player[target].Center.ToTileCoordinates();
70380 Vector2 vector8 = Main.player[target].Center - base.Center;
70381 int num50 = 20;
70382 int num51 = 3;
70383 int num52 = 7;
70384 int num53 = 2;
70385 int num54 = 0;
70386 bool flag6 = false;
70387 if (((Vector2)(ref vector8)).Length() > 2000f)
70388 {
70389 flag6 = true;
70390 }
70391 while (!flag6 && num54 < 100)
70392 {
70393 num54++;
70394 int num55 = Main.rand.Next(point2.X - num50, point2.X + num50 + 1);
70395 int num57 = Main.rand.Next(point2.Y - num50, point2.Y + num50 + 1);
70396 if ((num57 < point2.Y - num52 || num57 > point2.Y + num52 || num55 < point2.X - num52 || num55 > point2.X + num52) && (num57 < point.Y - num51 || num57 > point.Y + num51 || num55 < point.X - num51 || num55 > point.X + num51) && !Main.tile[num55, num57].nactive())
70397 {
70398 bool flag7 = true;
70399 if (flag7 && Collision.SolidTiles(num55 - num53, num55 + num53, num57 - num53, num57 + num53))
70400 {
70401 flag7 = false;
70402 }
70403 if (flag7)
70404 {
70405 NewNPC(GetSpawnSourceForNPCFromNPCAI(), num55 * 16 + 8, num57 * 16 + 8, 523, 0, whoAmI);
70406 flag6 = true;
70407 break;
70408 }
70409 }
70410 }
70411 }
70412 }
70413 }
70414 this.ai[1] += 1f;
70415 if (this.ai[1] >= (float)(4 + num58 * num59))
70416 {
70417 this.ai[0] = 0f;
70418 this.ai[1] = 0f;
70419 this.ai[3] += 1f;
70420 velocity = Vector2.Zero;
70421 netUpdate = true;
70422 }
70423 }
70424 if (!flag2)
70425 {
70426 this.ai[3] = num3;
70427 }
70429 chaseable = !flag4;
70430 }
static SlotId PlaySound(in SoundStyle? style, Vector2? position=null, SoundUpdateCallback? updateCallback=null)
Attempts to play a sound style with the provided sound style (if it's not null), and returns a valid ...
Vector2 Center
Definition Entity.cs:70
int whoAmI
The index of this Entity within its specific array. These arrays track the entities in the world....
Definition Entity.cs:16
Vector2 velocity
The velocity of this Entity in world coordinates per tick.
Definition Entity.cs:33
Vector2 position
The position of this Entity in world coordinates.
Definition Entity.cs:28
bool active
If true, the Entity actually exists within the game world. Within the specific entity array,...
Definition Entity.cs:21
int height
The height of this Entity's hitbox, in pixels.
Definition Entity.cs:51
int defense
How resistant to damage this NPC is. The List of NPCs wiki pagecan be useful for finding appropriat...
Definition NPC.cs:1033
static int CountNPCS(int Type)
Returns the number of active NPC in the world of the given NPC type (F:Terraria.NPC....
Definition NPC.cs:106585
float[] localAI
Acts like F:Terraria.NPC.ai, but does not sync to the server. Many vanilla T:Terraria....
Definition NPC.cs:1003
int spriteDirection
Definition NPC.cs:1143
bool chaseable
Definition NPC.cs:702
int lifeMax
The maximum life of this NPC.
Definition NPC.cs:1077
void TargetClosest(bool faceTarget=true)
Definition NPC.cs:83247
int defDefense
Stores the value of F:Terraria.NPC.defense at the end of SetDefaults. Useful for scaling defense in A...
Definition NPC.cs:1043
float[] ai
An array with 4 slots used for any sort of data storage, which is occasionally synced from the server...
Definition NPC.cs:997
bool dontTakeDamage
Definition NPC.cs:1160
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
int alpha
0 is opaque, and 255 is transparent. Note that this is the opposite of how alpha is typically express...
Definition NPC.cs:1092
float rotation
Definition NPC.cs:1116
IEntitySource GetSpawnSourceForNPCFromNPCAI()
Definition NPC.cs:107568
static int NewNPC(IEntitySource source, int X, int Y, int Type, int Start=0, float ai0=0f, float ai1=0f, float ai2=0f, float ai3=0f, int Target=255)
Spawns an NPC into the game world with the given type. This method should not be called on multipla...
Definition NPC.cs:91239
int GetAttackDamage_ForProjectiles(float normalDamage, float expertDamage)
Definition NPC.cs:1891
bool justHit
Definition NPC.cs:1015
int life
The current life of the NPC. Automatically set to the value of F:Terraria.NPC.lifeMax at the end of S...
Definition NPC.cs:1072
IEntitySource GetSpawnSource_ForProjectile()
Definition NPC.cs:107558
bool netUpdate
Definition NPC.cs:1130
int target
Definition NPC.cs:1019
void HitEffect(int hitDirection=0, double dmg=10.0, bool? instantKill=null)
Definition NPC.cs:92191

References Terraria.Entity.active, Terraria.NPC.ai, Terraria.NPC.alpha, Terraria.Entity.Center, Terraria.NPC.chaseable, Terraria.NPC.CountNPCS(), Terraria.Player.dead, Terraria.NPC.defDefense, Terraria.NPC.defense, Terraria.Entity.direction, Terraria.NPC.dontTakeDamage, Terraria.Main.expertMode, Terraria.NPC.GetAttackDamage_ForProjectiles(), Terraria.Main.getGoodWorld, Terraria.NPC.GetSpawnSource_ForProjectile(), Terraria.NPC.GetSpawnSourceForNPCFromNPCAI(), Terraria.Entity.height, Terraria.NPC.HitEffect(), Terraria.NPC.justHit, Terraria.NPC.life, Terraria.NPC.lifeMax, Terraria.NPC.localAI, Terraria.Main.myPlayer, Terraria.Main.netMode, Terraria.NPC.netUpdate, Terraria.NPC.NewNPC(), Terraria.Projectile.NewProjectile(), Terraria.Main.npc, Terraria.Main.player, Terraria.Audio.SoundEngine.PlaySound(), Terraria.Entity.position, Terraria.Main.projectile, Terraria.Main.rand, Terraria.Utils.RotatedBy(), Terraria.NPC.rotation, Terraria.NetMessage.SendData(), Terraria.Collision.SolidTiles(), Terraria.NPC.spriteDirection, Terraria.NPC.target, Terraria.NPC.TargetClosest(), Terraria.Main.tile, Terraria.NPC.type, Terraria.Entity.velocity, and Terraria.Entity.whoAmI.

Referenced by Terraria.NPC.VanillaAI_Inner().

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