public static uint GetAddress(PaintingListTypeEnum paintingListType, int index) { uint startAddress; switch (paintingListType) { case PaintingListTypeEnum.Castle: startAddress = CastlePaintingsStartAddress; break; case PaintingListTypeEnum.TTM: startAddress = TtmPaintingsStartAddress; break; case PaintingListTypeEnum.HMC: startAddress = HmcPaintingsStartAddress; break; default: throw new ArgumentOutOfRangeException(); } uint offset = (uint)index * PaintingStructSize; uint segmentedAddress = startAddress + offset; uint address = SegmentationUtilities.DecodeSegmentedAddress(segmentedAddress); return(address); }
public PaintingData(string name, PaintingListTypeEnum paintingListType, int index) { _name = name; _paintingListType = paintingListType; _index = index; }