private void a(object A_0, NetworkMessageEventArgs A_1) { if ((PluginCore.cq.n.b && ((A_1.get_Message().get_Type() == 0xf7b0) && (A_1.get_Message().Value <int>("event") == 0x1c0))) && (this.a != 0)) { if (!dh.a(this.a)) { this.b(0); } else { int num = A_1.get_Message().Value <int>("object"); float num2 = A_1.get_Message().Value <float>("health"); if (num == this.a) { string str = PluginCore.cq.p.d(this.a).g(); v v = PluginCore.cq.x.c["SpeciesMembers"].a(0, k.a(str)); if (v == null) { if (PluginCore.cq.p.d(num) != null) { PluginCore.cq.x.b(num); } } else { this.f = DateTimeOffset.Now; this.a((int)Math.Round((double)(num2 * k.e(v[2])))); } } } } }
private void f(NetworkMessageEventArgs A_0) { int num = A_0.get_Message().Value <int>("object"); cv n = new cv(); if ((num == this.o) && (this.n != null)) { n = this.n; this.n = null; } MessageStruct struct2 = A_0.get_Message().Struct("game"); MessageStruct struct3 = A_0.get_Message().Struct("model"); MessageStruct struct4 = A_0.get_Message().Struct("physics"); n.k = num; this.e(n, struct2); this.d(n, struct3); this.c(n, struct4); if ((struct2.Value <int>("behavior") & 0x1000) != 0) { n.l = (struct4.Value <int>("unknown") & 4) > 0; } this.e(n); this.c(n); if (this.b != null) { this.b(n); } }
private void p(NetworkMessageEventArgs A_0) { int o = this.o; int num2 = A_0.get_Message().Value <int>("key"); int num3 = A_0.get_Message().Value <int>("value"); if (this.i.ContainsKey(o)) { int num4 = num2; dt dt = (dt)num2; if (dt == dt.f) { this.i[o].a[0xd000010] = num3; num4 = 0xd000010; } else { this.i[o].a[num2] = num3; } if (this.e != null) { this.e(this.i[o]); } if (this.g != null) { this.g(this.i[o], (dt)num4); } } }
private void k(NetworkMessageEventArgs A_0) { int num = A_0.get_Message().Value <int>("object"); int num2 = A_0.get_Message().Value <int>("key"); int num3 = A_0.get_Message().Value <int>("value"); this.b(num, num2, num3); }
private static void a(object A_0, NetworkMessageEventArgs A_1) { if ((((c && (A_1.get_Message().get_Type() == 0xf74c)) && (A_1.get_Message().Value <int>("object") == PluginCore.cg)) && (A_1.get_Message().Value <byte>("animation_type") == 0)) && (A_1.get_Message().Value <uint>("flags") == 0)) { b = DateTimeOffset.Now; c = false; } }
private void j(NetworkMessageEventArgs A_0) { int o = this.o; int num2 = A_0.get_Message().Value <int>("key"); int num3 = A_0.get_Message().Value <int>("value"); this.a(o, num2, num3); }
private void b(object A_0, NetworkMessageEventArgs A_1) { if (A_1.get_Message().get_Type() == 0xf7b1) { int num2 = A_1.get_Message().Value <int>("action"); if (num2 <= 200) { switch (num2) { case 0x53: case 0x54: case 0x55: case 0x56: case 200: case 8: case 9: case 0x19: case 0x1a: case 0x1b: return; case 0x4a: this.a(); return; case 10: this.c = DateTimeOffset.Now; return; case 0x35: this.a(); return; case 0x36: this.a(); return; } } else if (num2 <= 0x1bf) { if (((num2 == 0xcd) || (num2 == 0x1b7)) || (num2 == 0x1bf)) { } } else { switch (num2) { case 0x263: case 0xf61c: case 0xf753: return; } } } }
private void b(NetworkMessageEventArgs A_0) { this.u = new o(); this.u.c = A_0.get_Message().Value <int>("merchant"); this.u.d = A_0.get_Message().Value <int>("buyCategories"); this.u.e = A_0.get_Message().Value <int>("unknown1"); this.u.f = A_0.get_Message().Value <int>("buyValue"); this.u.g = A_0.get_Message().Value <int>("unknown2"); this.u.h = A_0.get_Message().Value <float>("buyRate"); this.u.i = A_0.get_Message().Value <float>("sellRate"); int num = A_0.get_Message().Value <int>("itemCount"); for (int i = 0; i < num; i++) { cv cv = new cv(); MessageStruct struct2 = A_0.get_Message().Struct("items").Struct(i); cv.u = struct2.Value <int>("count"); cv.k = struct2.Value <int>("object"); this.e(cv, struct2.Struct("game")); cv.v = true; this.u.a(cv); } if (this.t != null) { this.t(this, null); } }
private void a(object A_0, NetworkMessageEventArgs A_1) { try { if ((A_1.get_Message().get_Type() == 0xf7b0) && (((int)A_1.get_Message().get_Item("event")) == 0x2c0)) { int key = (int)A_1.get_Message().Struct("fellow").get_Item("fellow"); if (key != this.e.aw.get_CharacterFilter().get_Id()) { if (!this.i.ContainsKey(key)) { this.i.Add(key, new eo.b()); if (dh.b(key)) { this.i[key].j = PluginCore.cq.aw.get_WorldFilter().get_Item(key).get_Name(); } } this.i[key].a = DateTimeOffset.Now; this.i[key].b = (int)A_1.get_Message().Struct("fellow").get_Item("maxHealth"); this.i[key].c = (int)A_1.get_Message().Struct("fellow").get_Item("maxStam"); this.i[key].d = (int)A_1.get_Message().Struct("fellow").get_Item("maxMana"); this.i[key].e = (int)A_1.get_Message().Struct("fellow").get_Item("curHealth"); this.i[key].f = (int)A_1.get_Message().Struct("fellow").get_Item("curStam"); this.i[key].g = (int)A_1.get_Message().Struct("fellow").get_Item("curMana"); } } } catch (Exception exception) { ad.a(exception); } }
private void e(NetworkMessageEventArgs A_0) { int key = A_0.get_Message().Value <int>("object"); if (this.i.ContainsKey(key)) { cv cv = this.i[key]; MessageStruct struct2 = A_0.get_Message().Struct("position"); this.a(cv, struct2); } }
private void h(NetworkMessageEventArgs A_0) { int key = A_0.get_Message().Value <int>("object"); if (this.i.ContainsKey(key)) { this.d(this.i[key], A_0.get_Message().Struct("model")); if (this.e != null) { this.e(this.i[key]); } } }
private void a(object A_0, NetworkMessageEventArgs A_1) { try { if ((A_1.get_Message().get_Type() == 0xf7b1) && (A_1.get_Message().Value <int>("action") == 0xa1)) { this.p = true; } } catch (Exception exception) { this.q(exception, A_1); } }
private void a(object A_0, NetworkMessageEventArgs A_1) { try { MessageStruct struct2; switch (this.c()) { case dr.b.b: if (A_1.get_Message().get_Type() == 0xf74c) { try { if ((((A_1.get_Message().Value <int>("object") != PluginCore.cq.aw.get_CharacterFilter().get_Id()) || (A_1.get_Message().Value <short>("activity") != 0)) || ((A_1.get_Message().Value <byte>("animation_type") != 0) || (A_1.get_Message().Value <byte>("type_flags") != 0))) || (((A_1.get_Message().Value <short>("stance") != 0x3d) || ((A_1.get_Message().Value <int>("flags") & 0xf80) == 0)) || (A_1.get_Message().Struct("animations").Struct(0).Value <short>("animation") != 0x7e))) { return; } } catch (Exception) { return; } this.a(dr.b.c); } return; case dr.b.c: if (A_1.get_Message().get_Type() == 0xf745) { struct2 = A_1.get_Message().Struct("game"); if (struct2.Value <string>("name") == this.d) { break; } } return; default: return; } if (((struct2.Value <int>("flags1") & 0x4000) != 0) && (struct2.Value <int>("container") == PluginCore.cg)) { this.a(dr.b.a); } } catch (Exception exception) { ad.a(exception); } }
private void l(NetworkMessageEventArgs A_0) { int key = A_0.get_Message().Value <int>("object"); int num2 = A_0.get_Message().Value <int>("key"); string str = A_0.get_Message().Value <string>("value"); if (this.i.ContainsKey(key)) { this.i[key].b[num2] = str; if (this.e != null) { this.e(this.i[key]); } } }
private void m(NetworkMessageEventArgs A_0) { int key = A_0.get_Message().Value <int>("object"); int num2 = A_0.get_Message().Value <int>("key"); bool flag = A_0.get_Message().Value <int>("value") != 0; if (this.i.ContainsKey(key)) { this.i[key].c[num2] = flag; if (this.e != null) { this.e(this.i[key]); } } }
private void q(NetworkMessageEventArgs A_0) { int key = A_0.get_Message().Value <int>("item"); int num2 = A_0.get_Message().Value <int>("count"); int num3 = A_0.get_Message().Value <int>("value"); if (this.i.ContainsKey(key)) { this.i[key].a[0xd000006] = num2; this.i[key].a[0x13] = num3; if (this.e != null) { this.e(this.i[key]); } } }
private void c(NetworkMessageEventArgs A_0) { int key = A_0.get_Message().Value <int>("item"); int num2 = A_0.get_Message().Value <int>("container"); if (this.i.ContainsKey(key)) { this.b(this.i[key]); this.i[key].a[0xd000002] = num2; this.c(this.i[key]); this.a(this.i[key]); if (this.c != null) { this.c(this.i[key]); } } }
private void a(object A_0, NetworkMessageEventArgs A_1) { try { if (PluginCore.cq.n.b && ((A_1.get_Message().get_Type() == 0xf7b1) && (A_1.get_Message().Value <int>("action") == 10))) { this.g = DateTimeOffset.Now; if (this.k) { this.b(); } } } catch (Exception exception) { ad.a(exception); } }
private void a(object A_0, NetworkMessageEventArgs A_1) { if (this.a() == s.b.d) { if (A_1.get_Message().get_Type() == 0xf7b0) { if ((A_1.get_Message().Value <int>("event") == 650) && (A_1.get_Message().Value <int>("type") == 0x4c8)) { this.f++; } } else if ((((((((((A_1.get_Message().get_Type() == 0xf74c) && (A_1.get_Message().Value <int>("object") == PluginCore.cq.aw.get_CharacterFilter().get_Id())) && (A_1.get_Message().Value <short>("activity") == 0)) && (A_1.get_Message().Value <byte>("animation_type") == 0)) && (A_1.get_Message().Value <byte>("type_flags") == 0)) && (A_1.get_Message().Value <short>("stance") == 0x49)) && ((A_1.get_Message().Value <int>("flags") & 0xf80) <= 0)) && ((A_1.get_Message().Value <int>("flags") & -68) <= 0)) && (A_1.get_Message().Value <short>("stance2") == 0x49)) && (A_1.get_Message().Value <short>("animation_1") == 0xe1)) { this.a(s.b.e); this.f = 0; this.d = false; } } }
private void o(NetworkMessageEventArgs A_0) { int o = this.o; int num2 = A_0.get_Message().Value <int>("key"); long num3 = A_0.get_Message().Value <long>("value"); if (this.i.ContainsKey(o)) { this.i[o].e[num2] = num3; if (this.e != null) { this.e(this.i[o]); } if (this.h != null) { this.h(this.i[o], (ce)num2); } } }
private void r(NetworkMessageEventArgs A_0) { try { this.b(A_0.get_Message().Value <int>("object")); } catch (Exception exception) { this.q(exception, null); } }
private void a(object A_0, NetworkMessageEventArgs A_1) { int num2 = A_1.get_Message().get_Type(); if (num2 == 0xf74c) { if ((A_1.get_Message().Value <int>("object") == PluginCore.cg) && ((A_1.get_Message().Value <byte>("type_flags") & 1) > 0)) { this.c = DateTimeOffset.Now; } } else if ((num2 == 0xf7b0) && (A_1.get_Message().Value <int>("event") == 0x1c7)) { A_1.get_Message().Value <int>("unknown"); this.b--; if (this.b < 0) { this.b = 0; } } }
private void b(object A_0, NetworkMessageEventArgs A_1) { try { byte[] buffer = A_1.get_Message().get_RawData(); if ((A_1.get_Message().get_Type() == 0xf7b1) && (A_1.get_Message().Value <int>("action") == 0xa6)) { if (buffer[12] == 0) { this.a = false; } else if (buffer[12] == 1) { this.a = true; } } } catch (Exception exception) { ad.a(exception); } }
private void n(NetworkMessageEventArgs A_0) { int key = A_0.get_Message().Value <int>("object"); int num2 = A_0.get_Message().Value <int>("key"); int num3 = A_0.get_Message().Value <int>("value"); if (this.i.ContainsKey(key)) { dt dt = (dt)num2; if (dt == dt.f) { this.i[key].a[0xd000010] = num3; } else { this.i[key].a[num2] = num3; } if (this.e != null) { this.e(this.i[key]); } } }
private void a(object A_0, NetworkMessageEventArgs A_1) { try { if ((PluginCore.cg != 0) && (A_1.get_Message().get_Type() == 0xf7b0)) { if (A_1.get_Message().Value <int>("event") == 0x52) { PluginCore.cq.r.b(); this.j = 0; } else if (A_1.get_Message().Value <int>("event") == 0x196) { int num = A_1.get_Message().Value <int>("container"); if (dh.b(num)) { if (PluginCore.cq.aw.get_WorldFilter().get_Item(num).get_Container() == 0) { this.j = num; PluginCore.cq.r.a(A_1.get_Message().Value <int>("itemCount")); } } else { PluginCore.cq.r.b(); this.j = 0; } } else if (A_1.get_Message().Value <int>("event") == 0x22) { if (A_1.get_Message().Value <int>("item") == this.j) { PluginCore.cq.r.b(); this.j = 0; } } else if (((A_1.get_Message().Value <int>("event") == 0x2eb) && (this.k.IsMatch(A_1.get_Message().Value <string>("text")) || this.l.IsMatch(A_1.get_Message().Value <string>("text")))) && this.e.ContainsKey(this.i)) { this.e[this.i].g = DateTimeOffset.Now; } } } catch (Exception exception) { ad.a(exception); } }
internal static void a(Exception A_0, NetworkMessageEventArgs A_1) { if (A_1 == null) { a(A_0); } else { StringBuilder builder = new StringBuilder(); foreach (byte num in A_1.get_Message().get_RawData()) { builder.AppendFormat("{0:X2}:", num); } builder.Append(";;;;"); a(new Exception(A_0.ToString() + "\n\nPKT: " + builder.ToString())); } }
private void g(NetworkMessageEventArgs A_0) { int key = A_0.get_Message().Value <int>("object"); if (((((this.i.ContainsKey(key) && (this.i[key].c() == ObjectClass.Door)) && (A_0.get_Message().Value <short>("activity") == 0)) && (A_0.get_Message().Value <byte>("animation_type") == 0)) && (A_0.get_Message().Value <short>("stance") == 0x3d)) && (A_0.get_Message().Value <int>("flags") == 2)) { this.i[key].l = !this.i[key].l; if (this.e != null) { this.e(this.i[key]); } if (this.f != null) { this.f(this.i[key]); } } }
private void a(object A_0, NetworkMessageEventArgs A_1) { switch (A_1.get_Message().get_Type()) { case 0x24: { int num = A_1.get_Message().Value <int>("object"); this.a(num); return; } case 0xf7b0: switch (A_1.get_Message().Value <int>("event")) { case 0x22: { int num2 = A_1.get_Message().Value <int>("item"); this.a(num2); return; } case 0x23: { int num4 = A_1.get_Message().Value <int>("item"); bk bk = A_1.get_Message().Value <int>("slot"); this.a(num4, bk); return; } case 410: { int num3 = A_1.get_Message().Value <int>("item"); this.a(num3); return; } } break; } }
private void a(NetworkMessageEventArgs A_0) { int num = A_0.get_Message().Value <int>("flags"); int key = A_0.get_Message().Value <int>("object"); if (this.i.ContainsKey(key)) { cv cv = this.i[key]; cv.j = true; cv.p = DateTimeOffset.Now; if ((num & 1) > 0) { short num3 = A_0.get_Message().Value <short>("dwordCount"); for (int i = 0; i < num3; i++) { int num5 = A_0.get_Message().Struct("dwords").Struct(i).Value <int>("key"); int num6 = A_0.get_Message().Struct("dwords").Struct(i).Value <int>("value"); cv.a[num5] = num6; } } if ((num & 2) > 0) { short num7 = A_0.get_Message().Value <short>("booleanCount"); for (int j = 0; j < num7; j++) { int num9 = A_0.get_Message().Struct("booleans").Struct(j).Value <int>("key"); bool flag = A_0.get_Message().Struct("booleans").Struct(j).Value <int>("value") != 0; cv.c[num9] = flag; } } if ((num & 4) > 0) { short num10 = A_0.get_Message().Value <short>("doubleCount"); for (int k = 0; k < num10; k++) { int num12 = A_0.get_Message().Struct("doubles").Struct(k).Value <int>("key"); double num13 = A_0.get_Message().Struct("doubles").Struct(k).Value <double>("value"); cv.d[num12] = num13; } } if ((num & 8) > 0) { short num14 = A_0.get_Message().Value <short>("stringCount"); for (int m = 0; m < num14; m++) { int num16 = A_0.get_Message().Struct("strings").Struct(m).Value <int>("key"); string str = A_0.get_Message().Struct("strings").Struct(m).Value <string>("value"); cv.b[num16] = str; } } if ((num & 0x1000) > 0) { short num17 = A_0.get_Message().Value <short>("resourceCount"); for (int n = 0; n < num17; n++) { int num19 = A_0.get_Message().Struct("resources").Struct(n).Value <int>("key"); int num20 = A_0.get_Message().Struct("resources").Struct(n).Value <int>("value"); switch (num19) { case 8: { cv.a[0xd000001] = num20; } } cv.g[num19] = num20; } } if ((num & 0x2000) > 0) { short num21 = A_0.get_Message().Value <short>("qwordCount"); for (int num22 = 0; num22 < num21; num22++) { int num23 = A_0.get_Message().Struct("qwords").Struct(num22).Value <int>("key"); long num24 = A_0.get_Message().Struct("qwords").Struct(num22).Value <long>("value"); cv.e[num23] = num24; } } cv.h.Clear(); if ((num & 0x10) > 0) { short num25 = A_0.get_Message().Value <short>("spellCount"); for (int num26 = 0; num26 < num25; num26++) { int item = (ushort)A_0.get_Message().Struct("spells").Struct(num26).Value <short>("spell"); cv.h.Add(item); } } if ((num & 0x80) > 0) { cv.d[0xa000000] = (double)A_0.get_Message().Value <float>("protSlashing"); cv.d[0xa000001] = (double)A_0.get_Message().Value <float>("protPiercing"); cv.d[0xa000002] = (double)A_0.get_Message().Value <float>("protBludgeoning"); cv.d[0xa000006] = (double)A_0.get_Message().Value <float>("protCold"); cv.d[0xa000005] = (double)A_0.get_Message().Value <float>("protFire"); cv.d[0xa000003] = (double)A_0.get_Message().Value <float>("protAcid"); cv.d[0xa000004] = (double)A_0.get_Message().Value <float>("protLightning"); } if ((num & 0x100) > 0) { int num28 = A_0.get_Message().Value <int>("flags1"); cv.a[0xd800000] = num28; cv.a[0xd800001] = A_0.get_Message().Value <int>("health"); cv.a[0xd800002] = A_0.get_Message().Value <int>("healthMax"); if ((num28 & 8) > 0) { cv.a[0xd800003] = A_0.get_Message().Value <int>("strength"); cv.a[0xd800004] = A_0.get_Message().Value <int>("endurance"); cv.a[0xd800005] = A_0.get_Message().Value <int>("quickness"); cv.a[0xd800006] = A_0.get_Message().Value <int>("coordination"); cv.a[0xd800007] = A_0.get_Message().Value <int>("focus"); cv.a[0xd800008] = A_0.get_Message().Value <int>("self"); cv.a[0xd800009] = A_0.get_Message().Value <int>("stamina"); cv.a[0xd80000a] = A_0.get_Message().Value <int>("mana"); cv.a[0xd80000b] = A_0.get_Message().Value <int>("staminaMax"); cv.a[0xd80000c] = A_0.get_Message().Value <int>("manaMax"); } if ((num28 & 1) > 0) { cv.a[0xd80000d] = A_0.get_Message().Value <short>("attrHighlight"); cv.a[0xd80000e] = A_0.get_Message().Value <short>("attrColor"); } } if ((num & 0x20) > 0) { cv.a[0xd000021] = A_0.get_Message().Value <int>("weapType"); cv.a[0xd00001f] = A_0.get_Message().Value <int>("weapSpeed"); cv.a[0xd000020] = A_0.get_Message().Value <int>("weapSkill"); cv.a[0xd000022] = A_0.get_Message().Value <int>("weapDamage"); cv.d[0xa00000b] = A_0.get_Message().Value <double>("weapVariance"); cv.d[0xa00000e] = A_0.get_Message().Value <double>("weapModifier"); cv.d[0xa00000d] = A_0.get_Message().Value <double>("weapPower"); cv.d[0xa00000c] = A_0.get_Message().Value <double>("weapAttack"); } if (this.a != null) { this.a(cv); } } }
private void d(NetworkMessageEventArgs A_0) { cv n; this.o = A_0.get_Message().Value <int>("character"); foreach (KeyValuePair <int, cv> pair in this.i) { this.c(pair.Value); } if (this.i.ContainsKey(this.o)) { n = this.i[this.o]; } else { this.n = new cv(); n = this.n; n.k = this.o; } MessageStruct struct2 = A_0.get_Message().Struct("properties"); int num = struct2.Value <int>("flags"); if ((num & 1) > 0) { short num2 = struct2.Value <short>("dwordCount"); for (int i = 0; i < num2; i++) { int num4 = struct2.Struct("dwords").Struct(i).Value <int>("key"); int num5 = struct2.Struct("dwords").Struct(i).Value <int>("value"); n.a[num4] = num5; } } if ((num & 0x80) > 0) { short num6 = struct2.Value <short>("qwordCount"); for (int j = 0; j < num6; j++) { int num8 = struct2.Struct("qwords").Struct(j).Value <int>("key"); long num9 = struct2.Struct("qwords").Struct(j).Value <long>("value"); n.e[num8] = num9; } } if ((num & 2) > 0) { short num10 = struct2.Value <short>("booleanCount"); for (int k = 0; k < num10; k++) { int num12 = struct2.Struct("booleans").Struct(k).Value <int>("key"); bool flag = struct2.Struct("booleans").Struct(k).Value <int>("value") != 0; n.c[num12] = flag; } } if ((num & 4) > 0) { short num13 = struct2.Value <short>("doubleCount"); for (int m = 0; m < num13; m++) { int num15 = struct2.Struct("doubles").Struct(m).Value <int>("key"); double num16 = struct2.Struct("doubles").Struct(m).Value <double>("value"); n.d[num15] = num16; } } if ((num & 0x10) > 0) { short num17 = struct2.Value <short>("stringCount"); for (int num18 = 0; num18 < num17; num18++) { int num19 = struct2.Struct("strings").Struct(num18).Value <int>("key"); string str = struct2.Struct("strings").Struct(num18).Value <string>("value"); n.b[num19] = str; } } if ((num & 0x40) > 0) { short num20 = struct2.Value <short>("resourceCount"); for (int num21 = 0; num21 < num20; num21++) { int num22 = struct2.Struct("resources").Struct(num21).Value <int>("key"); int num23 = struct2.Struct("resources").Struct(num21).Value <int>("value"); switch (num22) { case 8: { n.a[0xd000001] = num23; } } n.g[num22] = num23; } } if (this.e != null) { this.e(n); } }