diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..2872876 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,43 @@ +name: build + +# Controls when the action will run. Triggers the workflow on push or pull request +# events but only for the master branch +on: + pull_request: + branches: [ master ] + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + build-package: + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + OAUTH_TOKEN: ${{ secrets.OAUTH_TOKEN }} + # The type of runner that the job will run on + runs-on: ubuntu-latest + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + # Checkout this repo + - uses: actions/checkout@v2 + # Checkout another repo + - uses: actions/checkout@v2 + with: + # Repository name with owner. + repository: 'post-kerbin-mining-corporation/build-deploy' + # branch + ref: 'actions' + path: 'build-deploy' + - uses: actions/setup-python@v2 + with: + python-version: '3.8' + architecture: 'x64' + - name: Installing dependencies + run: | + python -m pip install --upgrade pip + pip install flake8 pytest awscli boto3 requests + #- name: Running deploy tests + # run: pytest -s --testpath "GameData/" build-deploy/src/tests/ # run the deploy tests + - name: Building package + run: python build-deploy/src/package.py --f ".mod_data.yml" \ No newline at end of file diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..e302790 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,47 @@ +name: deploy + +# Controls when the action will run. Triggers the workflow on push or pull request +# events but only for the master branch +on: + push: + branches: [ master ] + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + deploy-package: + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + OAUTH_TOKEN: ${{ secrets.OAUTH_TOKEN }} + # The type of runner that the job will run on + runs-on: ubuntu-latest + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + # Checkout this repo + - uses: actions/checkout@v2 + # Checkout another repo + - uses: actions/checkout@v2 + with: + # Repository name with owner. + repository: 'post-kerbin-mining-corporation/build-deploy' + # branch + ref: 'actions' + path: 'build-deploy' + - uses: actions/setup-python@v2 + with: + python-version: '3.8' + architecture: 'x64' + - name: Installing dependencies + run: | + python -m pip install --upgrade pip + pip install flake8 pytest awscli boto3 requests + #- name: Running deploy tests + # run: pytest -s --testpath "GameData/" build-deploy/src/tests/ # run the deploy tests + - name: Building package + run: python build-deploy/src/package.py --f ".mod_data.yml" + - name: Staging package + run: python build-deploy/src/stage.py --f ".mod_data.yml" # Run the staging script + - name: Deploying package + run: python build-deploy/src/deploy.py --f ".mod_data.yml" # Deploy package to spacedock, curse, github \ No newline at end of file diff --git a/.ksp_deploy_config.yml b/.ksp_deploy_config.yml new file mode 100644 index 0000000..91e5200 --- /dev/null +++ b/.ksp_deploy_config.yml @@ -0,0 +1,3 @@ +OAUTH_TOKEN_SSM_KEY: pkmc-bot-github-oauth-token +GITHUB_USER_SSM_KEY: pkmc-bot-github-user +GITHUB_USER_EMAIL_SSM_KEY: pkmc-bot-github-user-email \ No newline at end of file diff --git a/.mod_data.yml b/.mod_data.yml index 4331e2e..cf64255 100644 --- a/.mod_data.yml +++ b/.mod_data.yml @@ -14,9 +14,9 @@ dependencies: # Configure dependencies version: 2.17.0 location: s3 NearFutureProps: - tag: 0.6.3 + tag: 0.6.4 location: github - repository: ChrisAdderley/NearFutureProps + repository: post-kerbin-mining-corporation/NearFutureProps deploy: SpaceDock: enabled: true # activate/deactivate this deployment script diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 78d99cb..0000000 --- a/.travis.yml +++ /dev/null @@ -1,34 +0,0 @@ -language: python -python: - - 3.6 -install: - - pip install awscli boto3 requests -branches: - only: - - master -script: - - git clone https://github.com/post-kerbin-mining-corporation/build-deploy.git # clone this repo, it contains the stuff that does the heavy lifting - - cd build-deploy - - git checkout master - - cd .. - - pytest -s --testpath "GameData/" build-deploy/src/tests/ # run the deploy tests - - python build-deploy/src/package.py --f ".mod_data.yml" # Build package -before_deploy: - - python build-deploy/src/stage.py --f ".mod_data.yml" # Run the staging script -deploy: - - provider: script - script: python build-deploy/src/deploy.py --f ".mod_data.yml" # Deploy package to spacedock, curse, github - skip_cleanup: true - on: - branch: master - - provider: s3 # releases to S3 - access_key_id: $AWS_ACCESS_KEY_ID - secret_access_key: $AWS_SECRET_ACCESS_KEY - bucket: "nertea-ksp-modding-releases" - local_dir: deploy/NearFutureSpacecraft - skip_cleanup: true - acl: public_read - region: us-east-2 - upload-dir: near-future-spacecraft - on: - branch: master diff --git a/CKAN/NearFutureSpacecraft-OrbitalLFOEngines.netkan b/CKAN/NearFutureSpacecraft-OrbitalLFOEngines.netkan index ccb44f9..94d6992 100644 --- a/CKAN/NearFutureSpacecraft-OrbitalLFOEngines.netkan +++ b/CKAN/NearFutureSpacecraft-OrbitalLFOEngines.netkan @@ -9,7 +9,7 @@ "license": "MIT", "resources": { "homepage": "https://forum.kerbalspaceprogram.com/index.php?/topic/155465-16x-near-future-technologies-16x-fixes-jan-21/", - "repository": "https://github.com/ChrisAdderley/NearFutureSpacecraft" + "repository": "https://github.com/post-kerbin-mining-corporation/NearFutureSpacecraft" }, "depends": [ { "name" : "NearFutureSpacecraft" } diff --git a/CKAN/NearFutureSpacecraft.netkan b/CKAN/NearFutureSpacecraft.netkan index 3ffa918..9f3c6de 100644 --- a/CKAN/NearFutureSpacecraft.netkan +++ b/CKAN/NearFutureSpacecraft.netkan @@ -9,13 +9,16 @@ "license": "restricted", "resources": { "homepage": "https://forum.kerbalspaceprogram.com/index.php?/topic/155465-16x-near-future-technologies-16x-fixes-jan-21/", - "repository": "https://github.com/ChrisAdderley/NearFutureSpacecraft" + "repository": "https://github.com/post-kerbin-mining-corporation/NearFutureSpacecraft" }, "depends": [ { "name" : "NearFutureProps" }, { "name" : "B9PartSwitch" }, { "name" : "ModuleManager" } ], + "recommends": [ + { "name" : "Waterfall" } + ], "suggests" : [ { "name" : "CommunityTechTree" }, { "name" : "NearFutureConstruction" }, diff --git a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-125-1.cfg b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-125-1.cfg index 9148e87..09a1ad5 100644 --- a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-125-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-125-1.cfg @@ -195,7 +195,7 @@ PART name = ModuleRCSFX thrusterTransformName = thrustVector thrusterPower = 0.4 - tagingEnabled = False + stagingEnabled = False resourceFlowMode = STAGE_PRIORITY_FLOW resourceName = MonoPropellant runningEffectName = running @@ -269,4 +269,10 @@ PART nodeEnabled = True attachNodeName = bottom } + MODULE + { + name = ModuleInventoryPart + InventorySlots = 2 + packedVolumeLimit = 50 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-125-landing-1.cfg b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-125-landing-1.cfg index 386bb06..65fdba4 100644 --- a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-125-landing-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-125-landing-1.cfg @@ -239,7 +239,7 @@ PART name = ModuleRCSFX thrusterTransformName = thrustVector thrusterPower = 0.4 - tagingEnabled = False + stagingEnabled = False resourceFlowMode = STAGE_PRIORITY_FLOW resourceName = MonoPropellant runningEffectName = running @@ -313,4 +313,10 @@ PART nodeEnabled = True attachNodeName = bottom } + MODULE + { + name = ModuleInventoryPart + InventorySlots = 2 + packedVolumeLimit = 50 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-125-orbit-1.cfg b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-125-orbit-1.cfg index f9e55ce..ce58ba3 100644 --- a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-125-orbit-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-125-orbit-1.cfg @@ -231,7 +231,7 @@ PART name = ModuleRCSFX thrusterTransformName = thrustVector thrusterPower = 0.4 - tagingEnabled = False + stagingEnabled = False resourceFlowMode = STAGE_PRIORITY_FLOW resourceName = MonoPropellant runningEffectName = running @@ -241,4 +241,10 @@ PART key = 1 100 } } + MODULE + { + name = ModuleInventoryPart + InventorySlots = 3 + packedVolumeLimit = 60 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-25-1.cfg b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-25-1.cfg index 44554e4..b805cbc 100644 --- a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-25-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-25-1.cfg @@ -129,15 +129,28 @@ PART amount = 60 maxAmount = 60 } + + MODULE + { + name = ModuleLight + moduleID = lightEmissive + lightName = Spotlight + lightBrightenSpeed = 2.5 + lightDimSpeed = 2.5 + resourceAmount = 0.005 + lightMeshRendererName = PodDockingLight + useResources = true + useAnimationDim = true + } MODULE { - name = ModuleColorChanger + name = ModuleAdvancedColorChanger moduleID = windowEmissive shaderProperty = _EmissiveColor - excludedRenderer = PodDockingLight + includedTransformList = 25mPodAdvanced animRate = 0.8 animState = false - useRate = true + toggleInEditor = true toggleInFlight = true unfocusedRange = 5 @@ -167,18 +180,6 @@ PART } } - MODULE - { - name = ModuleLight - moduleID = lightEmissive - lightName = Spotlight - lightBrightenSpeed = 2.5 - lightDimSpeed = 2.5 - resourceAmount = 0.005 - animationName = PandoraDockingLight - useResources = true - useAnimationDim = true - } MODULE { name = FlagDecal @@ -252,7 +253,7 @@ PART name = ModuleRCSFX thrusterTransformName = thrustVector thrusterPower = 0.8 - tagingEnabled = False + stagingEnabled = False resourceFlowMode = STAGE_PRIORITY_FLOW resourceName = MonoPropellant runningEffectName = running @@ -283,4 +284,10 @@ PART nodeEnabled = True attachNodeName = bottom } + MODULE + { + name = ModuleInventoryPart + InventorySlots = 6 + packedVolumeLimit = 400 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-25-landing-1.cfg b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-25-landing-1.cfg index fbc17de..e1cf4b5 100644 --- a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-25-landing-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-25-landing-1.cfg @@ -267,7 +267,7 @@ PART name = ModuleRCSFX thrusterTransformName = thrustVector thrusterPower = 0.8 - tagingEnabled = False + stagingEnabled = False resourceFlowMode = STAGE_PRIORITY_FLOW resourceName = MonoPropellant runningEffectName = running @@ -297,4 +297,10 @@ PART nodeEnabled = True attachNodeName = bottom } + MODULE + { + name = ModuleInventoryPart + InventorySlots = 3 + packedVolumeLimit = 180 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-375-biconic-1.cfg b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-375-biconic-1.cfg index 1853990..5edc36c 100644 --- a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-375-biconic-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-375-biconic-1.cfg @@ -301,5 +301,10 @@ PART transformDir = Z transformSign = -1 } - + MODULE + { + name = ModuleInventoryPart + InventorySlots = 6 + packedVolumeLimit = 1200 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-mk3-9.cfg b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-mk3-9.cfg index 67a5e02..b9c475f 100644 --- a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-mk3-9.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-mk3-9.cfg @@ -245,7 +245,7 @@ PART name = ModuleRCSFX thrusterTransformName = thrustVector thrusterPower = 0.8 - tagingEnabled = False + stagingEnabled = False resourceFlowMode = STAGE_PRIORITY_FLOW resourceName = MonoPropellant runningEffectName = running @@ -275,4 +275,10 @@ PART nodeEnabled = True attachNodeName = bottom } + MODULE + { + name = ModuleInventoryPart + InventorySlots = 4 + packedVolumeLimit = 200 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-mk4-1.cfg b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-mk4-1.cfg index ec5c321..6fde397 100644 --- a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-mk4-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-mk4-1.cfg @@ -320,7 +320,7 @@ PART name = ModuleRCSFX thrusterTransformName = thrustVector thrusterPower = 1 - tagingEnabled = False + stagingEnabled = False resourceFlowMode = STAGE_PRIORITY_FLOW resourceName = MonoPropellant runningEffectName = running @@ -350,4 +350,10 @@ PART nodeEnabled = True attachNodeName = bottom02 } + MODULE + { + name = ModuleInventoryPart + InventorySlots = 8 + packedVolumeLimit = 1000 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-ppd-1.cfg b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-ppd-1.cfg index 5301239..9410ff0 100644 --- a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-ppd-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/command-ppd-1.cfg @@ -226,7 +226,7 @@ PART name = ModuleRCSFX thrusterTransformName = thrustVector thrusterPower = 1 - tagingEnabled = False + stagingEnabled = False resourceFlowMode = STAGE_PRIORITY_FLOW resourceName = MonoPropellant runningEffectName = running @@ -236,4 +236,10 @@ PART key = 1 100 } } + MODULE + { + name = ModuleInventoryPart + InventorySlots = 5 + packedVolumeLimit = 500 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/utility-pod-25.cfg b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/utility-pod-25.cfg index f921e14..b7c2da7 100644 --- a/GameData/NearFutureSpacecraft/Parts/Command/command-pods/utility-pod-25.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Command/command-pods/utility-pod-25.cfg @@ -134,4 +134,11 @@ PART name = FlagDecal textureQuadName = Flag } + + MODULE + { + name = ModuleInventoryPart + InventorySlots = 24 + packedVolumeLimit = 2000 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Engine/landing-engine/engine-rocket-pack-1.cfg b/GameData/NearFutureSpacecraft/Parts/Engine/landing-engine/engine-rocket-pack-1.cfg index 9a3da74..55e84e4 100644 --- a/GameData/NearFutureSpacecraft/Parts/Engine/landing-engine/engine-rocket-pack-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Engine/landing-engine/engine-rocket-pack-1.cfg @@ -382,4 +382,9 @@ PART prestige = Exceptional } } + MODULE + { + name = ModuleCargoPart + packedVolume = 60 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Engine/landing-engine/engine-rocket-pack-2.cfg b/GameData/NearFutureSpacecraft/Parts/Engine/landing-engine/engine-rocket-pack-2.cfg index b54a8d6..a3a6de8 100644 --- a/GameData/NearFutureSpacecraft/Parts/Engine/landing-engine/engine-rocket-pack-2.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Engine/landing-engine/engine-rocket-pack-2.cfg @@ -365,4 +365,9 @@ PART prestige = Exceptional } } + MODULE + { + name = ModuleCargoPart + packedVolume = 120 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Engine/orbital-engine/orbital-engine-0625.cfg b/GameData/NearFutureSpacecraft/Parts/Engine/orbital-engine/orbital-engine-0625.cfg index d76aa4c..ce33840 100644 --- a/GameData/NearFutureSpacecraft/Parts/Engine/orbital-engine/orbital-engine-0625.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Engine/orbital-engine/orbital-engine-0625.cfg @@ -557,4 +557,9 @@ PART prestige = Exceptional } } + MODULE + { + name = ModuleCargoPart + packedVolume = 120 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Engine/orbital-engine/orbital-engine-125-1.cfg b/GameData/NearFutureSpacecraft/Parts/Engine/orbital-engine/orbital-engine-125-1.cfg index 431b99a..f2297a7 100644 --- a/GameData/NearFutureSpacecraft/Parts/Engine/orbital-engine/orbital-engine-125-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Engine/orbital-engine/orbital-engine-125-1.cfg @@ -507,4 +507,9 @@ PART prestige = Exceptional } } + MODULE + { + name = ModuleCargoPart + packedVolume = -1 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-aero/rcsblock-aero-5way-1.cfg b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-aero/rcsblock-aero-5way-1.cfg index a9b10b2..f34f271 100644 --- a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-aero/rcsblock-aero-5way-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-aero/rcsblock-aero-5way-1.cfg @@ -95,7 +95,7 @@ PART name = ModuleRCSFX thrusterTransformName = thrustVector thrusterPower = 0.7 - tagingEnabled = False + stagingEnabled = False resourceFlowMode = STAGE_PRIORITY_FLOW resourceName = MonoPropellant runningEffectName = running @@ -105,4 +105,9 @@ PART key = 1 100 } } + MODULE + { + name = ModuleCargoPart + packedVolume = 50 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-2way-45-1.cfg b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-2way-45-1.cfg index de5d097..29a0547 100644 --- a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-2way-45-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-2way-45-1.cfg @@ -95,7 +95,7 @@ PART name = ModuleRCSFX thrusterTransformName = thrustVector thrusterPower = 1 - tagingEnabled = False + stagingEnabled = False resourceFlowMode = STAGE_PRIORITY_FLOW resourceName = MonoPropellant runningEffectName = running @@ -105,4 +105,9 @@ PART key = 1 70 } } + MODULE + { + name = ModuleCargoPart + packedVolume = 40 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-2way-45-2.cfg b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-2way-45-2.cfg index 7bf923b..c028a92 100644 --- a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-2way-45-2.cfg +++ b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-2way-45-2.cfg @@ -105,4 +105,9 @@ PART key = 1 70 } } + MODULE + { + name = ModuleCargoPart + packedVolume = 40 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-3way-1.cfg b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-3way-1.cfg index 5a18fb9..4ebdcc4 100644 --- a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-3way-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-3way-1.cfg @@ -106,4 +106,9 @@ PART key = 1 70 } } + MODULE + { + name = ModuleCargoPart + packedVolume = 40 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-4way-1.cfg b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-4way-1.cfg index 32bbd99..7d4d73a 100644 --- a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-4way-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-4way-1.cfg @@ -106,4 +106,9 @@ PART key = 1 70 } } + MODULE + { + name = ModuleCargoPart + packedVolume = 40 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-5way-1.cfg b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-5way-1.cfg index c936c42..c73e754 100644 --- a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-5way-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-5way-1.cfg @@ -106,4 +106,9 @@ PART key = 1 70 } } + MODULE + { + name = ModuleCargoPart + packedVolume = 40 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-linear-1.cfg b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-linear-1.cfg index dbd6e37..024ffdd 100644 --- a/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-linear-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/RCS/rcsblock-orbital/rcsblock-orbital-linear-1.cfg @@ -106,4 +106,9 @@ PART key = 1 70 } } + MODULE + { + name = ModuleCargoPart + packedVolume = 15 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Structural/engine-pod/engine-pod-1.cfg b/GameData/NearFutureSpacecraft/Parts/Structural/engine-pod/engine-pod-1.cfg index 3374400..e67e1b4 100644 --- a/GameData/NearFutureSpacecraft/Parts/Structural/engine-pod/engine-pod-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Structural/engine-pod/engine-pod-1.cfg @@ -32,5 +32,9 @@ PART { model = NearFutureSpacecraft/Parts/Structural/engine-pod/engine-pod-1 } - + MODULE + { + name = ModuleCargoPart + packedVolume = -1 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Structural/engine-pod/engine-pod-2.cfg b/GameData/NearFutureSpacecraft/Parts/Structural/engine-pod/engine-pod-2.cfg index ab0c8bf..bfda087 100644 --- a/GameData/NearFutureSpacecraft/Parts/Structural/engine-pod/engine-pod-2.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Structural/engine-pod/engine-pod-2.cfg @@ -34,5 +34,9 @@ PART { model = NearFutureSpacecraft/Parts/Structural/engine-pod/engine-pod-2 } - + MODULE + { + name = ModuleCargoPart + packedVolume = -1 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Utility/Nosecone/docking-nose-0625-1.cfg b/GameData/NearFutureSpacecraft/Parts/Utility/Nosecone/docking-nose-0625-1.cfg index 1a3f534..b5b0928 100644 --- a/GameData/NearFutureSpacecraft/Parts/Utility/Nosecone/docking-nose-0625-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Utility/Nosecone/docking-nose-0625-1.cfg @@ -103,4 +103,9 @@ key = 0 1 } } + MODULE + { + name = ModuleCargoPart + packedVolume = 170 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Utility/Nosecone/nose-0625-1.cfg b/GameData/NearFutureSpacecraft/Parts/Utility/Nosecone/nose-0625-1.cfg index 0f040e5..c4f2c08 100644 --- a/GameData/NearFutureSpacecraft/Parts/Utility/Nosecone/nose-0625-1.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Utility/Nosecone/nose-0625-1.cfg @@ -33,4 +33,9 @@ tags = #LOC_NFSpacecraft_nosecone-0625-1_tags stagingIcon = DECOUPLER_VERT + MODULE + { + name = ModuleCargoPart + packedVolume = 210 + } } diff --git a/GameData/NearFutureSpacecraft/Parts/Utility/landingleg-pod/landingleg-pod.cfg b/GameData/NearFutureSpacecraft/Parts/Utility/landingleg-pod/landingleg-pod.cfg index 31c1828..a8dd62f 100644 --- a/GameData/NearFutureSpacecraft/Parts/Utility/landingleg-pod/landingleg-pod.cfg +++ b/GameData/NearFutureSpacecraft/Parts/Utility/landingleg-pod/landingleg-pod.cfg @@ -206,5 +206,10 @@ PART explodeMultiplier = 1.0 } + MODULE + { + name = ModuleCargoPart + packedVolume = -1 + } } diff --git a/GameData/NearFutureSpacecraft/Patches/NFSpacecraftUSILifeSupport.cfg b/GameData/NearFutureSpacecraft/Patches/NFSpacecraftUSILifeSupport.cfg index ce95189..1a16a7e 100644 --- a/GameData/NearFutureSpacecraft/Patches/NFSpacecraftUSILifeSupport.cfg +++ b/GameData/NearFutureSpacecraft/Patches/NFSpacecraftUSILifeSupport.cfg @@ -112,9 +112,6 @@ //PPD-24 Itinerant Service Container @PART[utility-pod-25]:NEEDS[USILifeSupport]:FOR[NearFutureSpacecraft] { - %MODULE[ModuleLifeSupport]{} - %MODULE[USI_ModuleFieldRepair]{} - MODULE { name = USI_SwapController @@ -152,14 +149,4 @@ @Ratio *= 0.025 } } - - !RESOURCE[ReplacementParts] {} - RESOURCE:NEEDS[ExtraplanetaryLaunchpads,USILifeSupport] - { - name = ReplacementParts - amount = #$/mass$ - @amount *= 1000 - maxAmount = #$amount$ - - } } diff --git a/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallCommandPodRCS.cfg b/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallCommandPodRCS.cfg new file mode 100644 index 0000000..f5526e9 --- /dev/null +++ b/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallCommandPodRCS.cfg @@ -0,0 +1,516 @@ + +@PART[command-125-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,0,0 +rotation = 0, 0, 180 +scale = 0.5, 0.7, 0.5 + } + } + +} + +@PART[command-125-landing-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,-0.02,0 +rotation = 0, 0, 180 +scale = 0.5, 0.7, 0.5 + } + } + +} + +@PART[command-125-orbit-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,0,0 +rotation = 0, 0, 180 +scale = 0.5, 0.7, 0.5 + } + } + +} + + +@PART[command-25-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,-0.04,0 +rotation = 0, 0, 180 +scale = 0.8, 1, 0.8 + } + } + +} + + +@PART[command-25-landing-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,-0.03,0 +rotation = 0, 0, 180 +scale = 0.8, 1.3, 0.8 + } + } + +} + + +@PART[command-375-biconic-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,0,0 +rotation = 0, 0, 180 +scale = 0.7, 1, 0.7 + } + } + +} + +@PART[command-mk3-9]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,0,0 +rotation = 0, 0, 180 +scale = 0.8, 1.3, 0.8 + } + } + +} + +@PART[command-mk4-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,0,0 +rotation = 0, 0, 180 +scale = 0.6, 1, 0.6 + } + } + +} + +@PART[command-ppd-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,-0.04,0 +rotation = 0, 0, 180 +scale = 0.8, 1, 0.8 + } + } + +} diff --git a/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallLandingEngines.cfg b/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallLandingEngines.cfg new file mode 100644 index 0000000..9c4a524 --- /dev/null +++ b/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallLandingEngines.cfg @@ -0,0 +1,192 @@ +// Adds Waterfall effects to landing engines +@PART[engine-rocket-pack-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running_closed + { + AUDIO + { + channel = Ship + clip = sound_rocket_hard + volume = 0.0 0.0 + volume = 1.0 1.0 + pitch = 0.0 0.2 + pitch = 1.0 1.0 + loop = true + } + PREFAB_PARTICLE + { + prefabName = fx_smokeTrail_light + transformName = smokeTransform + emission = 0.0 0.0 + emission = 0.05 0.0 + emission = 0.075 0.25 + emission = 1.0 1.25 + speed = 0.0 0.25 + speed = 1.0 1.0 + + } + } + engage + { + AUDIO + { + channel = Ship + clip = sound_vent_medium + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + PREFAB_PARTICLE + { + prefabName = fx_exhaustSparks_flameout_2 + transformName = thrustTransform + oneShot = true + } + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + } + + + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rocketFX + // This links the effects to a given ModuleEngines if desired. If not, it will use the basic one. + engineID = basicEngine + + // List out all controllers we want available + // This controller scales with atmosphere depth + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + // This controller scales with effective throttle + CONTROLLER + { + name = throttle + linkedTo = throttle + } + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-superdraco-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustTransform + scale = 1,1,1 + rotation = 0,0,0 + position = 0,0.0,0 + } + } +} + +@PART[engine-rocket-pack-2]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running_closed + { + AUDIO + { + channel = Ship + clip = sound_rocket_hard + volume = 0.0 0.0 + volume = 1.0 1.0 + pitch = 0.0 0.2 + pitch = 1.0 1.0 + loop = true + } + PREFAB_PARTICLE + { + prefabName = fx_smokeTrail_light + transformName = smokeTransform + emission = 0.0 0.0 + emission = 0.05 0.0 + emission = 0.075 0.25 + emission = 1.0 1.25 + speed = 0.0 0.25 + speed = 1.0 1.0 + + } + } + engage + { + AUDIO + { + channel = Ship + clip = sound_vent_medium + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + PREFAB_PARTICLE + { + prefabName = fx_exhaustSparks_flameout_2 + transformName = thrustTransform + oneShot = true + } + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + } + + + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rocketFX + // This links the effects to a given ModuleEngines if desired. If not, it will use the basic one. + engineID = basicEngine + + // List out all controllers we want available + // This controller scales with atmosphere depth + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + // This controller scales with effective throttle + CONTROLLER + { + name = throttle + linkedTo = throttle + } + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-superdraco-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustTransform + scale = 1,1,1 + rotation = 0,0,0 + position = 0,0.0,0 + } + } +} \ No newline at end of file diff --git a/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallLights.cfg b/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallLights.cfg new file mode 100644 index 0000000..5fad17f --- /dev/null +++ b/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallLights.cfg @@ -0,0 +1,180 @@ +// Adds Waterfall effects to Pandora light +@PART[command-25-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = lightFX + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = light + lightName = none + linkedTo = light + } + EFFECT +{ + name = lightFx + parentName = PodDockingLight + MODEL + { + path = Waterfall/FX/fx-cylinder + positionOffset = 0.200000003,-0.74000001,1.84000003 + rotationOffset = -90,0,0 + scaleOffset = 0.0500000007,3,0.0500000007 + MATERIAL + { + transform = Cylinder + shader = Waterfall/Additive (Dynamic) + FLOAT + { + floatName = _Fresnel + value = 20 + } + FLOAT + { + floatName = _Falloff + value = 3.99388266 + } + FLOAT + { + floatName = _ExpandLinear + value = 45 + } + FLOAT + { + floatName = _FadeOut + value = 0.161777526 + } + FLOAT + { + floatName = _Brightness + value = 0.292223334 + } + FLOAT + { + floatName = _Noise + value = 1.28916466 + } + FLOAT + { + floatName = _SpeedX + value = 0.200000003 + } + } + } + FLOATMODIFIER + { + name = atmoBright + controllerName = light + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0 0 0 + key = 1 0.2 0 0 + } + } + FLOATMODIFIER + { + name = atmoBright + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = MULTIPLY + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0 0 0 + key = 1 0.4 0 0 + } + } + LIGHTCOLORMODIFIER + { + name = lightColor + controllerName = light + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + colorName = _StartTint + lightTransformName = Spotlight + colorBlend = 1 + } +} + +EFFECT +{ + name = lightFlare + parentName = PodDockingLight + MODEL + { + path = Waterfall/FX/fx-billboard-generic-1 + positionOffset = 0.200000003,-0.74000001,1.85000002 + rotationOffset = 0,0,0 + scaleOffset = 2,1.5,1 + MATERIAL + { + transform = Billboard + shader = Waterfall/Billboard (Additive Directional) + TEXTURE + { + textureSlotName = _MainTex + texturePath = Waterfall/FX/fx_flarelens01 + textureScale = 1,1 + textureOffset = 0,0 + } + FLOAT + { + floatName = _DirectionScale + value = 3 + } + } + } + FLOATMODIFIER + { + name = fade + controllerName = light + transformName = Billboard + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0 0 0 + key = 1 1 0 0 + } + } + LIGHTCOLORMODIFIER + { + name = lightColor + controllerName = light + transformName = Billboard + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + colorName = _StartTint + lightTransformName = Spotlight + colorBlend = 0.568260193 + } +} + + + } +} \ No newline at end of file diff --git a/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallOrbitalEngines.cfg b/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallOrbitalEngines.cfg new file mode 100644 index 0000000..3fe75cf --- /dev/null +++ b/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallOrbitalEngines.cfg @@ -0,0 +1,351 @@ +// Adds Waterfall effects to orbital engines +@PART[orbital-engine-0625]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + + EFFECTS + { + running_closed + { + AUDIO + { + channel = Ship + clip = sound_rocket_hard + volume = 0.0 0.0 + volume = 1.0 1.0 + pitch = 0.0 0.2 + pitch = 1.0 1.0 + loop = true + } + } + engage + { + AUDIO + { + channel = Ship + clip = sound_vent_medium + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + PREFAB_PARTICLE + { + prefabName = fx_exhaustSparks_flameout_2 + transformName = fxPoint + oneShot = true + } + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + } + + + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rocketFX + // This links the effects to a given ModuleEngines if desired. If not, it will use the basic one. + engineID = basicEngine + + // List out all controllers we want available + // This controller scales with atmosphere depth + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + // This controller scales with effective throttle + CONTROLLER + { + name = throttle + linkedTo = throttle + } + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-mono-upper-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustTransform + scale = 1,1,1 + rotation = 0,0,0 + position = 0,0.0,0 + } + } +} + +@PART[orbital-engine-125]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + + EFFECTS + { + running_closed + { + AUDIO + { + channel = Ship + clip = sound_rocket_hard + volume = 0.0 0.0 + volume = 1.0 1.0 + pitch = 0.0 0.2 + pitch = 1.0 1.0 + loop = true + } + PREFAB_PARTICLE + { + prefabName = fx_smokeTrail_light + transformName = smokeTransform + emission = 0.0 0.0 + emission = 0.05 0.0 + emission = 0.075 0.25 + emission = 1.0 1.25 + speed = 0.0 0.25 + speed = 1.0 1.0 + + } + } + engage + { + AUDIO + { + channel = Ship + clip = sound_vent_medium + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + PREFAB_PARTICLE + { + prefabName = fx_exhaustSparks_flameout_2 + transformName = fxPoint + oneShot = true + } + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + } + + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rocketFX + // This links the effects to a given ModuleEngines if desired. If not, it will use the basic one. + engineID = basicEngine + + // List out all controllers we want available + // This controller scales with atmosphere depth + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + // This controller scales with effective throttle + CONTROLLER + { + name = throttle + linkedTo = throttle + } + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-mono-upper-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustTransform + position = 0,0,0.07 +rotation = 0, 0, 0 +scale = 3.7, 3.7, 3.7 + } + } +} + +@PART[orbital-engine-25]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + + EFFECTS + { + running_closed + { + AUDIO + { + channel = Ship + clip = sound_rocket_hard + volume = 0.0 0.0 + volume = 1.0 1.0 + pitch = 0.0 0.2 + pitch = 1.0 1.0 + loop = true + } + } + engage + { + AUDIO + { + channel = Ship + clip = sound_vent_medium + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + PREFAB_PARTICLE + { + prefabName = fx_exhaustSparks_flameout_2 + transformName = thrustTransform + oneShot = true + } + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + } + + + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rocketFX + // This links the effects to a given ModuleEngines if desired. If not, it will use the basic one. + engineID = basicEngine + + // List out all controllers we want available + // This controller scales with atmosphere depth + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + // This controller scales with effective throttle + CONTROLLER + { + name = throttle + linkedTo = throttle + } + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-mono-upper-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustTransform + scale = 1,1,1 + rotation = 0,0,0 + position = 0,0.0,0 + } + } +} + +@PART[orbital-engine-375]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + + EFFECTS + { + running_closed + { + AUDIO + { + channel = Ship + clip = sound_rocket_hard + volume = 0.0 0.0 + volume = 1.0 1.0 + pitch = 0.0 0.2 + pitch = 1.0 1.0 + loop = true + } + + } + engage + { + AUDIO + { + channel = Ship + clip = sound_vent_medium + volume = 1.0 + pitch = 2.0 + loop = false + } + } + flameout + { + PREFAB_PARTICLE + { + prefabName = fx_exhaustSparks_flameout_2 + transformName = thrustTransform + oneShot = true + } + AUDIO + { + channel = Ship + clip = sound_explosion_low + volume = 1.0 + pitch = 2.0 + loop = false + } + } + } + + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rocketFX + // This links the effects to a given ModuleEngines if desired. If not, it will use the basic one. + engineID = basicEngine + + // List out all controllers we want available + // This controller scales with atmosphere depth + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + // This controller scales with effective throttle + CONTROLLER + { + name = throttle + linkedTo = throttle + } + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-mono-upper-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustTransform + position = 0,0,0.1 +rotation = 0, 0, 0 +scale = 3.7, 3.7, 5 + } + } +} diff --git a/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallRCS.cfg b/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallRCS.cfg new file mode 100644 index 0000000..adcde1b --- /dev/null +++ b/GameData/NearFutureSpacecraft/Patches/Waterfall/NFSpacecraftWaterfallRCS.cfg @@ -0,0 +1,405 @@ + +@PART[rcsblock-orbital-2way-45-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,0.015,0 +rotation = 0, 0, 180 +scale = 1.3, 1, 1.3 + } + } + +} + + +@PART[rcsblock-orbital-2way-45-2]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,0.015,0 +rotation = 0, 0, 180 +scale = 1.3, 1, 1.3 + } + } + +} + + +@PART[rcsblock-orbital-3way-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,0.015,0 +rotation = 0, 0, 180 +scale = 1.3, 1, 1.3 + } + } + +} + + +@PART[rcsblock-orbital-4way-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,0.015,0 +rotation = 0, 0, 180 +scale = 1.3, 1, 1.3 + } + } + +} + + +@PART[rcsblock-orbital-5way-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,0.015,0 +rotation = 0, 0, 180 +scale = 1.3, 1, 1.3 + } + } + +} + + +@PART[rcsblock-orbital-linear-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,0.015,0 +rotation = 0, 0, 180 +scale = 1.3, 1, 1.3 + } + } + +} + + +@PART[rcsblock-aero-5way-1]:NEEDS[Waterfall]:FOR[NearFutureSpacecraft] +{ + // Removes the stock effect block, and replace it with one that has no particles + !EFFECTS {} + EFFECTS + { + running + { + AUDIO_MULTI_POOL + { + channel = Ship + transformName = thrustVector + clip = sound_rocket_mini + volume = 0.0 0.0 + volume = 0.1 0.0 + volume = 0.5 0.025 + volume = 1.0 0.1 + pitch = 0.0 0.75 + pitch = 1.0 1.5 + loop = true + } + } + } + MODULE + { + name = ModuleWaterfallFX + // This is a custom name + moduleID = rcsFX + // This links the effects to a given ModuleEngines + engineID = basicEngine + + // List out all controllers we want available + CONTROLLER + { + name = atmosphereDepth + linkedTo = atmosphere_density + } + CONTROLLER + { + name = rcs + linkedTo = rcs + } + + TEMPLATE + { + // This is the name of the template to use + templateName = template-nfs-rcs-small-1 + // This field allows you to override the parentTransform name in the EFFECTS contained in the template + overrideParentTransform = thrustVector + position = 0,-0.015,0 + rotation = 0, 0, 180 + scale = 0.8, 1, 0.8 + } + } + +} \ No newline at end of file diff --git a/GameData/NearFutureSpacecraft/Patches/Waterfall/template-nfs-mono-upper-1.cfg b/GameData/NearFutureSpacecraft/Patches/Waterfall/template-nfs-mono-upper-1.cfg new file mode 100644 index 0000000..5588bcb --- /dev/null +++ b/GameData/NearFutureSpacecraft/Patches/Waterfall/template-nfs-mono-upper-1.cfg @@ -0,0 +1,244 @@ +EFFECTTEMPLATE +{ + templateName = template-nfs-mono-upper-1 + EFFECT + { + name = newEffect + parentName = thrustTransform + MODEL + { + path = Waterfall/FX/fx-cylinder + positionOffset = 0,0,-0.0299999993 + rotationOffset = -90,0,0 + scaleOffset = 0.140000001,2.29999995,0.140000001 + MATERIAL + { + transform = Cylinder + shader = Waterfall/Additive (Dynamic) + TEXTURE + { + textureSlotName = _MainTex + texturePath = Waterfall/FX/fx-noise-4 + textureScale = 1,1 + textureOffset = 0,0 + } + COLOR + { + colorName = _StartTint + colorValue = 0.913725495,0.643137276,0.352941185,1 + } + COLOR + { + colorName = _EndTint + colorValue = 0.921568632,0.850980401,0.850980401,1 + } + FLOAT + { + floatName = _TintFalloff + value = 2.88166213 + } + FLOAT + { + floatName = _Falloff + value = 3.13443971 + } + FLOAT + { + floatName = _Noise + value = 9.32748604 + } + FLOAT + { + floatName = _SymmetryStrength + value = 0 + } + FLOAT + { + floatName = _Symmetry + value = 0 + } + FLOAT + { + floatName = _FadeIn + value = 0.00499999989 + } + FLOAT + { + floatName = _FadeOut + value = 0.343777239 + } + FLOAT + { + floatName = _TileY + value = 1.5875051 + } + FLOAT + { + floatName = _SpeedY + value = 64.6999054 + } + FLOAT + { + floatName = _Fresnel + value = 0.657221198 + } + FLOAT + { + floatName = _Brightness + value = 1.45499933 + } + FLOAT + { + floatName = _ExpandLinear + value = 3.13443947 + } + FLOAT + { + floatName = _TileX + value = 2 + } + FLOAT + { + floatName = _FresnelInvert + value = 0 + } + FLOAT + { + floatName = _SpeedX + value = 0 + } + FLOAT + { + floatName = _ExpandSquare + value = 0 + } + FLOAT + { + floatName = _ExpandBounded + value = 0 + } + } + } + SCALEMODIFIER + { + name = scaleAtmo + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + xCurve + { + key = 0 1 0 0 + key = 1 1 0 0 + } + yCurve + { + key = 0 2 0 0 + key = 1 0.6 0 0 + } + zCurve + { + key = 0 1 0 0 + key = 1 1 0 0 + } + } + FLOATMODIFIER + { + name = brightnessThrottle + controllerName = throttle + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0 0 0 + key = 1 1 0 0 + } + } + FLOATMODIFIER + { + name = brightnessAtmo + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = MULTIPLY + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0.2 0 0 + key = 1 0.8 0 0 + } + } + FLOATMODIFIER + { + name = spreadAtmo + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _ExpandLinear + floatCurve + { + key = 0 28 0 0 + key = 1 2 0 0 + } + } + FLOATMODIFIER + { + name = falloffatmo + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = True + randomnessController = random + randomnessScale = 0.0500000007 + floatName = _Falloff + floatCurve + { + key = 0 15 0 0 + key = 1 11 0 0 + } + } + FLOATMODIFIER + { + name = noiseAtmo + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Noise + floatCurve + { + key = 0 3 0 0 + key = 1 7 0 0 + } + } + FLOATMODIFIER + { + name = aBounding + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _ExpandBounded + floatCurve + { + key = 0 0 0 0 + key = 1 -1.3 0 0 + } + } + } +} diff --git a/GameData/NearFutureSpacecraft/Patches/Waterfall/template-nfs-rcs-small-1.cfg b/GameData/NearFutureSpacecraft/Patches/Waterfall/template-nfs-rcs-small-1.cfg new file mode 100644 index 0000000..3e267a0 --- /dev/null +++ b/GameData/NearFutureSpacecraft/Patches/Waterfall/template-nfs-rcs-small-1.cfg @@ -0,0 +1,93 @@ +EFFECTTEMPLATE +{ + templateName = template-nfs-rcs-small-1 + EFFECT + { + name = rcs + parentName = thrustVector + MODEL + { + path = Waterfall/FX/fx-cylinder + positionOffset = 0,0,0 + rotationOffset = 0,0,0 + scaleOffset = 0.0500000007,1.29999995,0.0500000007 + MATERIAL + { + transform = Cylinder + shader = Waterfall/Additive (Dynamic) + FLOAT + { + floatName = _Falloff + value = 5.66221333 + } + FLOAT + { + floatName = _Fresnel + value = 6.06665754 + } + FLOAT + { + floatName = _Noise + value = 3.26082826 + } + FLOAT + { + floatName = _ExpandLinear + value = 1.71888626 + } + FLOAT + { + floatName = _SpeedY + value = 137.499786 + } + FLOAT + { + floatName = _TileX + value = 5 + } + FLOAT + { + floatName = _Brightness + value = 0.545000732 + } + FLOAT + { + floatName = _FadeIn + value = 0.0606665723 + } + } + } + FLOATMODIFIER + { + name = brightNess + controllerName = rcs + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0 0 0 + key = 1 0.5 0 0 + } + } + FLOATMODIFIER + { + name = expando + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _ExpandLinear + floatCurve + { + key = 0 5 0 0 + key = 1 1 0 0 + } + } + } +} diff --git a/GameData/NearFutureSpacecraft/Patches/Waterfall/template-nfs-superdraco-1.cfg b/GameData/NearFutureSpacecraft/Patches/Waterfall/template-nfs-superdraco-1.cfg new file mode 100644 index 0000000..b7dd274 --- /dev/null +++ b/GameData/NearFutureSpacecraft/Patches/Waterfall/template-nfs-superdraco-1.cfg @@ -0,0 +1,778 @@ +EFFECTTEMPLATE +{ + templateName = template-nfs-superdraco-1 + EFFECT + { + name = shock1 + parentName = thrustTransform + MODEL + { + path = Waterfall/FX/fx-cylinder + positionOffset = 0,0,-0.00999999978 + rotationOffset = -90,0,0 + scaleOffset = 0.0399999991,0.449999988,0.0399999991 + MATERIAL + { + transform = Cylinder + shader = Waterfall/Additive (Dynamic) + FLOAT + { + floatName = _ExpandBounded + value = 0.60666573 + } + FLOAT + { + floatName = _Falloff + value = 2.37610745 + } + FLOAT + { + floatName = _FadeOut + value = 0.257832944 + } + COLOR + { + colorName = _StartTint + colorValue = 0.945098042,0.564224958,0.301960796,1 + } + COLOR + { + colorName = _EndTint + colorValue = 1,0.467970699,0,1 + } + FLOAT + { + floatName = _Brightness + value = 1.85944307 + } + FLOAT + { + floatName = _FresnelInvert + value = 0 + } + FLOAT + { + floatName = _Symmetry + value = 6 + } + FLOAT + { + floatName = _SymmetryStrength + value = 0.398389816 + } + FLOAT + { + floatName = _Noise + value = 5.38415861 + } + FLOAT + { + floatName = _TintFalloff + value = 0.707776666 + } + FLOAT + { + floatName = _Fresnel + value = 0.556110263 + } + FLOAT + { + floatName = _SpeedY + value = 25.2666264 + } + } + } + FLOATMODIFIER + { + name = tBright + controllerName = throttle + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0 0 0 + key = 1 1.6 0 0 + } + } + FLOATMODIFIER + { + name = aBright + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = MULTIPLY + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0.8 0 0 + key = 1 1 0 0 + } + } + FLOATMODIFIER + { + name = aFalloff + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Falloff + floatCurve + { + key = 0 20 0 0 + key = 0.6 2 0 0 + key = 1 2 0 0 + } + } + FLOATMODIFIER + { + name = aLinExp + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _ExpandLinear + floatCurve + { + key = 0 7 0 0 + key = 1 0 0 0 + } + } + SCALEMODIFIER + { + name = tScale + controllerName = throttle + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + xCurve + { + key = 0 1 0 0 + } + yCurve + { + key = 0 0.5 0 0 + key = 1 1 0 0 + } + zCurve + { + key = 0 1 0 0 + } + } + } + EFFECT + { + name = shock1 + parentName = thrustTransform + MODEL + { + path = Waterfall/FX/fx-cylinder + positionOffset = 0,0,0.25 + rotationOffset = -90,0,0 + scaleOffset = 0.0450000018,0.600000024,0.0450000018 + MATERIAL + { + transform = Cylinder + shader = Waterfall/Additive (Dynamic) + COLOR + { + colorName = _StartTint + colorValue = 0.945098042,0.564224958,0.301960796,1 + } + COLOR + { + colorName = _EndTint + colorValue = 1,0.467970699,0,1 + } + FLOAT + { + floatName = _ExpandBounded + value = 0.60666573 + } + FLOAT + { + floatName = _Falloff + value = 2.37610745 + } + FLOAT + { + floatName = _FadeOut + value = 0.257832944 + } + FLOAT + { + floatName = _Brightness + value = 1.85944307 + } + FLOAT + { + floatName = _FresnelInvert + value = 0 + } + FLOAT + { + floatName = _Symmetry + value = 6 + } + FLOAT + { + floatName = _SymmetryStrength + value = 0.398389816 + } + FLOAT + { + floatName = _Noise + value = 5.38415861 + } + FLOAT + { + floatName = _TintFalloff + value = 0.707776666 + } + FLOAT + { + floatName = _Fresnel + value = 0.556110263 + } + FLOAT + { + floatName = _SpeedY + value = 25.2666264 + } + FLOAT + { + floatName = _FadeIn + value = 0.156721979 + } + } + } + FLOATMODIFIER + { + name = tBright + controllerName = throttle + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0 0 0 + key = 1 1.6 0 0 + } + } + FLOATMODIFIER + { + name = aBright + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = MULTIPLY + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0 0 0 + key = 1 1 0 0 + } + } + FLOATMODIFIER + { + name = aFalloff + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Falloff + floatCurve + { + key = 0 20 0 0 + key = 1 2 0 0 + } + } + FLOATMODIFIER + { + name = aLinExp + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _ExpandLinear + floatCurve + { + key = 0 7 0 0 + key = 1 0.5 0 0 + } + } + POSITIONMODIFIER + { + name = tPos + controllerName = throttle + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + xCurve + { + } + yCurve + { + key = 0 0.3 0 0 + key = 1 0 0 0 + } + zCurve + { + key = 0 0 0 0 + key = 1 0 0 0 + } + } + SCALEMODIFIER + { + name = aScale + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + xCurve + { + key = 0 4 0 0 + key = 1 1 0 0 + } + yCurve + { + key = 0 4 0 0 + key = 1 1 0 0 + } + zCurve + { + key = 0 4 0 0 + key = 1 1 0 0 + } + } + } + EFFECT + { + name = shock1 + parentName = thrustTransform + MODEL + { + path = Waterfall/FX/fx-cylinder + positionOffset = 0,0,0.5 + rotationOffset = -90,0,0 + scaleOffset = 0.0500000007,0.649999976,0.0500000007 + MATERIAL + { + transform = Cylinder + shader = Waterfall/Additive (Dynamic) + COLOR + { + colorName = _StartTint + colorValue = 0.945098042,0.564224958,0.301960796,1 + } + COLOR + { + colorName = _EndTint + colorValue = 1,0.467970699,0,1 + } + FLOAT + { + floatName = _ExpandBounded + value = 0.60666573 + } + FLOAT + { + floatName = _Falloff + value = 2.37610745 + } + FLOAT + { + floatName = _FadeOut + value = 0.257832944 + } + FLOAT + { + floatName = _Brightness + value = 1.85944307 + } + FLOAT + { + floatName = _FresnelInvert + value = 0 + } + FLOAT + { + floatName = _Symmetry + value = 6 + } + FLOAT + { + floatName = _SymmetryStrength + value = 0.398389816 + } + FLOAT + { + floatName = _Noise + value = 5.38415861 + } + FLOAT + { + floatName = _TintFalloff + value = 0.707776666 + } + FLOAT + { + floatName = _Fresnel + value = 0.556110263 + } + FLOAT + { + floatName = _SpeedY + value = 25.2666264 + } + FLOAT + { + floatName = _FadeIn + value = 0.156721979 + } + } + } + POSITIONMODIFIER + { + name = tPos + controllerName = throttle + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + xCurve + { + } + yCurve + { + key = 0 0.3 0 0 + key = 1 0 0 0 + } + zCurve + { + key = 0 0 0 0 + key = 1 0 0 0 + } + } + FLOATMODIFIER + { + name = tBright + controllerName = throttle + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0 0 0 + key = 1 1.6 0 0 + } + } + FLOATMODIFIER + { + name = aBright + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = MULTIPLY + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0 0 0 + key = 0.8 0 0 0 + key = 1 1 0 0 + } + } + FLOATMODIFIER + { + name = aFalloff + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Falloff + floatCurve + { + key = 0 20 0 0 + key = 1 2 0 0 + } + } + FLOATMODIFIER + { + name = aLinExp + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _ExpandLinear + floatCurve + { + key = 0 7 0 0 + key = 1 1 0 0 + } + } + SCALEMODIFIER + { + name = aScale + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + xCurve + { + key = 0 5 0 0 + key = 1 1 0 0 + } + yCurve + { + key = 0 3 0 0 + key = 1 1 0 0 + } + zCurve + { + key = 0 5 0 0 + key = 1 1 0 0 + } + } + } + EFFECT + { + name = shock1 + parentName = thrustTransform + MODEL + { + path = Waterfall/FX/fx-cylinder + positionOffset = 0,0,0.800000012 + rotationOffset = -90,0,0 + scaleOffset = 0.0549999997,1.20000005,0.0549999997 + MATERIAL + { + transform = Cylinder + shader = Waterfall/Additive (Dynamic) + COLOR + { + colorName = _StartTint + colorValue = 0.945098042,0.564224958,0.301960796,1 + } + COLOR + { + colorName = _EndTint + colorValue = 1,0.467970699,0,1 + } + FLOAT + { + floatName = _ExpandBounded + value = 0.60666573 + } + FLOAT + { + floatName = _Falloff + value = 2.37610745 + } + FLOAT + { + floatName = _FadeOut + value = 0.257832944 + } + FLOAT + { + floatName = _Brightness + value = 1.85944307 + } + FLOAT + { + floatName = _FresnelInvert + value = 0 + } + FLOAT + { + floatName = _Symmetry + value = 6 + } + FLOAT + { + floatName = _SymmetryStrength + value = 0.398389816 + } + FLOAT + { + floatName = _Noise + value = 6.67332315 + } + FLOAT + { + floatName = _TintFalloff + value = 0.707776666 + } + FLOAT + { + floatName = _Fresnel + value = 0.556110263 + } + FLOAT + { + floatName = _SpeedY + value = 35 + } + FLOAT + { + floatName = _FadeIn + value = 0.156721979 + } + FLOAT + { + floatName = _TileY + value = 2 + } + } + } + POSITIONMODIFIER + { + name = tPos + controllerName = throttle + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + xCurve + { + } + yCurve + { + key = 0 0.3 0 0 + key = 1 0 0 0 + } + zCurve + { + key = 0 0 0 0 + key = 1 0 0 0 + } + } + FLOATMODIFIER + { + name = tBright + controllerName = throttle + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0 0 0 + key = 1 1.6 0 0 + } + } + FLOATMODIFIER + { + name = aBright + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = MULTIPLY + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Brightness + floatCurve + { + key = 0 0 0 0 + key = 0.6 0 0 0 + key = 1 1 0 0 + } + } + FLOATMODIFIER + { + name = aFalloff + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _Falloff + floatCurve + { + key = 0 20 0 0 + key = 1 2 0 0 + } + } + FLOATMODIFIER + { + name = aLinExp + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + floatName = _ExpandLinear + floatCurve + { + key = 0 7 0 0 + key = 1 1 0 0 + } + } + SCALEMODIFIER + { + name = aScale + controllerName = atmosphereDepth + transformName = Cylinder + combinationType = REPLACE + useRandomness = False + randomnessController = random + randomnessScale = 1 + xCurve + { + key = 0 6 0 0 + key = 1 1 0 0 + } + yCurve + { + key = 0 3 0 0 + key = 1 1 0 0 + } + zCurve + { + key = 0 6 0 0 + key = 1 1 0 0 + } + } + } +} diff --git a/GameData/NearFutureSpacecraft/Plugins/NearFutureUtils.dll b/GameData/NearFutureSpacecraft/Plugins/NearFutureUtils.dll new file mode 100644 index 0000000..a3c02ef Binary files /dev/null and b/GameData/NearFutureSpacecraft/Plugins/NearFutureUtils.dll differ diff --git a/GameData/NearFutureSpacecraft/Versioning/NearFutureSpacecraft.version b/GameData/NearFutureSpacecraft/Versioning/NearFutureSpacecraft.version index a5f8f12..7c885a0 100644 --- a/GameData/NearFutureSpacecraft/Versioning/NearFutureSpacecraft.version +++ b/GameData/NearFutureSpacecraft/Versioning/NearFutureSpacecraft.version @@ -5,15 +5,15 @@ "VERSION": { "MAJOR":1, - "MINOR":3, - "PATCH":3, + "MINOR":4, + "PATCH":0, "BUILD":0 }, "KSP_VERSION": { "MAJOR":1, - "MINOR":10, - "PATCH":1 + "MINOR":11, + "PATCH":0 }, "KSP_VERSION_MIN":{ "MAJOR":1, @@ -22,7 +22,7 @@ }, "KSP_VERSION_MAX":{ "MAJOR":1, - "MINOR":10, + "MINOR":11, "PATCH":99 } } diff --git a/README.md b/README.md index 9c8dfe0..def82bf 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ A number of parts designed to help build better and cooler orbital (and not so o These components are required for the mod to function and are bundled as part of any download: * [ModuleManager (4.1.3)](https://github.com/sarbian/ModuleManager) * [B9PartSwitch (2.13.0)](https://github.com/blowfishpro/B9PartSwitch) -* [Near Future Props (0.6.2)](https://github.com/ChrisAdderley/NearFutureProps) +* [Near Future Props (0.6.2)](https://github.com/post-kerbin-mining-corporation/NearFutureProps) ## Installation diff --git a/Source/NearFutureUtils/ModuleAdvancedColorChanger.cs b/Source/NearFutureUtils/ModuleAdvancedColorChanger.cs new file mode 100644 index 0000000..6d94224 --- /dev/null +++ b/Source/NearFutureUtils/ModuleAdvancedColorChanger.cs @@ -0,0 +1,221 @@ +using System; +using System.Collections.Generic; +using UnityEngine; +using KSP.Localization; + +namespace NearFutureUtils +{ + public class ModuleAdvancedColorChanger : PartModule, IScalarModule + { + [KSPField] + public float colorScale = 1f; + + [KSPField] + public string moduleID; + + [KSPField] + public float animRate; + + [KSPField] + public string shaderProperty; + + [KSPField] + public FloatCurve redCurve = new FloatCurve(); + + [KSPField] + public FloatCurve greenCurve = new FloatCurve(); + + [KSPField] + public FloatCurve blueCurve = new FloatCurve(); + + [KSPField] + public FloatCurve alphaCurve = new FloatCurve(); + + [KSPField] + public string includedTransformList; + + [KSPField(isPersistant = true)] + public bool animState = false; + + + [KSPField] + public bool toggleInEditor = true; + + [KSPField] + public bool toggleInFlight = true; + + [KSPField] + public string eventOnName = string.Empty; + + [KSPField] + public string eventOffName = string.Empty; + + [KSPField] + public KSPActionGroup defaultActionGroup; + + [KSPEvent(unfocusedRange = 5f, guiActiveUnfocused = true, guiActive = true, guiActiveEditor = true, guiName = "#autoLOC_6001829")] + public virtual void ToggleEvent() + { + animState = !animState; + + SetState(animState, false); + SetEventName(animState); + } + + [KSPAction("Toggle Color", KSPActionGroup.REPLACEWITHDEFAULT)] + public virtual void ToggleAction(KSPActionParam param) + { + ToggleEvent(); + } + + public EventData OnMoving => OnMove; + + public EventData OnStop => OnStopped; + private EventData OnMove = new EventData("OnMove"); + private EventData OnStopped = new EventData("OnStop"); + public string ScalarModuleID + { + get { return moduleID; } + } + public bool CanMove + { + get { return true; } + } + public float GetScalar + { + get { return animationFraction; } + } + + + public void SetScalar(float t) + { + animationGoal = t; + } + + public bool IsMoving() + { + return true; + } + + + + public void SetUIWrite(bool value) + { } + public void SetUIRead(bool value) + { } + + protected float animationFraction = 0f; + protected float animationGoal = 0f; + protected List targetRenderers; + public override void OnAwake() + { + base.OnAwake(); + BaseAction baseAction = base.Actions["ToggleAction"]; + if (baseAction.actionGroup == KSPActionGroup.REPLACEWITHDEFAULT) + { + baseAction.actionGroup = defaultActionGroup; + } + if (baseAction.defaultActionGroup == KSPActionGroup.REPLACEWITHDEFAULT) + { + baseAction.defaultActionGroup = defaultActionGroup; + } + } + protected void Start() + { + + SetupRenderers(); + SetState(animState, true); + SetEventName(animState); + + Utils.Log($"[ModuleAdvancedColorChanger] {moduleID} Set up {targetRenderers.Count} renderers"); + } + + protected void SetState(bool newState, bool snapTo) + { + if (targetRenderers != null) + { + if (newState) + { + animationGoal = 1f; + if (snapTo) + animationFraction = 1f; + } + else + { + animationGoal = 0f; + if (snapTo) + animationFraction = 0f; + } + + Color c = new Color(redCurve.Evaluate(animationFraction) * colorScale, greenCurve.Evaluate(animationFraction) * colorScale, blueCurve.Evaluate(animationFraction) * colorScale, alphaCurve.Evaluate(animationFraction) * colorScale); + + foreach (Renderer r in targetRenderers) + { + r.material.SetColor(shaderProperty, c); + } + } + + } + + protected void SetEventName(bool newState) + { + if (newState) + Events["ToggleEvent"].guiName = Localizer.Format(eventOffName); + else + Events["ToggleEvent"].guiName = Localizer.Format(eventOnName); + } + + protected void SetupRenderers() + { + targetRenderers = new List(); + if (includedTransformList == "") + { + foreach (Transform x in part.GetComponentsInChildren()) + { + Renderer r = x.GetComponent(); + + if (r != null && r.material.HasProperty(shaderProperty)) targetRenderers.Add(r); + } + } + else + { + string[] allXformNames = includedTransformList.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); + foreach (string xformName in allXformNames) + { + Transform[] xforms = part.FindModelTransforms(xformName); + foreach (Transform x in xforms) + { + Renderer r = x.GetComponent(); + + if (r != null && r.material.HasProperty(shaderProperty)) + targetRenderers.Add(r); + } + } + } + } + protected void Update() + { + if (targetRenderers != null && (HighLogic.LoadedSceneIsEditor || HighLogic.LoadedSceneIsFlight)) + { + animationFraction = Mathf.MoveTowards(animationFraction, animationGoal, TimeWarp.deltaTime * animRate); + + Color c = new Color(redCurve.Evaluate(animationFraction) * colorScale, greenCurve.Evaluate(animationFraction) * colorScale, blueCurve.Evaluate(animationFraction) * colorScale, alphaCurve.Evaluate(animationFraction) * colorScale); + + foreach (Renderer r in targetRenderers) + { + r.material.SetColor(shaderProperty, c); + } + if (animationFraction == animationGoal) + { + if (animationGoal == 0) + animState = false; + else + animState = true; + + SetEventName(animState); + } + } + } + + } +} diff --git a/Source/NearFutureUtils/ModuleAnimateRCS.cs b/Source/NearFutureUtils/ModuleAnimateRCS.cs new file mode 100644 index 0000000..d7935a8 --- /dev/null +++ b/Source/NearFutureUtils/ModuleAnimateRCS.cs @@ -0,0 +1,56 @@ +using System.Collections.Generic; +using UnityEngine; + +namespace NearFutureUtils +{ + public class ModuleAnimateRCS : PartModule + { + [KSPField(isPersistant = false)] + public FloatCurve alphaCurve = new FloatCurve(); + + [KSPField(isPersistant = false)] + public FloatCurve blueCurve = new FloatCurve(); + + [KSPField(isPersistant = false)] + public FloatCurve greenCurve = new FloatCurve(); + + [KSPField(isPersistant = false)] + public FloatCurve redCurve = new FloatCurve(); + + [KSPField(isPersistant = false)] + public string shaderColorParameter = "_EmissiveColor"; + + ModuleRCSFX rcs; + List thrustMaterials; + + public void Start() + { + rcs = part.GetComponent(); + + thrustMaterials = new List(); + foreach (Transform t in rcs.thrusterTransforms) + { + thrustMaterials.Add(t.GetComponentInChildren().material); + } + } + + public void FixedUpdate() + { + + if (HighLogic.LoadedSceneIsFlight) + { + for (int i = 0; i < thrustMaterials.Count; i++) + { + float thrust = rcs.thrustForces[i] / rcs.thrusterPower; + Color c; + c = new Color(redCurve.Evaluate(thrust), + greenCurve.Evaluate(thrust), + blueCurve.Evaluate(thrust), + alphaCurve.Evaluate(thrust)); + thrustMaterials[i].SetColor(shaderColorParameter, c); + + } + } + } + } +} diff --git a/Source/NearFutureUtils/NearFutureUtils.csproj b/Source/NearFutureUtils/NearFutureUtils.csproj new file mode 100644 index 0000000..b083207 --- /dev/null +++ b/Source/NearFutureUtils/NearFutureUtils.csproj @@ -0,0 +1,105 @@ + + + + Debug + AnyCPU + 8.0.30703 + 2.0 + {218A5CC9-5001-4298-B9A6-405A2A22BDA3} + Library + Properties + NearFutureUtils + NearFutureUtils + v4.5 + 512 + + + + true + full + false + ..\..\GameData\NearFutureSpacecraft\Plugins\ + TRACE + prompt + 4 + Off + false + + + pdbonly + true + bin\Release\ + + + prompt + 4 + false + Off + + + + ..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\KSP_x64_Data\Managed\Assembly-CSharp.dll + + + ..\..\..\..\..\..\..\Games\Steam\steamapps\common\Kerbal Space Program\KSP_x64_Data\Managed\KSPAssets.dll + + + + + + + + + + ..\..\..\..\..\..\..\Games\Steam\steamapps\common\Kerbal Space Program\KSP_x64_Data\Managed\UnityEngine.dll + + + False + ..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\KSP_x64_Data\Managed\UnityEngine.AnimationModule.dll + + + False + ..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\KSP_x64_Data\Managed\UnityEngine.AssetBundleModule.dll + + + ..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\KSP_x64_Data\Managed\UnityEngine.CoreModule.dll + + + False + ..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\KSP_x64_Data\Managed\UnityEngine.IMGUIModule.dll + + + False + ..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\KSP_x64_Data\Managed\UnityEngine.InputLegacyModule.dll + + + False + ..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\KSP_x64_Data\Managed\UnityEngine.ParticleSystemModule.dll + + + False + ..\..\..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\Kerbal Space Program\KSP_x64_Data\Managed\UnityEngine.TextRenderingModule.dll + + + ..\..\..\..\..\..\..\Games\Steam\steamapps\common\Kerbal Space Program\KSP_x64_Data\Managed\UnityEngine.UI.dll + + + + + + + + + + + + copy /Y "$(TargetDir)$(ProjectName).dll" "$(SolutionDir)\..\..\GameData\NearFutureSpacecraft\Plugins\NearFutureUtils.dll" + + + \ No newline at end of file diff --git a/Source/NearFutureUtils/NearFutureUtils.sln b/Source/NearFutureUtils/NearFutureUtils.sln new file mode 100644 index 0000000..d76bca5 --- /dev/null +++ b/Source/NearFutureUtils/NearFutureUtils.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.28307.539 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NearFutureUtils", "NearFutureUtils.csproj", "{218A5CC9-5001-4298-B9A6-405A2A22BDA3}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {218A5CC9-5001-4298-B9A6-405A2A22BDA3}.Debug|Any CPU.ActiveCfg = Release|Any CPU + {218A5CC9-5001-4298-B9A6-405A2A22BDA3}.Debug|Any CPU.Build.0 = Release|Any CPU + {218A5CC9-5001-4298-B9A6-405A2A22BDA3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {218A5CC9-5001-4298-B9A6-405A2A22BDA3}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {889F8676-A650-469C-9EB2-16B04346CC1A} + EndGlobalSection +EndGlobal diff --git a/Source/NearFutureUtils/Properties/AssemblyInfo.cs b/Source/NearFutureUtils/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..4316347 --- /dev/null +++ b/Source/NearFutureUtils/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("GlowingReputation")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("GlowingReputation")] +[assembly: AssemblyCopyright("Copyright © 2016")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("ca27a9c5-b2a2-45d8-a9ac-2053bb93c2d6")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Source/NearFutureUtils/Settings.cs b/Source/NearFutureUtils/Settings.cs new file mode 100644 index 0000000..4233187 --- /dev/null +++ b/Source/NearFutureUtils/Settings.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace NearFutureUtils +{ + + /// + /// Static class to hold settings and configuration + /// + public static class Settings + { + /// Settings go here + public static bool DebugMode = true; + + } +} diff --git a/Source/NearFutureUtils/Utils.cs b/Source/NearFutureUtils/Utils.cs new file mode 100644 index 0000000..e74438b --- /dev/null +++ b/Source/NearFutureUtils/Utils.cs @@ -0,0 +1,93 @@ +// Utils +using System; +using System.Collections.Generic; +using UnityEngine; + +namespace NearFutureUtils +{ + public enum LogType + { + Any + } + public static class Utils + { + public static string ModName = "NearFutureUtils"; + + /// + /// Log a message with the mod name tag prefixed + /// + /// message string + public static void Log(string str) + { + Utils.Log(str, LogType.Any); + } + + /// + /// Log a message with the mod name tag prefixed + /// + /// message string + public static void Log(string str, LogType logType) + { + bool doLog = false; + if (logType == LogType.Any) doLog = true; + + if (doLog) + Debug.Log(String.Format("[{0}]{1}", ModName, str)); + } + + /// + /// Log an error with the mod name tag prefixed + /// + /// Error string + public static void LogError(string str) + { + Debug.LogError(String.Format("[{0}]{1}", ModName, str)); + } + + /// + /// Log a warning with the mod name tag prefixed + /// + /// warning string + public static void LogWarning(string str) + { + Debug.LogWarning(String.Format("[{0}]{1}", ModName, str)); + } + + public static ConfigNode SerializeFloatCurve(string name, FloatCurve curve) + { + ConfigNode node = new ConfigNode(); + curve.Save(node); + node.name = name; + return node; + } + } + public static class ConfigNodeParseExtension + { + public static bool TryParseVector3(this ConfigNode theNode, string valueName, ref Vector3 result) + { + if (!theNode.HasValue(valueName)) return false; + + result = ConfigNode.ParseVector3(theNode.GetValue(valueName)); + return true; + } + } + public static class TransformDeepChildExtension + { + //Breadth-first search + public static Transform FindDeepChild(this Transform aParent, string aName) + { + Queue queue = new Queue(); + queue.Enqueue(aParent); + while (queue.Count > 0) + { + var c = queue.Dequeue(); + if (c.name == aName) + return c; + foreach (Transform t in c) + queue.Enqueue(t); + } + return null; + } + + } +} diff --git a/changelog.txt b/changelog.txt index 3443cff..697a31f 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,3 +1,13 @@ +v1.4.0 +------ +- KSP 1.11 +- Updated NearFutureProps to 0.6.4 +- Added inventories to all command parts +- Set up appropriate parts for cargo, etc +- Upgraded Pandora docking light to new light system +- Added Waterfall support to Pandora light +- Added Waterfall support to engines + v1.3.3 ------ - Fixed IVA portraits on Mk3-9 pod diff --git a/readme.txt b/readme.txt index f090bb3..13d8c64 100644 --- a/readme.txt +++ b/readme.txt @@ -9,7 +9,7 @@ DEPENDENCIES ============ Required -- NearFutureProps (0.6.3) +- NearFutureProps (0.6.4) - B9 Part Switch (2.17.0) - ModuleManager (4.1.4)