private void HandleApplyStatsInfluenceToDoubleArrays(StatsInfluenceData.StatsInfluence statsInfluences, int bitmaskOne, int bitmaskTwo, ref float[][] flats, ref float[][] factors) { if (bitmaskOne == 0 || bitmaskTwo == 0) { return; } int currentMaskOne = 1; for (int i = 0; i < flats.Length; i++) { if ((bitmaskOne & currentMaskOne) != 0) { int currentMaskTwo = 1; for (int j = 0; j < flats[i].Length; j++) { if ((bitmaskTwo & currentMaskTwo) != 0) { if (statsInfluences.Data.HasFlatFormula) { flats[i][j] += statsInfluences.FlatAmount; } if (statsInfluences.Data.HasFactorFormula) { factors[i][j] *= statsInfluences.FactorAmount; } } currentMaskTwo <<= 1; } } currentMaskOne <<= 1; } }
public StatsInfluenceData.StatsInfluence[] MakeStatsInfluences() { statsInfluences = new StatsInfluenceData.StatsInfluence[linkedLevelData.StatsInfluencesData.Length]; for (int i = 0; i < statsInfluences.Length; i++) { statsInfluences[i] = new StatsInfluenceData.StatsInfluence(linkedLevelData.StatsInfluencesData[i], level); } return(statsInfluences); }
private void HandleApplyStatsInfluenceToArrays(StatsInfluenceData.StatsInfluence statsInfluences, int bitmask, ref float[] flats, ref float[] factors) { if (bitmask == 0) { return; } int currentMask = 1; for (int i = 0; i < flats.Length; i++) { if ((bitmask & (currentMask)) != 0) { if (statsInfluences.Data.HasFlatFormula) { flats[i] += statsInfluences.FlatAmount; } if (statsInfluences.Data.HasFactorFormula) { factors[i] *= statsInfluences.FactorAmount; } } currentMask <<= 1; } }