Skip to content

Commit 98cc042

Browse files
committed
0.4.1
v0.4.1 -fixed AnimatedEngines heat & dV measurements (DREC, KER, MechJeb compatibility)
1 parent 072d0c3 commit 98cc042

3 files changed

Lines changed: 28 additions & 64 deletions

File tree

BDAnimationModules/AnimatedEngine.cs

Lines changed: 26 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -21,27 +21,19 @@ public class AnimatedEngine : PartModule
2121
private AnimationState[] engineStates;
2222
private bool engineIsFX = false;
2323

24-
private float oMaxThrust;
25-
private float oMinThrust;
2624

2725
public override void OnStart(PartModule.StartState state)
2826
{
2927

30-
try{
31-
engineStates = SetUpAnimation(EngineAnimationName, this.part);
32-
}catch(NullReferenceException e){Debug.Log ("NRE while setting up animation: "+e);}
33-
34-
35-
28+
engineStates = SetUpAnimation(EngineAnimationName, this.part);
29+
3630
foreach (var me in this.part.FindModulesImplementing<ModuleEngines>())
3731
{
3832
engineIsOn = me.EngineIgnited;
3933
modEng = me;
4034
engineIsFX = false;
4135
}
4236

43-
44-
4537
foreach (var me in this.part.FindModulesImplementing<ModuleEnginesFX>())
4638
{
4739
engineIsOn = me.EngineIgnited;
@@ -62,21 +54,6 @@ public override void OnStart(PartModule.StartState state)
6254
}
6355
}
6456

65-
if(modEng!=null)
66-
{
67-
oMaxThrust = modEng.maxThrust;
68-
oMinThrust = modEng.minThrust;
69-
modEng.maxThrust = 0;
70-
modEng.minThrust = 0;
71-
}
72-
if(modEngFX!=null)
73-
{
74-
oMaxThrust = modEngFX.maxThrust;
75-
oMinThrust = modEngFX.minThrust;
76-
modEngFX.maxThrust = 0;
77-
modEngFX.minThrust = 0;
78-
}
79-
8057
}
8158

8259

@@ -91,59 +68,46 @@ public override void OnUpdate()
9168
{
9269
engineIsOn = modEngFX.EngineIgnited;
9370
}
94-
71+
9572

9673
foreach(var anim in engineStates)
9774
{
98-
if(anim.normalizedTime>=1)
75+
76+
77+
if(engineIsOn && anim.normalizedTime < WaitForAnimation)
9978
{
100-
anim.speed = 0;
101-
anim.normalizedTime = 1;
79+
anim.speed = 1;
80+
if(engineIsFX) modEngFX.Shutdown();
81+
else modEng.Shutdown();
82+
10283
}
103-
if(anim.normalizedTime <=0)
84+
85+
86+
if(anim.normalizedTime >= WaitForAnimation && anim.speed > 0)
10487
{
105-
anim.speed = 0;
106-
anim.normalizedTime = 0;
88+
if(engineIsFX) modEngFX.Activate();
89+
else modEng.Activate();
10790
}
108-
109-
110-
if(engineIsOn)
91+
92+
if(anim.normalizedTime>=1)
11193
{
112-
anim.speed = 1;
94+
anim.speed = 0;
95+
anim.normalizedTime = 1;
11396
}
114-
else
97+
98+
if(anim.normalizedTime >=1 && !engineIsOn)
11599
{
116100
anim.speed = -1;
101+
117102
}
118103

119-
120-
if (anim.normalizedTime < WaitForAnimation && anim.normalizedTime > 0)
104+
if(anim.normalizedTime <0)
121105
{
122-
if(!engineIsFX)
123-
{
124-
modEng.maxThrust = 0;
125-
modEng.minThrust = 0;
126-
}
127-
else
128-
{
129-
modEngFX.maxThrust = 0;
130-
modEng.minThrust = 0;
131-
}
132-
}
133-
if (anim.normalizedTime >= WaitForAnimation)
134-
{
135-
if(!engineIsFX)
136-
{
137-
modEng.maxThrust = oMaxThrust;
138-
modEng.minThrust = oMinThrust;
139-
}
140-
else
141-
{
142-
modEngFX.maxThrust = oMaxThrust;
143-
modEngFX.minThrust = oMinThrust;
144-
}
106+
anim.speed = 0;
107+
anim.normalizedTime = 0;
145108
}
146109

110+
147111
}
148112

149113
}
3.57 KB
Binary file not shown.

BDAnimationModules/GenericLoopAnimation.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ public class GenericLoopAnimation : PartModule
1313
[KSPField(isPersistant = false)]
1414
public string loopName;
1515
[KSPField(isPersistant = true)]
16-
public string StartGUIName="null";
16+
public string StartGUIName = "null";
1717
[KSPField(isPersistant = true)]
18-
public string EndGUIName="null";
18+
public string EndGUIName = "null";
1919

2020
private AnimationState[] deployStates;
2121
private AnimationState[] loopStates;

0 commit comments

Comments
 (0)