Merge pull request #768 from PorktoberRevolution/master

Release 1.0.2
pull/963/head^2 1.0.2
Chris Adderley 4 years ago committed by GitHub
commit 967851b650
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -40,8 +40,8 @@ Localization
#LOC_Restock_variant-engine_boattail_size1p5_white = Boattail (1.875m, White)
#LOC_Restock_variant-engine_boattail_size1_grey-orange = Boattail (1.25m, Orange/Grey)
#LOC_Restock_variant-engine_boattail_size1p5_grey-orange = Boattail (1.875m, Orange/Grey)
#LOC_Restock_variant-engine_tankbutt_size1p5_white = Tankbutt (1.875m, White)
#LOC_Restock_variant-engine_tankbutt_size1p5_grey-orange = Tankbutt (1.875m, Orange/Grey)
#LOC_Restock_variant-engine_tankbutt_size1p5_white = Tankbutt (2.5m, White)
#LOC_Restock_variant-engine_tankbutt_size1p5_grey-orange = Tankbutt (2.5m, Orange/Grey)
#LOC_Restock_variant-engine_shroud_white = White Shroud
#LOC_Restock_variant-engine_shroud_grey-orange = Metallic Shroud

@ -6,7 +6,7 @@
{
"MAJOR":1,
"MINOR":0,
"PATCH":1,
"PATCH":2,
"BUILD":0
},
"KSP_VERSION":

@ -1,3 +1,10 @@
v1.0.2
-----
- Fixed plugin instantiation issue
- Fixed 'tankbutt' localizations for Skiff showing 1.875m when they should be 2.5m (#766)
- Fixed inflatable heatshield fairing (#765)
v1.0.1
-----
- Fixed lack of bundled ModuleManager

@ -12,7 +12,7 @@ PART
rescaleFactor = 1.0
node_stack_top = 0.0, 0.075, 0.0, 0.0, 1.0, 0.0, 1
node_stack_bottom = 0.0, -0.075, 0.0, 0.0, -1.0, 0.0, 1
TechRequired = advancedConstruction
TechRequired = advConstruction
entryCost = 1800
cost = 475
category = Coupling

@ -12,7 +12,7 @@ PART
rescaleFactor = 1.0
node_stack_top = 0.0, 0.075, 0.0, 0.0, 1.0, 0.0, 1
node_stack_bottom = 0.0, -0.075, 0.0, 0.0, -1.0, 0.0, 1
TechRequired = advancedConstruction
TechRequired = advConstruction
entryCost = 1800
cost = 475
category = Coupling

@ -2,7 +2,7 @@
// 1.875m SRB for post-1.8 (mirrors Pollux)
PART
{
name = restock-srb-anvil-1
name = restock-srb-castor-1
module = Part
author = Chris Adderley (Nertea)
rescaleFactor = 1

@ -6,7 +6,7 @@
{
"MAJOR":1,
"MINOR":0,
"PATCH":1,
"PATCH":2,
"BUILD":0
},
"KSP_VERSION":

@ -1,3 +1,8 @@
v1.0.2
-----
- Fixed tech tree locations for 1.875m decoupler and separator
- Fixed Castor SRB having the same part name as old Anvil
v1.0.1
------
- Fixed lack of bundled ModuleManager

@ -13,11 +13,11 @@ namespace Restock
[KSPField] public string shaderProperty = "_EmissiveColor";
// animation curve for the red channel
[KSPField] public FloatCurve redCurve= new FloatCurve();
[KSPField] public FloatCurve redCurve = new FloatCurve();
// animation curve for the green channel
[KSPField] public FloatCurve greenCurve = new FloatCurve();
// animation curve for the blue channel
[KSPField] public FloatCurve blueCurve = new FloatCurve();
@ -26,41 +26,44 @@ namespace Restock
// draper point, the temperature in Kelvin where materials start glowing
[KSPField] public double draperPoint = 798.0;
// temperature where the animation is at its maximum
[KSPField] public double lerpMax = double.NaN;
// temperature where the animation is at its minimum, added with draperPoint
[KSPField] public double lerpMin = 0.0;
// use the part's core temperature? (overrides useSkinTemp)
[KSPField] public bool useCoreTemp = false;
// use the part's skin temperature?
[KSPField] public bool useSkinTemp = false;
// should the module disable the stock blackbody glow effect on the included renderers?
[KSPField] public bool disableBlackbody = false;
[KSPField] public List<Renderer> renderers = new List<Renderer>();
public List<Renderer> renderers = new List<Renderer>();
private readonly string _shaderBlackbody = "_TemperatureColor";
private ModuleCoreHeat _coreHeatModule = null;
private int _shaderPropertyID;
private int _shaderBlackbodyID;
private double _lerpRange;
private Color _emissiveColor = new Color();
private MaterialPropertyBlock _propertyBlock = new MaterialPropertyBlock();
private Color _emissiveColor;
private MaterialPropertyBlock _propertyBlock;
public void Start()
{
if (base.vessel == null) return;
_emissiveColor = new Color();
_propertyBlock = new MaterialPropertyBlock();
if (enableHeatEmissive)
{
if (useCoreTemp)
@ -72,7 +75,7 @@ namespace Restock
useCoreTemp = false;
}
}
if (double.IsNaN(lerpMax))
{
if (useCoreTemp)
@ -95,17 +98,17 @@ namespace Restock
_shaderBlackbodyID = Shader.PropertyToID(_shaderBlackbody);
}
}
public override void OnLoad(ConfigNode node)
{
if (HighLogic.LoadedSceneIsEditor || HighLogic.LoadedSceneIsFlight) return;
renderers = base.part.FindModelComponents<Renderer>();
if (node.HasValue("excludedRenderer"))
{
var excludedRenderers = new List<string>();
excludedRenderers.AddRange(node.GetValues("excludedRenderer"));
for (int i = renderers.Count - 1; i >= 0; i--)
@ -121,7 +124,7 @@ namespace Restock
public void LateUpdate()
{
if (!HighLogic.LoadedSceneIsFlight) return;
if (renderers == null) return;
if (renderers == null) return;
//when switching to the flight scene LateUpdate gets called AFTER OnLoad for some reason
// so renderers should hopefully only be null for one frame
@ -136,10 +139,10 @@ namespace Restock
{
temp = useSkinTemp ? base.part.skinTemperature : base.part.temperature;
}
var temp2 = (float) ((temp - draperPoint) / _lerpRange);
temp2 = Mathf.Clamp01(temp2);
_emissiveColor.r = redCurve.Evaluate(temp2);
_emissiveColor.g = greenCurve.Evaluate(temp2);
_emissiveColor.b = blueCurve.Evaluate(temp2);

Loading…
Cancel
Save