private float?a(pwnagebot.LotroInterface.a A_0, int A_1) { int num = A_0.a(A_1); if (num == 0) { return(new float?()); } return(new float?(this.m_reader.ReadFloat(num + 12))); }
private int?b(pwnagebot.LotroInterface.a A_0, int A_1) { int num = A_0.a(A_1); if (num == 0) { return(new int?()); } return(new int?(this.m_reader.ReadDWORD(num + 12))); }
private static string a(MemoryReader A_0, int A_1, int A_2) { Hashtable hashtable1 = new pwnagebot.LotroInterface.a(A_0, e.c, 1).b(); if (!hashtable1.ContainsKey((object)32)) { throw new StringTableException(); } int num1 = (int)hashtable1[(object)32]; int num2 = A_0.ReadDWORD(num1 + 8); if (num2 == 0) { throw new StringTableException(); } Hashtable hashtable2 = new pwnagebot.LotroInterface.a(A_0, num2 + 16, 1).b(); if (!hashtable2.ContainsKey((object)A_1)) { return(""); } int num3 = (int)hashtable2[(object)A_1]; int num4 = A_0.ReadDWORD(num3 + 8); if (num4 == 0) { throw new StringTableException(); } Hashtable hashtable3 = new pwnagebot.LotroInterface.a(A_0, num4 + 76, 1).b(); if (!hashtable3.ContainsKey((object)A_2)) { return(string.Empty); } int num5 = (int)hashtable3[(object)A_2]; int num6 = A_0.ReadDWORD(num5 + 8); if (num6 == 0) { throw new StringTableException(); } int address = A_0.ReadDWORD(num6 + 20); if (address == 0) { throw new StringTableException(); } int iAddress = A_0.ReadDWORD(address); if (address == 0) { throw new StringTableException(); } return(A_0.ReadUnicodeString(iAddress, 256)); }
public void ReloadFellowship() { FileLog instance = Singleton <FileLog> .Instance; int num1 = this.m_reader.ReadDWORD(this.b); if (this.m_reader.ReadDWORD(num1 + 240) <= 0) { return; } int address1 = this.m_reader.ReadDWORD(this.m_reader.ReadDWORD(this.m_reader.ReadDWORD(this.c) + 120) + 24); if (this.m_reader.ReadDWORD(address1) == 6) { int num2 = this.m_reader.ReadDWORD(address1 + 8); int num3 = this.m_reader.ReadDWORD(address1 + 16); for (int index = 0; index < num3; ++index) { int address2 = this.m_reader.ReadDWORD(num2 + index * 8); if (this.m_reader.ReadDWORD(address2) == this.d) { long num4 = (long)this.m_reader.ReadLong(address2 + 96); break; } } } Hashtable hashtable = new pwnagebot.LotroInterface.a(this.m_reader, num1 + 228, 2).b(); ReadOnlyCollection <Entity> entities = this.Entities; this.m_groupList = new List <Entity>(hashtable.Count); LotroMe me = (LotroMe)this.Me; foreach (DictionaryEntry dictionaryEntry in hashtable) { LotroFellowshipEntity fellowshipEntity = new LotroFellowshipEntity(this.m_reader, this.m_reader.ReadDWORD((int)dictionaryEntry.Value + 16)); fellowshipEntity.Update(); if ((long)fellowshipEntity.Guid != (long)me.Guid) { foreach (Entity entity in entities) { LotroEntity lotroEntity = entity as LotroEntity; if (lotroEntity != null && (long)lotroEntity.Guid == (long)fellowshipEntity.Guid) { fellowshipEntity.EntityRef = lotroEntity; break; } } this.m_groupList.Add((Entity)fellowshipEntity); } } }
private void a() { Hashtable hashtable = new pwnagebot.LotroInterface.a(this.m_reader, this.m_reader.ReadDWORD(this.f) + 20, 2).b(); LotroMe me = (LotroMe)this.m_me; foreach (DictionaryEntry dictionaryEntry in hashtable) { if ((long)(ulong)dictionaryEntry.Key == (long)me.Guid) { IDictionaryEnumerator enumerator = new pwnagebot.LotroInterface.a(this.m_reader, this.m_reader.ReadDWORD((int)dictionaryEntry.Value + 16) + 32, 1).b().GetEnumerator(); try { while (enumerator.MoveNext()) { DictionaryEntry current = (DictionaryEntry)enumerator.Current; this.m_reader.ReadDWORD((int)current.Value); if ((int)current.Key == 1) { me.MoralePtr = (int)current.Value; } else if ((int)current.Key == 2) { me.PowerPtr = (int)current.Value; } } break; } finally { IDisposable disposable = enumerator as IDisposable; if (disposable != null) { disposable.Dispose(); } } } } }
private void e() { int num = this.m_reader.ReadDWORD(this.m_entityPtr + 96); if (num == 0) { return; } pwnagebot.LotroInterface.a A_0 = new pwnagebot.LotroInterface.a(this.m_reader, num + 32, 1); this.m = this.b(A_0, 268438084); this.n = this.b(A_0, 268439569); this.o = this.a(A_0, 268439560); this.p = this.b(A_0, 268438067); this.q = this.b(A_0, 268437988); this.r = this.b(A_0, 268438638); this.s = this.b(A_0, 268437184); this.t = this.b(A_0, 268435744); this.u = this.a(A_0, 577); this.v = this.a(A_0, 669); this.w = this.b(A_0, 268441400); this.y = this.b(A_0, 268440364); this.z = this.b(A_0, 846); }
public void Reload() { ulong num1 = this.m_reader.ReadLong(this.e); ulong num2 = 0; if (this.m_injected) { num2 = pwnagebot.LotroInterface.b.d(); } Hashtable hashtable = new pwnagebot.LotroInterface.a(this.m_reader, this.m_reader.ReadDWORD(this.a) + 12, 2).b(); List <Entity> entities_ = new List <Entity>(hashtable.Count); foreach (DictionaryEntry dictionaryEntry in hashtable) { LotroEntity lotroEntity = new LotroEntity(this.m_reader, this.m_reader.ReadDWORD((int)dictionaryEntry.Value + 16)); if (this.m_me == null || lotroEntity.MyId != this.m_me.MyId) { entities_.Add((Entity)lotroEntity); } } Dictionary <int, Entity> entites = this.ParseEntites(entities_); Dictionary <int, Entity> .ValueCollection values = entites.Values; if (this.m_me != null) { this.m_me.Update(); this.b(); int num3 = 0; int num4 = 999; int num5 = 0; foreach (LotroEntity lotroEntity in values) { if (lotroEntity.Durability != -1 && lotroEntity.ValidName && lotroEntity.Type == LotroEntity.LotroEntityType.NODE) { num3 += lotroEntity.Durability; if (lotroEntity.Durability < num4) { num4 = lotroEntity.Durability; } ++num5; } } int num6; if (num5 == 0) { num6 = 999; num4 = 999; } else { num6 = num3 / num5; } LotroMe me = (LotroMe)this.m_me; me.AvgDurability = num6; me.MinDurability = num4; } else { foreach (LotroEntity lotroEntity in values) { if ((long)lotroEntity.Guid == (long)num1) { entites.Remove(lotroEntity.MyId); this.m_me = (Entity) new LotroMe(this.m_reader, lotroEntity.MyId); this.m_me.Update(); this.a(); break; } } } Entity entity = (Entity)null; if ((long)num2 != 0L) { foreach (LotroEntity lotroEntity in values) { if ((long)lotroEntity.Guid == (long)num2) { entity = (Entity)lotroEntity; break; } } } this.m_target = entity; this.m_entityDict = entites; }