internal ScenarioFunctionBlockBase(BinaryReader binaryReader) { this.flags = (Flags)binaryReader.ReadInt32(); this.name = binaryReader.ReadString32(); this.periodSeconds = binaryReader.ReadSingle(); this.scalePeriodBy = binaryReader.ReadShortBlockIndex1(); this.function = (Function)binaryReader.ReadInt16(); this.scaleFunctionBy = binaryReader.ReadShortBlockIndex1(); this.wobbleFunction = (WobbleFunctionCurveUsedForWobble)binaryReader.ReadInt16(); this.wobblePeriodSeconds = binaryReader.ReadSingle(); this.wobbleMagnitudePercent = binaryReader.ReadSingle(); this.squareWaveThreshold = binaryReader.ReadSingle(); this.stepCount = binaryReader.ReadInt16(); this.mapTo = (MapTo)binaryReader.ReadInt16(); this.sawtoothCount = binaryReader.ReadInt16(); this.invalidName_ = binaryReader.ReadBytes(2); this.scaleResultBy = binaryReader.ReadShortBlockIndex1(); this.boundsMode = (BoundsModeControlsHowBoundsBelowAreUsed)binaryReader.ReadInt16(); this.bounds = binaryReader.ReadVector2(); this.invalidName_0 = binaryReader.ReadBytes(4); this.invalidName_1 = binaryReader.ReadBytes(2); this.turnOffWith = binaryReader.ReadShortBlockIndex1(); this.invalidName_2 = binaryReader.ReadBytes(16); this.invalidName_3 = binaryReader.ReadBytes(16); }
public ScenarioFunctionBlock(BinaryReader binaryReader) { this.flags = (Flags)binaryReader.ReadInt32(); this.name = binaryReader.ReadString32(); this.periodSecondsPeriodForAboveFunctionLowerValuesMakeFunctionOscillateQuicklyHigherValuesMakeItOscillateSlowly = binaryReader.ReadSingle(); this.scalePeriodByMultiplyThisFunctionByAbovePeriod = binaryReader.ReadShortBlockIndex1(); this.function = (Function)binaryReader.ReadInt16(); this.scaleFunctionByMultiplyThisFunctionByResultOfAboveFunction = binaryReader.ReadShortBlockIndex1(); this.wobbleFunctionCurveUsedForWobble = (WobbleFunctionCurveUsedForWobble)binaryReader.ReadInt16(); this.wobblePeriodSecondsTimeItTakesForMagnitudeOfThisFunctionToCompleteAWobble = binaryReader.ReadSingle(); this.wobbleMagnitudePercentAmountOfRandomWobbleInTheMagnitude = binaryReader.ReadSingle(); this.squareWaveThresholdIfNonZeroAllValuesAboveSquareWaveThresholdAreSnappedTo10AndAllValuesBelowItAreSnappedTo00ToCreateASquareWave = binaryReader.ReadSingle(); this.stepCountNumberOfDiscreteValuesToSnapToEGStepCountOf5SnapsFunctionTo000025050075Or100 = binaryReader.ReadInt16(); this.mapTo = (MapTo)binaryReader.ReadInt16(); this.sawtoothCountNumberOfTimesThisFunctionShouldRepeatEGSawtoothCountOf5GivesFunctionValueOf10AtEachOf025050And075AsWellAsAt10 = binaryReader.ReadInt16(); this.padding = binaryReader.ReadBytes(2); this.scaleResultByMultiplyThisFunctionEGFromAWeaponVehicleFinalResultOfAllOfTheAboveMath = binaryReader.ReadShortBlockIndex1(); this.boundsModeControlsHowBoundsBelowAreUsed = (BoundsModeControlsHowBoundsBelowAreUsed)binaryReader.ReadInt16(); this.bounds = binaryReader.ReadSingle(); this.padding0 = binaryReader.ReadBytes(4); this.padding1 = binaryReader.ReadBytes(2); this.turnOffWithIfSpecifiedFunctionIsOffSoIsThisFunction = binaryReader.ReadShortBlockIndex1(); this.padding2 = binaryReader.ReadBytes(16); this.padding3 = binaryReader.ReadBytes(16); }