Skip to content

Instantly share code, notes, and snippets.

@proctorPragmata
Last active August 29, 2015 14:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save proctorPragmata/117fdb5d1c502b7dd728 to your computer and use it in GitHub Desktop.
Save proctorPragmata/117fdb5d1c502b7dd728 to your computer and use it in GitHub Desktop.
Add fuel switch module to all tanks
@PART[*]:HAS[@RESOURCE[LiquidFuel],@RESOURCE[Oxidizer],!MODULE[ModuleFuelTanks],!MODULE[FSfuelSwitch],!MODULE[InterstellarFuelSwitch]]:FINAL {
%LF = #$RESOURCE[LiquidFuel]/maxAmount$
%OX = #$RESOURCE[Oxidizer]/maxAmount$
%totalCap = #$RESOURCE[LiquidFuel]/maxAmount$
@totalCap += #$RESOURCE[Oxidizer]/maxAmount$
%tempVar = 0
%dryCost = 0
@dryCost = #$cost$
%LFCost = 0
%OXCost = 0
%mixLFCost = 0
// Cost LFO
@tempVar = #$RESOURCE[LiquidFuel]/maxAmount$
@tempVar *= 0.8
@mixLFCost += #$tempVar$
@tempVar = #$RESOURCE[Oxidizer]/maxAmount$
@tempVar *= 0.18
@mixLFCost += #$tempVar$
@dryCost -= #$mixLFCost$
@cost -= #$mixLFCost$
// Cost LF only
@tempVar = #$totalCap$
@tempVar *= 0.8
@LFCost += #$tempVar$
// Cost OX only
@tempVar = #$totalCap$
@tempVar *= 0.18
@OXCost += #$tempVar$
@tempVar = 0
MODULE
{
name = FSfuelSwitch
resourceNames = LiquidFuel,Oxidizer;LiquidFuel;Oxidizer
resourceAmounts = #$../LF$,$../OX$;$../totalCap$;$../totalCap$
tankCost = #$../mixLFCost$;$../LFCost$;$../OXCost$
displayCurrentTankCost = true
hasGUI = true
showInfo = true
availableInFlight = false
availableInEditor = true
basePartMass = #$../mass$
tankMass = 0;0;0;0;0
}
!RESOURCE[LiquidFuel] {}
!RESOURCE[Oxidizer] {}
}
@PART[*]:HAS[@RESOURCE[LiquidFuel],!@RESOURCE[Oxidizer],!MODULE[ModuleFuelTanks],!MODULE[FSfuelSwitch],!MODULE[InterstellarFuelSwitch]]:FINAL {
%LF = #$RESOURCE[LiquidFuel]/maxAmount$
%OX = #$LF$
%totalCap = #$RESOURCE[LiquidFuel]/maxAmount$
@OX *= 0.55
@LF *= 0.45
%tempVar = 0
%dryCost = 0
@dryCost = #$cost$
%LFCost = 0
%OXCost = 0
%mixLFCost = 0
// Cost LFO
@tempVar = #$LF$
@tempVar *= 0.8
@mixLFCost += #$tempVar$
@tempVar = #$OX$
@tempVar *= 0.18
@mixLFCost += #$tempVar$
@dryCost -= #$mixLFCost$
@cost -= #$mixLFCost$
// Cost LF only
@tempVar = #$totalCap$
@tempVar *= 0.8
@LFCost += #$tempVar$
// Cost OX only
@tempVar = #$totalCap$
@tempVar *= 0.18
@OXCost += #$tempVar$
@tempVar = 0
MODULE
{
name = FSfuelSwitch
resourceNames = LiquidFuel,Oxidizer;LiquidFuel;Oxidizer
resourceAmounts = #$../LF$,$../OX$;$../totalCap$;$../totalCap$
tankCost = #$../mixLFCost$;$../LFCost$;$../OXCost$
displayCurrentTankCost = true
hasGUI = true
showInfo = true
availableInFlight = false
availableInEditor = true
basePartMass = #$../mass$
tankMass = 0;0;0;0;0
}
!RESOURCE[LiquidFuel] {}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment