Code:
private void getPlusInformation(uint ID, byte Plus)
{
var itemtype = ID;
var type = GetItemType(ID);
var sort = GetItemSort(ID);
if (type == ItemType.Backsword || type == ItemType.Bow)
{
}
else if (sort == ItemSort.Weapon1)
{
itemtype = (itemtype / 100000) * 100000 + (itemtype % 1000) + 44000;
}
else if (sort == ItemSort.Weapon2)
{
itemtype = (itemtype / 100000) * 100000 + (itemtype % 1000) + 55000;
}
else if (sort == ItemSort.Helmet || sort == ItemSort.Armor || sort == ItemSort.Shield)
{
itemtype = (itemtype / 1000) * 1000 + (itemtype % 1000);
}
itemtype = itemtype / 10 * 10;
byte itemType = (byte)(ID / 10000);
ushort itemType2 = (ushort)(ID / 1000);
if (itemType == 14 && itemType2 != 143 && itemType2 != 142 && itemType2 != 141)//armors
{
ID = (uint)(
(((uint)(ID / 1000)) * 1000) + // [3] = 0
((ID % 100))
);
}
else if (itemType2 == 141 || itemType2 == 142 || itemType2 == 143 || itemType == 13 || itemType == 11 || itemType2 == 123 || itemType == 30 || itemType == 20 || itemType == 12 || itemType == 15 || itemType == 16 || itemType == 50 || itemType2 == 421 || itemType2 == 601 || itemType2 == 610 || itemType == 90)//Necky bow bag
{
ID = (uint)(
ID - (ID % 10) // [5] = 0
);
}
else
{
byte head = (byte)(ID / 100000);
ID = (uint)(
((head * 100000) + (head * 10000) + (head * 1000)) + // [1] = [0], [2] = [0]
((ID % 1000) - (ID % 10)) // [5] = 0
);
}
_PlusInformation = new ConquerItemPlusInformation();
if (Plus > 0)
{
SafeDictionary<byte, ConquerItemPlusInformation> pInfo = null;
if (!PlusInformations.TryGetValue(itemtype, out pInfo))
PlusInformations.TryGetValue(ID, out pInfo);
if (pInfo == null)
if (!pInfo.TryGetValue(Plus, out _PlusInformation))
_PlusInformation = new ConquerItemPlusInformation();
}
}






