public static string GetShieldPath(int id, int job, int sex) { if (id == 0) { return(null); } // Dual weapon (based on range id) if (id > 500 && (id < 2100 || id > 2200)) { return(GetWeaponPath(id, job, sex)); } var baseJob = (int)JobHelper.GetBaseClass((ushort)job, sex); var path = BodyPath[baseJob] == null ? BodyPath[0] : BodyPath[baseJob]; var baseClass = path.KoreanTo1252(); // ItemID to View Id var ViewID = id; if ((ItemDB.ContainsKey(id)) && (ItemDB[id].ClassNum >= 0)) { ViewID = ItemDB[id].ClassNum; } ItemTable.Shields.TryGetValue(ViewID, out var shield); return($"data/sprite/\xb9\xe6\xc6\xd0/{baseClass}/{baseClass}_{SexTable[sex]}_{shield ?? ItemTable.Shields[1]}"); }
public static string GetWeaponPath(int id, int job, int sex) { if (id == 0) { return(null); } var baseJob = (int)JobHelper.GetBaseClass((ushort)job, sex); var path = BodyPath[baseJob] == null ? BodyPath[0] : BodyPath[baseJob]; var baseClass = path.KoreanTo1252(); // ItemID to View Id var ViewID = id; if ((ItemDB.ContainsKey(id)) && (ItemDB[id].ClassNum >= 0)) { ViewID = ItemDB[id].ClassNum; } ItemTable.Weapons.TryGetValue((WeaponType)ViewID, out var weapon); return($"data/sprite/\xc0\xce\xb0\xa3\xc1\xb7/{baseClass}/{baseClass}_{SexTable[sex]}{weapon.KoreanTo1252() ?? $"_{ViewID}"}"); }