Пример #1
0
        public SNOReader(DiabloIII d3, int address)
        {
            data = new Dictionary<int, int>();

            int ptr = d3.memory.ReadInt(address, d3.offsets[Offset.SNOOffset1]);
            int count = d3.memory.ReadInt(ptr + d3.offsets[Offset.SNOOffset2]);
            int curOff = d3.memory.ReadInt(ptr + d3.offsets[Offset.SNOOffset3]) + d3.offsets[Offset.SNOOffset4];

            for (int i = 0; i <= 4096; i++)
            {
                int curSNOoff = d3.memory.ReadInt(curOff);
                int curSNOid = d3.memory.ReadInt(curSNOoff);

                if (curSNOoff == 0 && curSNOid == 0)
                    break;

                try
                {
                    data.Add(curSNOid, curSNOoff);
                }
                catch (Exception)
                {
                    //removed logging because it was not needed
                }

                curOff += 0x10;
            }
        }
Пример #2
0
 public Item(DiabloIII d3, int address)
     : base(d3, address)
 {
     GetItemData();
 }
Пример #3
0
 public Actor(Actor other)
 {
     this.address = other.address;
     this.d3 = other.d3;
     CachedID = ActorID;
 }
Пример #4
0
 public Actor(DiabloIII d3, int address)
 {
     this.d3 = d3;
     this.address = address;
     CachedID = ActorID;
 }
Пример #5
0
 public ItemFinder(int processID)
 {
     d3 = new DiabloIII(processID);
     IgnoreList = new List<ACDActor>();
 }
Пример #6
0
 public ItemFinder()
 {
     d3 = new DiabloIII();
     IgnoreList = new List<ACDActor>();
 }
Пример #7
0
 public ACDActor(DiabloIII d3, int address)
     : base(d3, address)
 {
     CachedACDID = ACDID;
     GetACDAddress();
 }
Пример #8
0
 public ItemFinder(int processID)
 {
     d3         = new DiabloIII(processID);
     IgnoreList = new List <ACDActor>();
 }
Пример #9
0
 public ItemFinder()
 {
     d3         = new DiabloIII();
     IgnoreList = new List <ACDActor>();
 }