public synchronized void add( String desc, long dependencyMask, double armorStrength, int wornOrder, double clothWeight, double leatherWeight, double metalWeight) { if (allCodes.length > 61) return; long newCode = 0; if (allCodes.length > 0) newCode = (long) 1 << (allCodes.length - 1); allCodes = Arrays.copyOf(allCodes, allCodes.length + 1); allCodes[allCodes.length - 1] = newCode; descs = Arrays.copyOf(descs, descs.length + 1); descs[descs.length - 1] = desc; updescs = Arrays.copyOf(updescs, updescs.length + 1); updescs[updescs.length - 1] = desc.toUpperCase(); dependencyMasks = Arrays.copyOf(dependencyMasks, dependencyMasks.length + 1); dependencyMasks[dependencyMasks.length - 1] = dependencyMask; armorWeights = Arrays.copyOf(armorWeights, armorWeights.length + 1); armorWeights[armorWeights.length - 1] = armorStrength; wornWeightPoints = Arrays.copyOf(wornWeightPoints, wornWeightPoints.length + 1); double[] newRow = {clothWeight, leatherWeight, metalWeight}; wornWeightPoints[wornWeightPoints.length - 1] = newRow; insertInOrder(newCode, wornOrder); }
public synchronized void replace( int codeIndex, String desc, long dependencyMask, double armorStrength, int wornOrder, double clothWeight, double leatherWeight, double metalWeight) { if (codeIndex <= 0) return; descs[codeIndex] = desc; updescs[codeIndex] = desc.toUpperCase(); dependencyMasks[codeIndex] = dependencyMask; armorWeights[codeIndex] = armorStrength; double[] newRow = {clothWeight, leatherWeight, metalWeight}; wornWeightPoints[codeIndex] = newRow; insertInOrder(allCodes[codeIndex], wornOrder); }