private void initialize() { if (initialized) { return; } initialized = true; ConfigNode node = ROEUtil.parseConfigNode(configNodeData); AnimationData animData = new AnimationData(node.GetNode("ANIMATIONDATA")); animationModule = new AnimationModule(part, this, nameof(persistentState), null, nameof(deployEngineEvent), nameof(retractEngineEvent)); animationModule.getSymmetryModule = m => ((ROEDeployableEngine)m).animationModule; animationModule.setupAnimations(animData, part.transform.FindRecursive("model"), 0); animationModule.onAnimStateChangeCallback = onAnimationStateChange; }
private void initialize() { constraints.Clear(); ConfigNode node = ROEUtil.parseConfigNode(configNodeData); ConfigNode[] lookConstraintNodes = node.GetNodes("LOOK_CONST"); foreach (ConfigNode lcn in lookConstraintNodes) { loadLookConstraint(lcn); } ConfigNode[] lockedConstraintNodes = node.GetNodes("LOCKED_CONST"); foreach (ConfigNode lcn in lockedConstraintNodes) { loadLockedConstraint(lcn); } updateConstraints(); }