/// <summary> /// Update the fairing module height and position based on current tank parameters /// </summary> private void updateFairing(bool userInput) { SSTUNodeFairing[] modules = part.GetComponents <SSTUNodeFairing>(); if (modules == null || modules.Length < 2) { return; } SSTUNodeFairing topFairing = modules[topFairingIndex]; if (topFairing != null) { FairingUpdateData data = new FairingUpdateData(); data.setTopY(partTopY); data.setBottomY(topFairingBottomY); data.setBottomRadius(currentTankDiameter * 0.5f); if (userInput) { data.setTopRadius(currentTankDiameter * 0.5f); } topFairing.updateExternal(data); } SSTUNodeFairing bottomFairing = modules[lowerFairingIndex]; if (bottomFairing != null) { FairingUpdateData data = new FairingUpdateData(); data.setTopRadius(currentTankDiameter * 0.5f); data.setTopY(bottomFairingTopY); if (userInput) { data.setBottomRadius(currentTankDiameter * 0.5f); } bottomFairing.updateExternal(data); } }
private void updateFairing(bool userInput) { SSTUNodeFairing[] modules = part.GetComponents <SSTUNodeFairing>(); if (modules == null || modules.Length < 2) { MonoBehaviour.print("ERROR: Could not locate both fairing modules for part: " + part.name); return; } SSTUNodeFairing topFairing = modules[0]; if (topFairing != null) { float topFairingBottomY = getTopFairingBottomY(); FairingUpdateData data = new FairingUpdateData(); data.setTopY(getPartTopY()); data.setBottomY(topFairingBottomY); data.setBottomRadius(currentDiameter * 0.5f); if (userInput) { data.setTopRadius(currentDiameter * 0.5f); } topFairing.updateExternal(data); } SSTUNodeFairing bottomFairing = modules[1]; if (bottomFairing != null) { float bottomFairingTopY = getBottomFairingTopY(); FairingUpdateData data = new FairingUpdateData(); data.setTopRadius(currentDiameter * 0.5f); data.setTopY(bottomFairingTopY); if (userInput) { data.setBottomRadius(currentDiameter * 0.5f); } bottomFairing.updateExternal(data); } }