Example #1
0
        public void LinkControlsToTweaks()
        {
            // Make *.ini files read-only
            LinkedTweaks.LinkTweak(checkBoxReadOnly, iniReadOnlyTweak);

            // Automatically apply changes when tool is closed or game is launched
            LinkedTweaks.LinkTweak(checkBoxAutoApply, autoApplyTweak);

            // Don't check for updates on startup.
            LinkedTweaks.LinkTweak(checkBoxIgnoreUpdates, ignoreUpdatesTweak);

            // Play notification sounds
            LinkedTweaks.LinkTweak(checkBoxPlayNotificationSound, playNotificationSoundsTweak);

            // Close the tool when the game is launched.
            LinkedTweaks.LinkTweak(checkBoxQuitOnGameLaunch, toolQuitOnLaunchTweak);


            /*
             * Nuclear Winter options
             */

            // Rename added *.dll files
            LinkedTweaks.LinkTweak(checkBoxNWRenameDLL, renameDLLsTweak);

            // Automatically deploy mods
            LinkedTweaks.LinkTweak(checkBoxNWAutoDeployMods, deployModsOnNWModeTweak);

            // Automatically remove mods
            LinkedTweaks.LinkTweak(checkBoxNWAutoDisableMods, removeModsOnNWModeTweak);
        }
        public void LinkDangerZoneControls()
        {
            // Screen Space Reflections:
            LinkedTweaks.LinkTweak(checkBoxScreenSpaceReflections, screenSpaceReflectionsTweak);

            // Amount of shadow "segments": iDirShadowSplits
            LinkedTweaks.LinkTweak(
                comboBoxiDirShadowSplits,
                new int[] { 1, 2, 3 },
                dirShadowSplitsTweak);

            // BlendSplitDirShadowTweak / Shadow "segment" transition distance
            LinkedTweaks.LinkTweak(numfBlendSplitDirShadow, blendSplitDirShadowTweak);
        }
        /// <summary>
        /// Link controls to tweaks, that means:
        /// -> If a control's value changes, change the value of a tweak.
        /// -> If the UI is being (re)loaded, set each value according to that of the linked tweak.
        /// </summary>
        public void LinkControlsToTweaks()
        {
            /*
             * Info tab
             */

            // Make *.ini files read-only

            /*LinkedTweaks.LinkTweak(checkBoxReadOnly, iniReadOnlyTweak);
             *
             * // Automatically apply changes when tool is closed or game is launched
             * LinkedTweaks.LinkTweak(checkBoxAutoApply, autoApplyTweak);
             *
             * // Don't check for updates on startup.
             * LinkedTweaks.LinkTweak(checkBoxIgnoreUpdates, ignoreUpdatesTweak);
             *
             * // Play notification sounds
             * LinkedTweaks.LinkTweak(checkBoxPlayNotificationSound, playNotificationSoundsTweak);
             *
             * // Close the tool when the game is launched.
             * LinkedTweaks.LinkTweak(checkBoxQuitOnGameLaunch, toolQuitOnLaunchTweak);*/



            /*
             * General tab
             */

            // Enable Steam
            LinkedTweaks.LinkTweak(checkBoxEnableSteam, enableSteamTweak);

            // Automatically sign-in
            LinkedTweaks.LinkTweak(checkBoxAutoSignin, autoSigninTweak);

            // Skip intro videos
            LinkedTweaks.LinkTweakNegated(checkBoxSkipIntroVideos, introVideoTweak);


            // Show splash screen with news on startup
            LinkedTweaks.LinkTweak(checkBoxSkipSplash, skipStartupSplash);

            // Show damage numbers in Nuclear Winter
            LinkedTweaks.LinkTweak(checkBoxShowDamageNumbersNW, showDamageNumbersNuclearWinterTweak);

            // Show damage numbers in Adventure mode
            LinkedTweaks.LinkTweak(checkBoxShowDamageNumbersA, showDamageNumbersAdventureTweak);

            // Show item rarity colors
            LinkedTweaks.LinkTweak(checkBoxItemRarityColorsNW, enableItemRarityColorsTweak);

            // Show Public Team Notifications
            LinkedTweaks.LinkTweak(checkBoxShowPublicTeamNotifications, showPublicTeamNotificationsTweak);

            // Show Floating Quest Markers
            LinkedTweaks.LinkTweak(checkBoxShowFloatingQuestMarkers, showFloatingQuestMarkersTweak);

            // Show Floating Quest Text
            LinkedTweaks.LinkTweak(checkBoxShowFloatingQuestText, showFloatingQuestTextTweak);

            // Show crosshair
            LinkedTweaks.LinkTweak(checkBoxShowCrosshair, showCrosshairTweak);

            // Enable Power Armor HUD
            LinkedTweaks.LinkTweak(checkBoxEnablePowerArmorHUD, enablePowerArmorHUDTweak);

            // Show compass
            LinkedTweaks.LinkTweak(checkBoxShowCompass, showCompassTweak);

            // Show Other Players' Names
            LinkedTweaks.LinkTweak(checkBoxShowOtherPlayersNames, showOtherPlayersNamesTweak);

            // Show active effects on HUD
            LinkedTweaks.LinkTweak(comboBoxShowActiveEffectsOnHUD, activeEffectsOnHUDTweak);

            // Floating Quest Markers Draw Distance
            LinkedTweaks.LinkTweak(numFloatingQuestMarkersDistance, floatingQuestMarkersDistanceTweak);

            // HUD Opacity
            LinkedTweaks.LinkTweak(numHUDOpacity, hudOpacityTweak);


            // XYZ Quest Active when started
            LinkedTweaks.LinkTweak(checkBoxEnableQuestAutoTrackMain, autoTrackMainQuestWhenStartedTweak);
            LinkedTweaks.LinkTweak(checkBoxEnableQuestAutoTrackSide, autoTrackSideQuestWhenStartedTweak);
            LinkedTweaks.LinkTweak(checkBoxEnableQuestAutoTrackMisc, autoTrackMiscQuestWhenStartedTweak);
            LinkedTweaks.LinkTweak(checkBoxEnableQuestAutoTrackEvent, autoTrackEventQuestWhenStartedTweak);
            LinkedTweaks.LinkTweak(checkBoxEnableQuestAutoTrackDaily, autoTrackOtherQuestWhenStartedTweak);



            /*
             * Video tab
             */

            // Custom resolution
            LinkedTweaks.LinkSize(numCustomResW, numCustomResH, displaySizeTweak);

            // Display mode
            LinkedTweaks.LinkTweak(comboBoxDisplayMode, displayModeTweak);

            // iPresentInterval
            LinkedTweaks.LinkTweak(checkBoxVSync, presentIntervalTweak);

            // Always active
            LinkedTweaks.LinkTweak(checkBoxAlwaysActive, windowAlwaysActiveTweak);

            // Top most window
            LinkedTweaks.LinkTweak(checkBoxTopMostWindow, topMostWindowTweak);

            // Fix HUD for 5:4 and 4:3 screens
            LinkedTweaks.LinkTweak(checkBoxFixHUDFor5_4and4_3, fixHUD4to3RatioTweak);



            /*
             * Graphics
             */

            // Anti aliasing
            LinkedTweaks.LinkTweak(comboBoxAntiAliasing, antiAliasingTweak);

            // Anisotropic filtering
            LinkedTweaks.LinkTweak(
                comboBoxAnisotropicFiltering,
                new int[] { 0, 2, 4, 8, 16 },
                anisotropicFilteringTweak);

            // Depth of Field
            LinkedTweaks.LinkTweak(checkBoxDepthOfField, enableDepthOfFieldTweak);

            // Motion Blur
            LinkedTweaks.LinkTweak(checkBoxMotionBlur, motionBlurTweak);

            // Radial Blur
            LinkedTweaks.LinkTweak(checkBoxRadialBlur, radialBlurTweak);

            // Lens Flare
            LinkedTweaks.LinkTweak(checkBoxLensFlare, lensFlareTweak);

            // Ambient Occlusion
            LinkedTweaks.LinkTweak(checkBoxAmbientOcclusion, ambientOcclusionTweak);

            // Water / Displacement
            LinkedTweaks.LinkTweak(checkBoxWaterDisplacement, waterDisplacementsTweak);

            // Weather / Fog
            LinkedTweaks.LinkTweak(checkBoxFogEnabled, fogTweak);

            // Weather / Rain Occlusion
            LinkedTweaks.LinkTweak(checkBoxWeatherRainOcclusion, rainOcclusionTweak);

            // Weather / Wetness Occlusion
            LinkedTweaks.LinkTweak(checkBoxWeatherWetnessOcclusion, wetnessOcclusionTweak);

            // Lighting / Volumetric Lighting
            LinkedTweaks.LinkTweak(checkBoxGodrays, volumetricLightingTweak);

            // Effects / Disable gore
            LinkedTweaks.LinkTweak(checkBoxDisableGore, disableAllGoreTweak);

            // Shadow texture map resolution
            LinkedTweaks.LinkTweak(
                comboBoxShadowTextureResolution,
                new int[] { 512, 1024, 2048, 4096 },
                shadowMapResolutionTweak);

            // Shadows / Blurriness
            LinkedTweaks.LinkTweak(
                comboBoxShadowBlurriness,
                new int[] { 1, 2, 3 },
                shadowBlurrinessTweak);

            // Shadow distance
            LinkedTweaks.LinkTweak(numShadowDistance, shadowDistanceTweak);

            // Enable grass
            LinkedTweaks.LinkTweak(checkBoxGrass, enableGrassTweak);

            // Grass fade distance
            LinkedTweaks.LinkTweak(numGrassFadeDistance, grassFadeDistanceTweak);

            // LOD Fade Distances
            LinkedTweaks.LinkTweak(numLODObjects, lodFadeOutMultObjectsTweak);
            LinkedTweaks.LinkTweak(numLODItems, lodFadeOutMultItemsTweak);
            LinkedTweaks.LinkTweak(numLODActors, lodFadeOutMultActorsTweak);

            // TAA Sharpening
            LinkedTweaks.LinkTweak(numTAAPostOverlay, taaPostOverlayTweak);
            LinkedTweaks.LinkTweak(numTAAPostSharpen, taaPostSharpenTweak);



            /*
             * Audio tab
             */

            // Enable audio
            LinkedTweaks.LinkTweak(checkBoxEnableAudio, enableAudioTweak);

            // Play music in main menu
            LinkedTweaks.LinkTweak(checkBoxMainMenuMusic, playMainMenuMusicTweak);


            // Voice Chat Mode
            LinkedTweaks.LinkTweak(comboBoxVoiceChatMode, voiceChatModeTweak);

            // Push-To-Talk
            LinkedTweaks.LinkTweak(checkBoxPushToTalk, voicePushToTalkEnabledTweak);


            // General subtitles
            LinkedTweaks.LinkTweak(checkBoxGeneralSubtitles, generalSubtitlesTweak);

            // Dialogue subtitles
            LinkedTweaks.LinkTweak(checkBoxDialogueSubtitles, dialogueSubtitlesTweak);

            // Dialogue history
            LinkedTweaks.LinkTweak(checkBoxDialogueHistory, showDialogueHistoryTweak);

            // Conversation History Size
            LinkedTweaks.LinkTweak(numConversationHistorySize, conversationHistorySizeTweak);


            // Master volume
            LinkedTweaks.LinkTweak(numVolumeMaster, masterVolumeTweak);

            // Voice chat volume
            LinkedTweaks.LinkTweak(numAudioChat, vivoxVoiceVolumeTweak);

            // Audio menu:
            LinkedTweaks.LinkTweak(numAudiofVal0, val0Tweak);
            LinkedTweaks.LinkTweak(numAudiofVal1, val1Tweak);
            LinkedTweaks.LinkTweak(numAudiofVal2, val2Tweak);
            LinkedTweaks.LinkTweak(numAudiofVal3, val3Tweak);
            LinkedTweaks.LinkTweak(numAudiofVal4, val4Tweak);
            LinkedTweaks.LinkTweak(numAudiofVal5, val5Tweak);
            LinkedTweaks.LinkTweak(numAudiofVal6, val6Tweak);



            /*
             * Controls tab
             */

            // Mouse sensitivity
            LinkedTweaks.LinkTweak(numMouseSensitivity, mouseSensitivityTweak);

            // Fix mouse sensitivity
            LinkedTweaks.LinkTweak(checkBoxFixMouseSensitivity, fixMouseSensitivityTweak);

            // Fix aim sensitivity
            LinkedTweaks.LinkTweak(checkBoxFixAimSensitivity, fixAimSensitivityTweak);

            // Mouse acceleration
            LinkedTweaks.LinkTweak(checkBoxMouseAcceleration, mouseAccelerationTweak);

            // Invert mouse:
            LinkedTweaks.LinkTweak(checkBoxMouseInvertX, mouseInvertXTweak);
            LinkedTweaks.LinkTweak(checkBoxMouseInvertY, mouseInvertYTweak);

            // Gamepad enabled
            LinkedTweaks.LinkTweak(checkBoxGamepadEnabled, gamepadEnableTweak);

            // Vibration
            LinkedTweaks.LinkTweak(checkBoxGamepadRumble, enableGamepadRumbleTweak);



            /*
             * Pipboy tab
             */

            // Pipboy color
            LinkedTweaks.LinkColor(
                buttonColorPickPipboy,  // "Pick color" button
                buttonColorResetPipboy, // "Reset" button
                colorDialog,            // The color picking dialog that should open when clicking on "Pick color"
                colorPreviewPipboy,     // The little, colored square that is left to the label.
                pipboyColorTweak);

            // Quickboy color
            LinkedTweaks.LinkColor(
                buttonColorPickQuickboy,
                buttonColorResetQuickboy,
                colorDialog,
                colorPreviewQuickboy,
                quickboyColorTweak);

            // Power Armor Pipboy color
            LinkedTweaks.LinkColor(
                buttonColorPickPAPipboy,
                buttonColorResetPAPipboy,
                colorDialog,
                colorPreviewPAPipboy,
                powerArmorPipboyColorTweak);

            // Radiobuttons, Quickboy or Pipboy mode
            LinkedTweaks.LinkTweak(this.radioButtonQuickboy, this.radioButtonPipboy, quickboyModeEnabledTweak);

            // Pipboy resolution
            LinkedTweaks.LinkSize(numPipboyTargetWidth, numPipboyTargetHeight, pipboyTargetResolutionTweak);



            /*
             * Camera tab
             */

            // 1st person FOV
            LinkedTweaks.LinkTweak(numFirstPersonFOV, fov1stPersonTweak);

            // World FOV
            LinkedTweaks.LinkTweak(numWorldFOV, fov3rdPersonTweak);

            // 3rd person ADS FOV
            LinkedTweaks.LinkTweak(numADSFOV, fov3rdADSTweak);

            // fDefaultFOV
            LinkedTweaks.LinkTweak(numfDefaultFOV, defaultFOVTweak);

            // Camera distance
            LinkedTweaks.LinkTweak(numCameraDistanceMinimum, vanityModeMinDistTweak);
            LinkedTweaks.LinkTweak(numCameraDistanceMaximum, vanityModeMaxDistTweak);

            // fPitchZoomOutMaxDist
            LinkedTweaks.LinkTweak(numfPitchZoomOutMaxDist, pitchZoomOutMaxDistTweak);

            // Switch delay
            LinkedTweaks.LinkTweak(this.numCameraSwitchDelay, firstThirdPerspectiveSwitchDelayTweak);

            // Photomode options:
            LinkedTweaks.LinkTweak(this.numericUpDownPhotomodeRange, selfieModeRangeTweak);
            LinkedTweaks.LinkTweak(this.numericUpDownPhotomodeTranslationSpeed, selfieCameraTranslationSpeedTweak);
            LinkedTweaks.LinkTweak(this.numericUpDownPhotomodeRotationSpeed, selfieCameraRotationSpeedTweak);

            // Vanity mode
            LinkedTweaks.LinkTweakNegated(this.checkBoxVanityMode, disableAutoVanityModeTweak);
            LinkedTweaks.LinkTweak(this.checkBoxForceVanityMode, forceAutoVanityModeTweak);

            // bApplyCameraNodeAnimations
            LinkedTweaks.LinkTweak(this.checkBoxbApplyCameraNodeAnimations, applyCameraNodeAnimationsTweak);

            // OverShoulder sliders:
            LinkedTweaks.LinkTweak(this.numfOverShoulderPosX, cameraOverShoulderPosXTweak);
            LinkedTweaks.LinkTweak(this.numfOverShoulderPosZ, cameraOverShoulderPosZTweak);
            LinkedTweaks.LinkTweak(this.numfOverShoulderCombatPosX, cameraOverShoulderCombatPosXTweak);
            LinkedTweaks.LinkTweak(this.numfOverShoulderCombatPosZ, cameraOverShoulderCombatPosZTweak);
            LinkedTweaks.LinkTweak(this.numfOverShoulderCombatAddY, cameraOverShoulderCombatAddYTweak);
            LinkedTweaks.LinkTweak(this.numfOverShoulderMeleeCombatPosX, cameraOverShoulderMeleeCombatPosXTweak);
            LinkedTweaks.LinkTweak(this.numfOverShoulderMeleeCombatPosZ, cameraOverShoulderMeleeCombatPosZTweak);
            LinkedTweaks.LinkTweak(this.numfOverShoulderMeleeCombatAddY, cameraOverShoulderMeleeCombatAddYTweak);



            /*
             * Gallery tab
             */

            // Screenshot index
            LinkedTweaks.LinkTweak(numScreenshotIndex, screenshotIndexTweak);
        }