Merge pull request #149 from PorktoberRevolution/fairings

Fairings
pull/151/head
Chris Adderley 5 years ago committed by GitHub
commit da8bee800c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

@ -0,0 +1,363 @@
// Patches applying art changes to fairings
// Contents:
- AE-FF1 Airstream Protective Shell (1.25m) (fairingSize1)
- AE-FF2 Airstream Protective Shell (2.5m) (fairingSize2)
- AE-FF3 Airstream Protective Shell (3.75m) (fairingSize3)
@PART[fairingSize1]
{
@author = Chris Adderley (Nertea)
!mesh = DELETE
!MODEL {}
MODEL {
model = ReStock/Assets/Payload/restock-fairing-base-125-1
}
@MODULE[ModuleProceduralFairing]
{
@nSides = 36
@pivot = 0,0.15, 0
@TextureURL = ReStock/Assets/Payload/restock-fairing-125-1
@CapTextureURL = ReStock/Assets/Payload/restock-fairing-cap-1
@TextureNormalURL = ReStock/Assets/Payload/restock-fairing-125-1-n
}
@MODULE[ModulePartVariants]
{
@VARIANT[White]
{
!TEXTURE {}
!EXTRA_INFO {}
TEXTURE
{
materialName=FairingIconShell
mainTextureURL = ReStock/Assets/Payload/restock-fairing-125-1
}
EXTRA_INFO
{
FairingsTextureURL= ReStock/Assets/Payload/restock-fairing-125-1
FairingsNormalURL= ReStock/Assets/Payload/restock-fairing-125-1-n
CapTextureURL = ReStock/Assets/Payload/restock-fairing-cap-1
}
GAMEOBJECTS
{
FairingBase125White = true
FairingBase125BlackWhite = false
FairingBase125Orange = false
FairingBase125Dark = false
}
}
@VARIANT[Grey]
{
!TEXTURE {}
!EXTRA_INFO {}
TEXTURE
{
materialName=FairingIconShell
mainTextureURL = ReStock/Assets/Payload/restock-fairing-125-1-blackwhite
}
EXTRA_INFO
{
FairingsTextureURL= ReStock/Assets/Payload/restock-fairing-125-1-blackwhite
FairingsNormalURL= ReStock/Assets/Payload/restock-fairing-125-1-n
CapTextureURL = ReStock/Assets/Payload/restock-fairing-cap-1-blackandwhite
}
GAMEOBJECTS
{
FairingBase125White = false
FairingBase125BlackWhite = true
FairingBase125Orange = false
FairingBase125Dark = false
}
}
@VARIANT[Dark?Grey]
{
!TEXTURE {}
!EXTRA_INFO {}
TEXTURE
{
materialName=FairingIconShell
mainTextureURL = ReStock/Assets/Payload/restock-fairing-125-1-orange
}
EXTRA_INFO
{
FairingsTextureURL= ReStock/Assets/Payload/restock-fairing-125-1-orange
FairingsNormalURL= ReStock/Assets/Payload/restock-fairing-125-1-n
CapTextureURL = ReStock/Assets/Payload/restock-fairing-cap-1-orange
}
GAMEOBJECTS
{
FairingBase125White = false
FairingBase125BlackWhite = false
FairingBase125Orange = true
FairingBase125Dark = false
}
}
VARIANT
{
name = Dark
displayName = #autoLOC_8007117
themeName = Dark
primaryColor = #4c4f47
secondaryColor = #4c4f47
TEXTURE
{
materialName=FairingIconShell
mainTextureURL = ReStock/Assets/Payload/restock-fairing-125-1-dark
}
EXTRA_INFO
{
FairingsTextureURL= ReStock/Assets/Payload/restock-fairing-125-1-dark
FairingsNormalURL= ReStock/Assets/Payload/restock-fairing-125-1-n
CapTextureURL = ReStock/Assets/Payload/restock-fairing-cap-1-blackandwhite
}
GAMEOBJECTS
{
FairingBase125White = false
FairingBase125BlackWhite = false
FairingBase125Orange = false
FairingBase125Dark = true
}
}
}
MODULE
{
name = ModuleRestockModifyFairingMaterials
COLOR_PROPERTY
{
name = _Color
color = 1.0, 1.0, 1.0, 1.0
}
COLOR_PROPERTY
{
name = _SpecColor
color = 0.753, 0.753, 0.753, 1.0
}
FLOAT_PROPERTY
{
name = _Shininess
value = 0.3
}
}
}
@PART[fairingSize2]
{
@author = Chris Adderley (Nertea)
!mesh = DELETE
!MODEL {}
MODEL {
model = ReStock/Assets/Payload/restock-fairing-base-25-1
}
@MODULE[ModuleProceduralFairing]
{
@nSides = 24
@pivot = 0,0.15, 0
@TextureURL = ReStock/Assets/Payload/restock-fairing-25-1
@CapTextureURL = ReStock/Assets/Payload/restock-fairing-cap-1
@TextureNormalURL = ReStock/Assets/Payload/restock-fairing-25-1-n
}
@MODULE[ModulePartVariants]
{
@VARIANT[White]
{
!TEXTURE {}
!EXTRA_INFO {}
TEXTURE
{
materialName=FairingIconShell
mainTextureURL = ReStock/Assets/Payload/restock-fairing-25-1
}
EXTRA_INFO
{
FairingsTextureURL= ReStock/Assets/Payload/restock-fairing-25-1
FairingsNormalURL= ReStock/Assets/Payload/restock-fairing-25-1-n
CapTextureURL = ReStock/Assets/Payload/restock-fairing-cap-1
}
GAMEOBJECTS
{
FairingBase25White = true
FairingBase25BlackWhite = false
FairingBase25Orange =false
}
}
@VARIANT[Grey]
{
!TEXTURE {}
!EXTRA_INFO {}
TEXTURE
{
materialName=FairingIconShell
mainTextureURL = ReStock/Assets/Payload/restock-fairing-25-1-blackwhite
}
EXTRA_INFO
{
FairingsTextureURL= ReStock/Assets/Payload/restock-fairing-25-1-blackwhite
FairingsNormalURL= ReStock/Assets/Payload/restock-fairing-25-1-n
CapTextureURL = ReStock/Assets/Payload/restock-fairing-cap-1-blackandwhite
}
GAMEOBJECTS
{
FairingBase25White = false
FairingBase25BlackWhite = true
FairingBase25Orange =false
}
}
@VARIANT[Dark?Grey]
{
!TEXTURE {}
!EXTRA_INFO {}
TEXTURE
{
materialName=FairingIconShell
mainTextureURL = ReStock/Assets/Payload/restock-fairing-25-1-orange
}
EXTRA_INFO
{
FairingsTextureURL= ReStock/Assets/Payload/restock-fairing-25-1-orange
FairingsNormalURL= ReStock/Assets/Payload/restock-fairing-25-1-n
CapTextureURL = ReStock/Assets/Payload/restock-fairing-cap-1-orange
}
GAMEOBJECTS
{
FairingBase25White = false
FairingBase25BlackWhite = false
FairingBase25Orange =true
}
}
}
MODULE
{
name = ModuleRestockModifyFairingMaterials
COLOR_PROPERTY
{
name = _Color
color = 1.0, 1.0, 1.0, 1.0
}
COLOR_PROPERTY
{
name = _SpecColor
color = 0.753, 0.753, 0.753, 1.0
}
FLOAT_PROPERTY
{
name = _Shininess
value = 0.3
}
}
}
// 3.75m fairing
@PART[fairingSize3]
{
@author = Chris Adderley (Nertea)
!mesh = DELETE
!MODEL {}
MODEL {
model = ReStock/Assets/Payload/restock-fairing-base-375-1
}
@MODULE[ModuleProceduralFairing]
{
@nSides = 48
@pivot = 0,0.15, 0
@TextureURL = ReStock/Assets/Payload/restock-fairing-25-1
@CapTextureURL = ReStock/Assets/Payload/restock-fairing-cap-1
@TextureNormalURL = ReStock/Assets/Payload/restock-fairing-25-1-n
}
@MODULE[ModulePartVariants]
{
@VARIANT[White]
{
!TEXTURE {}
!EXTRA_INFO {}
TEXTURE
{
materialName=FairingIconShell
mainTextureURL = ReStock/Assets/Payload/restock-fairing-25-1
}
EXTRA_INFO
{
FairingsTextureURL= ReStock/Assets/Payload/restock-fairing-25-1
FairingsNormalURL= ReStock/Assets/Payload/restock-fairing-25-1-n
CapTextureURL = ReStock/Assets/Payload/restock-fairing-cap-1
}
GAMEOBJECTS
{
FairingBase375White = true
FairingBase375BlackWhite = false
FairingBase375Orange =false
}
}
@VARIANT[Grey]
{
!TEXTURE {}
!EXTRA_INFO {}
TEXTURE
{
materialName=FairingIconShell
mainTextureURL = ReStock/Assets/Payload/restock-fairing-25-1-blackwhite
}
EXTRA_INFO
{
FairingsTextureURL= ReStock/Assets/Payload/restock-fairing-25-1-blackwhite
FairingsNormalURL= ReStock/Assets/Payload/restock-fairing-25-1-n
CapTextureURL = ReStock/Assets/Payload/restock-fairing-cap-1-blackandwhite
}
GAMEOBJECTS
{
FairingBase375White = false
FairingBase375BlackWhite = true
FairingBase375Orange =false
}
}
@VARIANT[Dark?Grey]
{
!TEXTURE {}
!EXTRA_INFO {}
TEXTURE
{
materialName=FairingIconShell
mainTextureURL = ReStock/Assets/Payload/restock-fairing-25-1-orange
}
EXTRA_INFO
{
FairingsTextureURL= ReStock/Assets/Payload/restock-fairing-25-1-orange
FairingsNormalURL= ReStock/Assets/Payload/restock-fairing-25-1-n
CapTextureURL = ReStock/Assets/Payload/restock-fairing-cap-1-orange
}
GAMEOBJECTS
{
FairingBase375White = false
FairingBase375BlackWhite = false
FairingBase375Orange =true
}
}
}
MODULE
{
name = ModuleRestockModifyFairingMaterials
COLOR_PROPERTY
{
name = _Color
color = 1.0, 1.0, 1.0, 1.0
}
COLOR_PROPERTY
{
name = _SpecColor
color = 0.753, 0.753, 0.753, 1.0
}
FLOAT_PROPERTY
{
name = _Shininess
value = 0.3
}
}
}

@ -31,7 +31,7 @@
- Heat Shield (2.5m) (Nertea)
- Heat Shield (3.75m) (Nertea)
- Payload
- AE-FF1 Airstream Protective Shell (1.25m) (Nertea)
- AE-FF1 Airstream Protective Shell (1.25m) (Nertea)
- AE-FF2 Airstream Protective Shell (2.5m) (Nertea)
- AE-FF3 Airstream Protective Shell (3.75m) (Nertea)
- Service Bay (1.25m) (Nertea)

@ -0,0 +1,80 @@
using System;
using System.Collections;
using UnityEngine;
namespace Restock
{
public class ModuleRestockModifyFairingMaterials : PartModule
{
[SerializeField]
private string serializedNode;
public override void OnLoad(ConfigNode node)
{
base.OnLoad(node);
if (serializedNode == null)
serializedNode = node.ToString();
}
public override void OnStart(StartState state)
{
base.OnStart(state);
StartCoroutine(WaitAndUpdateMaterials());
}
private IEnumerator WaitAndUpdateMaterials()
{
yield return null;
if (string.IsNullOrEmpty(serializedNode))
{
Debug.LogError("Serialized node is null or empty!");
yield break;
}
ConfigNode node = ConfigNode.Parse(serializedNode).nodes[0];
ModuleProceduralFairing fairingModule = part.FindModuleImplementing<ModuleProceduralFairing>();
if (fairingModule == null)
{
Debug.LogError("No fairing module found on part!");
yield break;
}
UpdateMaterial(fairingModule.FairingMaterial, node);
UpdateMaterial(fairingModule.FairingConeMaterial, node);
UpdateMaterial(fairingModule.FairingFlightMaterial, node);
UpdateMaterial(fairingModule.FairingFlightConeMaterial, node);
foreach (ProceduralFairings.FairingPanel fairingPanel in fairingModule.Panels)
{
MeshRenderer renderer = fairingPanel.go.GetComponent<MeshRenderer>();
UpdateMaterial(renderer.material, node);
}
}
private void UpdateMaterial(Material material, ConfigNode node)
{
foreach (ConfigNode node2 in node.nodes)
{
if (node2.name == "COLOR_PROPERTY")
{
string name = node2.GetValue("name");
Color color = ConfigNode.ParseColor(node2.GetValue("color"));
material.SetColor(name, color);
}
else if (node2.name == "FLOAT_PROPERTY")
{
string name = node2.GetValue("name");
float value = float.Parse(node2.GetValue("value"));
material.SetFloat(name, value);
}
}
}
}
}

@ -41,6 +41,7 @@
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="ModuleRestockModifyFairingMaterials.cs" />
<Compile Include="ModuleRestockModifyMaterials.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>

Loading…
Cancel
Save