internal void reset() { evaluationFunction = null; factor = new ushort[Color.COLOR_NB]; gamePhase = Phase.PHASE_ENDGAME; key = 0; scalingFunction = new EndgameScaleFactor[Color.COLOR_NB]; value = 0; }
private static void AddValue(string code, EndgameValue function) { Key k; UInt64 kHash; k = key(code, ColorC.WHITE); kHash = (k & ValueOffsetMask) >> ValueOffset; _keyValue[kHash] = k; _valueValue[kHash] = function; _colorValue[kHash] = ColorC.WHITE; ValueIndex++; k = key(code, ColorC.BLACK); kHash = (k & ValueOffsetMask) >> ValueOffset; _keyValue[kHash] = k; _valueValue[kHash] = function; _colorValue[kHash] = ColorC.BLACK; ValueIndex++; }
private static void AddValue(string code, EndgameValue function) { Key k; UInt64 kHash; k = key(code, ColorC.WHITE); kHash = (k & ValueOffsetMask) >> ValueOffset; _keyValue[kHash] = k; _valueValue[kHash] = function; _colorValue[kHash] = ColorC.WHITE; ValueIndex++; k = key(code, ColorC.BLACK); kHash = (k & ValueOffsetMask) >> ValueOffset; _keyValue[kHash] = k; _valueValue[kHash] = function; _colorValue[kHash] = ColorC.BLACK; ValueIndex++; }