diff --git a/Distribution/GameData/CommunityResourcePack/AsteroidScannerSetup.cfg b/Distribution/GameData/CommunityResourcePack/AsteroidScannerSetup.cfg deleted file mode 100644 index e69de29..0000000 diff --git a/Distribution/GameData/REPOSoftTech/Agencies/Agents.cfg b/Distribution/GameData/REPOSoftTech/Agencies/Agents.cfg index 24982a1..a056bbc 100644 --- a/Distribution/GameData/REPOSoftTech/Agencies/Agents.cfg +++ b/Distribution/GameData/REPOSoftTech/Agencies/Agents.cfg @@ -1,9 +1,9 @@ AGENT { name = REPOSoftTech - - description = Experts in the field of cryogenics, ergonomics and electrical equipment, the kerbals at REPOSoftTech are trying hard to keep all space fairing kerbals alive and their missions successful. - + title = #autoLOC_DF_00186 //REPOSoftTech + description = #autoLOC_DF_00198 //Experts in the field of cryogenics, ergonomics and electrical equipment, the kerbals at REPOSoftTech are trying hard to keep all space fairing kerbals alive and their missions successful. + logoURL = REPOSoftTech/Agencies/REPOSoftTech logoScaledURL = REPOSoftTech/Agencies/REPOSoftTech_scaled diff --git a/Distribution/GameData/REPOSoftTech/DeepFreeze/Changelog.txt b/Distribution/GameData/REPOSoftTech/DeepFreeze/Changelog.txt index 0fe2580..ca1cfa3 100644 --- a/Distribution/GameData/REPOSoftTech/DeepFreeze/Changelog.txt +++ b/Distribution/GameData/REPOSoftTech/DeepFreeze/Changelog.txt @@ -1,4 +1,9 @@ -V0.23.4.0 +V0.23.5.0 +Compile for KSP 1.3.0 +Localization ready (but all in English) - Translation volunteers welcome. ;) +If Infinite EC is turned on DeepFreeze will not consume EC. +If in IVA/Internal camera view when you freeze the last kerbal will autmatically change the camera to flight view to avoid invalid camera reference. +V0.23.4.0 Fix issue with launching vessels with DeepFreeze parts with greater capacity than previously launched vessels would cause null reference exceptions, lost DeepFreeze tracking and lost frozen kerbals. Thanks to Gnurfos who found the bug. V0.23.3.0 diff --git a/Distribution/GameData/REPOSoftTech/DeepFreeze/DFLocalization.cfg b/Distribution/GameData/REPOSoftTech/DeepFreeze/DFLocalization.cfg new file mode 100644 index 0000000..7f55600 --- /dev/null +++ b/Distribution/GameData/REPOSoftTech/DeepFreeze/DFLocalization.cfg @@ -0,0 +1,1290 @@ +Localization +{ + en-us + { + #autoLOC_DF_00001 = <<1>> has recovered from emergency thaw and resumed normal duties. + #autoLOC_DF_00002 = <<1>> has been emergency thawed and cannot perform duties for <<2>> minutes. + #autoLOC_DF_00003 = DeepFreeze + #autoLOC_DF_00004 = DeepFreeze Vessel Switch + #autoLOC_DF_00005 = DeepFreeze Vessel Switch Failed + #autoLOC_DF_00006 = DeepFreeze Kerbals + #autoLOC_DF_00007 = DeepFreeze Alarms + #autoLOC_DF_00008 = Close Window + #autoLOC_DF_00009 = Vessel + #autoLOC_DF_00010 = Vessel Name + #autoLOC_DF_00011 = Part + #autoLOC_DF_00012 = Part Name + #autoLOC_DF_00013 = Tmp + #autoLOC_DF_00014 = Part Temperature Status + #autoLOC_DF_00015 = EC + #autoLOC_DF_00016 = Electric Charge Status + #autoLOC_DF_00017 = R.T + #autoLOC_DF_00018 = Remote Tech Status + #autoLOC_DF_00019 = Alarms + #autoLOC_DF_00020 = Press the button for Kerbal Alarm Clock Alarms assigned to this part + #autoLOC_DF_00021 = LastUpd + #autoLOC_DF_00022 = The Time the part was last updated + #autoLOC_DF_00023 = TimeRem + #autoLOC_DF_00024 = Approx. time remaining before Electric Charge will run out + #autoLOC_DF_00025 = Vessel <<1>> is Over-Heating. + #autoLOC_DF_00026 = OFF + #autoLOC_DF_00027 = S/BY + #autoLOC_DF_00028 = OUT + #autoLOC_DF_00029 = Vesssel <<1>> is out of ElectricCharge.\n Situation Critical. + #autoLOC_DF_00030 = ALRT + #autoLOC_DF_00031 = Vessel <<1>> is almost out of ElectricCharge. + #autoLOC_DF_00032 = LOW + #autoLOC_DF_00033 = OK + #autoLOC_DF_00034 = NC + #autoLOC_DF_00035 = Alarm + #autoLOC_DF_00036 = Go to Alarms + #autoLOC_DF_00037 = There are currently no Frozen Kerbals + #autoLOC_DF_00038 = Kerbal Name + #autoLOC_DF_00039 = Profession + #autoLOC_DF_00040 = Thaw + #autoLOC_DF_00041 = Thaw this kerbal + #autoLOC_DF_00042 = Cannot thaw <<1>> from KSC. Vessel still exists <<2>> at <<3>> + #autoLOC_DF_00043 = Freeze + #autoLOC_DF_00044 = Freeze this kerbal + #autoLOC_DF_00045 = KAC Alarms + #autoLOC_DF_00046 = Resize Window + #autoLOC_DF_00047 = <<1>>K + #autoLOC_DF_00048 = <<2>>C + #autoLOC_DF_00049 = <<1>> was stored frozen at KSC + #autoLOC_DF_00050 = Insufficient funds to thaw <<1>> at this time + #autoLOC_DF_00051 = <<1>> was found and thawed out + #autoLOC_DF_00052 = <<1>> was found and thawed out <<2>> funds deducted from account + #autoLOC_DF_00053 = Cannot thaw <<1>> vessel still exists <<2>> at <<3>> + + #autoLOC_DF_00054 = Freezer Capacity + #autoLOC_DF_00055 = Total Frozen Kerbals + #autoLOC_DF_00056 = Freezer Space + #autoLOC_DF_00057 = Part is Full? + #autoLOC_DF_00058 = R/T Connection + #autoLOC_DF_00059 = Freezer Temp + #autoLOC_DF_00060 = Cabin Temperature + #autoLOC_DF_00061 = K + #autoLOC_DF_00062 = DeepFreeze Menu + #autoLOC_DF_00063 = EC p/Kerbal to run + #autoLOC_DF_00064 = \u0020p/min + #autoLOC_DF_00065 = Current EC Usage + #autoLOC_DF_00066 = \u0020p/sec + #autoLOC_DF_00067 = Glykerol Reqd. to Freeze + #autoLOC_DF_00068 = EC p/Kerbal to Frze/Thaw + #autoLOC_DF_00069 = \nCryopods: <<1>> + #autoLOC_DF_00070 = C + #autoLOC_DF_00071 = Pod:<<1>> + #autoLOC_DF_00072 = Insufficient electric charge to monitor frozen kerbals. + #autoLOC_DF_00073 = \u0020Freezer Out of EC : Systems critical in <<1>> secs + #autoLOC_DF_00074 = <<1>> died due to lack of Electrical Charge to run cryogenics + #autoLOC_DF_00075 = Check Temperatures, Freezer getting hot + #autoLOC_DF_00076 = Warning!! Check Temperatures NOW, Freezer getting very hot + #autoLOC_DF_00077 = Temperature getting too hot for kerbals to remain frozen. + #autoLOC_DF_00078 = Freezer Over Temp : Systems critical in <<1>> secs + #autoLOC_DF_00079 = <<1>> died due to overheating, cannot keep frozen + #autoLOC_DF_00080 = Over Temperature - Emergency Thaw in Progress. + #autoLOC_DF_00081 = Insufficient electric charge to freeze kerbal + #autoLOC_DF_00082 = \u0020Cryopod - Charging: <<1>> + #autoLOC_DF_00083 = Insufficient Glykerol to freeze kerbal + #autoLOC_DF_00084 = Cannot Freeze while Temperature greater than <<1>> + #autoLOC_DF_00085 = Cannot Freeze while Crew Xfer in progress + #autoLOC_DF_00086 = Cannot run Freeze process on more than one Kerbal at a time + #autoLOC_DF_00087 = RemoteTech Detected. Press Freeze Again if you want to Freeze your Last Active Kerbal + #autoLOC_DF_00088 = An Active connection or Active Kerbal is Required On-Board to Initiate Thaw Process + #autoLOC_DF_00089 = Cannot freeze kerbal. Freezer is full + #autoLOC_DF_00090 = Cannot freeze kerbal at this time + #autoLOC_DF_00091 = Starting Freeze process + #autoLOC_DF_00092 = Freezing Aborted + #autoLOC_DF_00093 = <<1>> frozen + #autoLOC_DF_00094 = Insufficient electric charge to thaw kerbal + #autoLOC_DF_00095 = \u0020Cryopod - Charging:<<1>> + #autoLOC_DF_00096 = Cannot Thaw <<1>> Part is full + #autoLOC_DF_00097 = Cannot Thaw while Crew Xfer in progress + #autoLOC_DF_00098 = Cannot run Thaw process on more than one Kerbal at a time + #autoLOC_DF_00099 = Cannot thaw kerbal at this time + #autoLOC_DF_00100 = Code Error: Cannot thaw kerbal at this time, Check Log + #autoLOC_DF_00101 = Thawing Aborted + #autoLOC_DF_00102 = <<1>> thawed out + #autoLOC_DF_00103 = <<1>> was thawed out due to lack of Electrical Charge to run cryogenics + #autoLOC_DF_00104 = DeepFreezer mechanical failure + #autoLOC_DF_00105 = Vessel about to change, Aborting Thaw process + #autoLOC_DF_00106 = Vessel about to change, Aborting Freeze process + + #autoLOC_DF_00107 = DeepFreeze Items + #autoLOC_DF_00108 = There is less than 5 units of Glykerol on-board for your DeepFreeze Freezers + #autoLOC_DF_00109 = A DeepFreeze Alarm event has occurred. Please Switch to <<1>> to execute. + #autoLOC_DF_00110 = DeepFreeze Alarm processing completed. + + #autoLOC_DF_00111 = Name + #autoLOC_DF_00112 = Alarm Name + #autoLOC_DF_00113 = Alarm Type + #autoLOC_DF_00114 = KAC Alarm Type + #autoLOC_DF_00115 = Time Remain. + #autoLOC_DF_00116 = Time remaining before Alarm is triggered + #autoLOC_DF_00117 = There are currently no KAC alarms associated to a DeepFreeze vessel + #autoLOC_DF_00118 = Delete + #autoLOC_DF_00119 = Delete this KAC alarm completely + #autoLOC_DF_00120 = Modify + #autoLOC_DF_00121 = Modify this Alarm + #autoLOC_DF_00122 = Save + #autoLOC_DF_00123 = Save Alarm Changes + #autoLOC_DF_00124 = Cannot Save Alarm. No R/Tech Connection to vessel. + #autoLOC_DF_00125 = DeepFreeze Alarm changes Saved. + #autoLOC_DF_00126 = DeepFreeze Cannot Save alarm changes, Time is up. + #autoLOC_DF_00127 = Cancel + #autoLOC_DF_00128 = Cancel any changes + #autoLOC_DF_00129 = Name + #autoLOC_DF_00130 = The Kerbals Name + #autoLOC_DF_00131 = Trait + #autoLOC_DF_00132 = The Kerbals Profession + #autoLOC_DF_00133 = Thaw + #autoLOC_DF_00134 = Thaw this kerbal on alarm activation + #autoLOC_DF_00135 = Freeze + #autoLOC_DF_00136 = Freeze this kerbal on alarm activation + #autoLOC_DF_00137 = Modify + #autoLOC_DF_00138 = Modify this Alarms settings + + #autoLOC_DF_00139 = Switch to Vessel + #autoLOC_DF_00140 = Not Now + #autoLOC_DF_00141 = Don't switch vessel now + #autoLOC_DF_00142 = Automatic Switch to vessel failed.\nPlease switch manually to vessel Immediately + #autoLOC_DF_00143 = Switch to DeepFreeze vessel required + + #autoLOC_DF_00144 = DeepFreeze Options + #autoLOC_DF_00145 = ElectricCharge Required to run Freezers + #autoLOC_DF_00146 = If on, EC is required to run freezers + #autoLOC_DF_00147 = Fatal EC/Heat Option + #autoLOC_DF_00148 = If on Kerbals will die if EC runs out or it gets too hot + #autoLOC_DF_00149 = Non Fatal Comatose Time(in secs) + #autoLOC_DF_00150 = The time in seconds a kerbal is comatose\n if fatal EC / Heat option is off + #autoLOC_DF_00151 = AutoRecover Frozen Kerbals at KSC + #autoLOC_DF_00152 = If on, will AutoRecover Frozen Kerbals at the KSC\n and deduct the Cost from your funds + #autoLOC_DF_00153 = Cost to Thaw a Kerbal at KSC + #autoLOC_DF_00154 = Amt of currency Reqd to Freeze a Kerbal from the KSC + #autoLOC_DF_00155 = EC Reqd to Freeze/Thaw a Kerbal + #autoLOC_DF_00156 = Amt of ElecCharge Reqd to Freeze/Thaw a Kerbal. + #autoLOC_DF_00157 = Glykerol Reqd to Freeze a Kerbal + #autoLOC_DF_00158 = Amt of Glykerol used to Freeze a Kerbal,\nOverrides Part values. + #autoLOC_DF_00159 = DeepFreeze Temperatures + #autoLOC_DF_00160 = Get your calculator out. + #autoLOC_DF_00161 = Temps are in (K)elvin. (K) = (C)elcius + 273.15. (K) = ((F)arenheit + 459.67) × 5/9. Get your calculator out + #autoLOC_DF_00162 = Regulated Temperatures Required + #autoLOC_DF_00163 = If on, Regulated Temps apply to freeze\nand keep Kerbals Frozen. + #autoLOC_DF_00164 = Min. Temp. for Freezer to Freeze(K) + #autoLOC_DF_00165 = The minimum temperature (in Kelvin) for a Freezer\nto be able to Freeze a Kerbal. + #autoLOC_DF_00166 = Max. Temp. to keep Kerbals Frozen(K) + #autoLOC_DF_00167 = The maximum temperature (in Kelvin) for a Freezer\nto keep Kerbals frozen. + #autoLOC_DF_00168 = Heat generated per kerbal (kW/min) + #autoLOC_DF_00169 = Amount of thermal heat (kW) generated\nby equipment for each frozen kerbal per minute. + #autoLOC_DF_00170 = Heat generated freezer process(kW) + #autoLOC_DF_00171 = Amount of thermal heat (kW) generated\nwith each thaw/freeze process. + #autoLOC_DF_00172 = Show Part Temperatures in Kelvin + #autoLOC_DF_00173 = If on Part right click will show temp in Kelvin,\nif Off will show in Celcius. + #autoLOC_DF_00174 = DeepFreeze Misc. + #autoLOC_DF_00175 = Freezer Strip Lights On + #autoLOC_DF_00176 = Turn off if you do not want the internal\nfreezer strip lights to function. + #autoLOC_DF_00177 = ToolTips On + #autoLOC_DF_00178 = Turn the Tooltips on and off. + #autoLOC_DF_00179 = Editor Filter + #autoLOC_DF_00180 = Turn the DeepFreeze Editor filter Category on and off. + #autoLOC_DF_00181 = Use Stock App Launcher Icon + #autoLOC_DF_00182 = If on, the Stock Application launcher will be used,\nif off will use Blizzy Toolbar if installed. + #autoLOC_DF_00183 = Extra Debug Logging + #autoLOC_DF_00184 = Turn this On to capture lots of extra information\ninto the KSP log for reporting a problem. + + #autoLOC_DF_00185 = CRY-0300 Cryonic Freezing Chamber + #autoLOC_DF_00186 = REPOSoftTech + #autoLOC_DF_00187 = Designed for long term storage of 1 kerbal. The CRY-0300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300 comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00188 = deepfreeze cryogenic freezer + #autoLOC_DF_00189 = CRY-0300R Cryonic Freezing Chamber + #autoLOC_DF_00190 = Designed for long term storage of 1 kerbal. The CRY-0300R uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300R comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300R also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00191 = CRY-1300 Cryonic Freezing Chamber + #autoLOC_DF_00192 = Designed for long term storage of up to 3 Kerbals. The CRY-1300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-1300 comes stocked with 15 units of Glykerol. CAUTION: The CRY-1300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00193 = CRY-2300 Cryonic Freezing Chamber + #autoLOC_DF_00194 = Designed for long term storage of up to 10 Kerbals. The CRY-2300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-2300 comes stocked with 50 units of Glykerol. CAUTION: The CRY-2300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00195 = RS-X20R Glykerol Container + #autoLOC_DF_00196 = The RS-X20R is a small-volume Radial Glykerol container, for all your Kerbal Freezing and Thawing needs. Brought to you by the good folks at REPOSoftTech. Warranty void if filled with Glykerol. + #autoLOC_DF_00197 = deepfreeze cryogenic freezer glykerol tank + + #autoLOC_DF_00198 = Experts in the field of cryogenics, ergonomics and electrical equipment, the kerbals at REPOSoftTech are trying hard to keep all space fairing kerbals alive and their missions successful. + + #autoLOC_DF_00199 = Freeze <<1>> + #autoLOC_DF_00200 = Thaw <<1>> + } +} + +Localization +{ + es-es + { + #autoLOC_DF_00001 = <<1>> has recovered from emergency thaw and resumed normal duties. + #autoLOC_DF_00002 = <<1>> has been emergency thawed and cannot perform duties for <<2>> minutes. + #autoLOC_DF_00003 = DeepFreeze + #autoLOC_DF_00004 = DeepFreeze Vessel Switch + #autoLOC_DF_00005 = DeepFreeze Vessel Switch Failed + #autoLOC_DF_00006 = DeepFreeze Kerbals + #autoLOC_DF_00007 = DeepFreeze Alarms + #autoLOC_DF_00008 = Close Window + #autoLOC_DF_00009 = Vessel + #autoLOC_DF_00010 = Vessel Name + #autoLOC_DF_00011 = Part + #autoLOC_DF_00012 = Part Name + #autoLOC_DF_00013 = Tmp + #autoLOC_DF_00014 = Part Temperature Status + #autoLOC_DF_00015 = EC + #autoLOC_DF_00016 = Electric Charge Status + #autoLOC_DF_00017 = R.T + #autoLOC_DF_00018 = Remote Tech Status + #autoLOC_DF_00019 = Alarms + #autoLOC_DF_00020 = Press the button for Kerbal Alarm Clock Alarms assigned to this part + #autoLOC_DF_00021 = LastUpd + #autoLOC_DF_00022 = The Time the part was last updated + #autoLOC_DF_00023 = TimeRem + #autoLOC_DF_00024 = Approx. time remaining before Electric Charge will run out + #autoLOC_DF_00025 = Vessel <<1>> is Over-Heating. + #autoLOC_DF_00026 = OFF + #autoLOC_DF_00027 = S/BY + #autoLOC_DF_00028 = OUT + #autoLOC_DF_00029 = Vesssel <<1>> is out of ElectricCharge.\n Situation Critical. + #autoLOC_DF_00030 = ALRT + #autoLOC_DF_00031 = Vessel <<1>> is almost out of ElectricCharge. + #autoLOC_DF_00032 = LOW + #autoLOC_DF_00033 = OK + #autoLOC_DF_00034 = NC + #autoLOC_DF_00035 = Alarm + #autoLOC_DF_00036 = Go to Alarms + #autoLOC_DF_00037 = There are currently no Frozen Kerbals + #autoLOC_DF_00038 = Kerbal Name + #autoLOC_DF_00039 = Profession + #autoLOC_DF_00040 = Thaw + #autoLOC_DF_00041 = Thaw this kerbal + #autoLOC_DF_00042 = Cannot thaw <<1>> from KSC. Vessel still exists <<2>> at <<3>> + #autoLOC_DF_00043 = Freeze + #autoLOC_DF_00044 = Freeze this kerbal + #autoLOC_DF_00045 = KAC Alarms + #autoLOC_DF_00046 = Resize Window + #autoLOC_DF_00047 = <<1>>K + #autoLOC_DF_00048 = <<2>>C + #autoLOC_DF_00049 = <<1>> was stored frozen at KSC + #autoLOC_DF_00050 = Insufficient funds to thaw <<1>> at this time + #autoLOC_DF_00051 = <<1>> was found and thawed out + #autoLOC_DF_00052 = <<1>> was found and thawed out <<2>> funds deducted from account + #autoLOC_DF_00053 = Cannot thaw <<1>> vessel still exists <<2>> at <<3>> + + #autoLOC_DF_00054 = Freezer Capacity + #autoLOC_DF_00055 = Total Frozen Kerbals + #autoLOC_DF_00056 = Freezer Space + #autoLOC_DF_00057 = Part is Full? + #autoLOC_DF_00058 = R/T Connection + #autoLOC_DF_00059 = Freezer Temp + #autoLOC_DF_00060 = Cabin Temperature + #autoLOC_DF_00061 = K + #autoLOC_DF_00062 = DeepFreeze Menu + #autoLOC_DF_00063 = EC p/Kerbal to run + #autoLOC_DF_00064 = \u0020p/min + #autoLOC_DF_00065 = Current EC Usage + #autoLOC_DF_00066 = \u0020p/sec + #autoLOC_DF_00067 = Glykerol Reqd. to Freeze + #autoLOC_DF_00068 = EC p/Kerbal to Frze/Thaw + #autoLOC_DF_00069 = \nCryopods: <<1>> + #autoLOC_DF_00070 = C + #autoLOC_DF_00071 = Pod:<<1>> + #autoLOC_DF_00072 = Insufficient electric charge to monitor frozen kerbals. + #autoLOC_DF_00073 = \u0020Freezer Out of EC : Systems critical in <<1>> secs + #autoLOC_DF_00074 = <<1>> died due to lack of Electrical Charge to run cryogenics + #autoLOC_DF_00075 = Check Temperatures, Freezer getting hot + #autoLOC_DF_00076 = Warning!! Check Temperatures NOW, Freezer getting very hot + #autoLOC_DF_00077 = Temperature getting too hot for kerbals to remain frozen. + #autoLOC_DF_00078 = Freezer Over Temp : Systems critical in <<1>> secs + #autoLOC_DF_00079 = <<1>> died due to overheating, cannot keep frozen + #autoLOC_DF_00080 = Over Temperature - Emergency Thaw in Progress. + #autoLOC_DF_00081 = Insufficient electric charge to freeze kerbal + #autoLOC_DF_00082 = \u0020Cryopod - Charging: <<1>> + #autoLOC_DF_00083 = Insufficient Glykerol to freeze kerbal + #autoLOC_DF_00084 = Cannot Freeze while Temperature greater than <<1>> + #autoLOC_DF_00085 = Cannot Freeze while Crew Xfer in progress + #autoLOC_DF_00086 = Cannot run Freeze process on more than one Kerbal at a time + #autoLOC_DF_00087 = RemoteTech Detected. Press Freeze Again if you want to Freeze your Last Active Kerbal + #autoLOC_DF_00088 = An Active connection or Active Kerbal is Required On-Board to Initiate Thaw Process + #autoLOC_DF_00089 = Cannot freeze kerbal. Freezer is full + #autoLOC_DF_00090 = Cannot freeze kerbal at this time + #autoLOC_DF_00091 = Starting Freeze process + #autoLOC_DF_00092 = Freezing Aborted + #autoLOC_DF_00093 = <<1>> frozen + #autoLOC_DF_00094 = Insufficient electric charge to thaw kerbal + #autoLOC_DF_00095 = \u0020Cryopod - Charging:<<1>> + #autoLOC_DF_00096 = Cannot Thaw <<1>> Part is full + #autoLOC_DF_00097 = Cannot Thaw while Crew Xfer in progress + #autoLOC_DF_00098 = Cannot run Thaw process on more than one Kerbal at a time + #autoLOC_DF_00099 = Cannot thaw kerbal at this time + #autoLOC_DF_00100 = Code Error: Cannot thaw kerbal at this time, Check Log + #autoLOC_DF_00101 = Thawing Aborted + #autoLOC_DF_00102 = <<1>> thawed out + #autoLOC_DF_00103 = <<1>> was thawed out due to lack of Electrical Charge to run cryogenics + #autoLOC_DF_00104 = DeepFreezer mechanical failure + #autoLOC_DF_00105 = Vessel about to change, Aborting Thaw process + #autoLOC_DF_00106 = Vessel about to change, Aborting Freeze process + + #autoLOC_DF_00107 = DeepFreeze Items + #autoLOC_DF_00108 = There is less than 5 units of Glykerol on-board for your DeepFreeze Freezers + #autoLOC_DF_00109 = A DeepFreeze Alarm event has occurred. Please Switch to <<1>> to execute. + #autoLOC_DF_00110 = DeepFreeze Alarm processing completed. + + #autoLOC_DF_00111 = Name + #autoLOC_DF_00112 = Alarm Name + #autoLOC_DF_00113 = Alarm Type + #autoLOC_DF_00114 = KAC Alarm Type + #autoLOC_DF_00115 = Time Remain. + #autoLOC_DF_00116 = Time remaining before Alarm is triggered + #autoLOC_DF_00117 = There are currently no KAC alarms associated to a DeepFreeze vessel + #autoLOC_DF_00118 = Delete + #autoLOC_DF_00119 = Delete this KAC alarm completely + #autoLOC_DF_00120 = Modify + #autoLOC_DF_00121 = Modify this Alarm + #autoLOC_DF_00122 = Save + #autoLOC_DF_00123 = Save Alarm Changes + #autoLOC_DF_00124 = Cannot Save Alarm. No R/Tech Connection to vessel. + #autoLOC_DF_00125 = DeepFreeze Alarm changes Saved. + #autoLOC_DF_00126 = DeepFreeze Cannot Save alarm changes, Time is up. + #autoLOC_DF_00127 = Cancel + #autoLOC_DF_00128 = Cancel any changes + #autoLOC_DF_00129 = Name + #autoLOC_DF_00130 = The Kerbals Name + #autoLOC_DF_00131 = Trait + #autoLOC_DF_00132 = The Kerbals Profession + #autoLOC_DF_00133 = Thaw + #autoLOC_DF_00134 = Thaw this kerbal on alarm activation + #autoLOC_DF_00135 = Freeze + #autoLOC_DF_00136 = Freeze this kerbal on alarm activation + #autoLOC_DF_00137 = Modify + #autoLOC_DF_00138 = Modify this Alarms settings + + #autoLOC_DF_00139 = Switch to Vessel + #autoLOC_DF_00140 = Not Now + #autoLOC_DF_00141 = Don't switch vessel now + #autoLOC_DF_00142 = Automatic Switch to vessel failed.\nPlease switch manually to vessel Immediately + #autoLOC_DF_00143 = Switch to DeepFreeze vessel required + + #autoLOC_DF_00144 = DeepFreeze Options + #autoLOC_DF_00145 = ElectricCharge Required to run Freezers + #autoLOC_DF_00146 = If on, EC is required to run freezers + #autoLOC_DF_00147 = Fatal EC/Heat Option + #autoLOC_DF_00148 = If on Kerbals will die if EC runs out or it gets too hot + #autoLOC_DF_00149 = Non Fatal Comatose Time(in secs) + #autoLOC_DF_00150 = The time in seconds a kerbal is comatose\n if fatal EC / Heat option is off + #autoLOC_DF_00151 = AutoRecover Frozen Kerbals at KSC + #autoLOC_DF_00152 = If on, will AutoRecover Frozen Kerbals at the KSC\n and deduct the Cost from your funds + #autoLOC_DF_00153 = Cost to Thaw a Kerbal at KSC + #autoLOC_DF_00154 = Amt of currency Reqd to Freeze a Kerbal from the KSC + #autoLOC_DF_00155 = EC Reqd to Freeze/Thaw a Kerbal + #autoLOC_DF_00156 = Amt of ElecCharge Reqd to Freeze/Thaw a Kerbal. + #autoLOC_DF_00157 = Glykerol Reqd to Freeze a Kerbal + #autoLOC_DF_00158 = Amt of Glykerol used to Freeze a Kerbal,\nOverrides Part values. + #autoLOC_DF_00159 = DeepFreeze Temperatures + #autoLOC_DF_00160 = Get your calculator out. + #autoLOC_DF_00161 = Temps are in (K)elvin. (K) = (C)elcius + 273.15. (K) = ((F)arenheit + 459.67) × 5/9. Get your calculator out + #autoLOC_DF_00162 = Regulated Temperatures Required + #autoLOC_DF_00163 = If on, Regulated Temps apply to freeze\nand keep Kerbals Frozen. + #autoLOC_DF_00164 = Min. Temp. for Freezer to Freeze(K) + #autoLOC_DF_00165 = The minimum temperature (in Kelvin) for a Freezer\nto be able to Freeze a Kerbal. + #autoLOC_DF_00166 = Max. Temp. to keep Kerbals Frozen(K) + #autoLOC_DF_00167 = The maximum temperature (in Kelvin) for a Freezer\nto keep Kerbals frozen. + #autoLOC_DF_00168 = Heat generated per kerbal (kW/min) + #autoLOC_DF_00169 = Amount of thermal heat (kW) generated\nby equipment for each frozen kerbal per minute. + #autoLOC_DF_00170 = Heat generated freezer process(kW) + #autoLOC_DF_00171 = Amount of thermal heat (kW) generated\nwith each thaw/freeze process. + #autoLOC_DF_00172 = Show Part Temperatures in Kelvin + #autoLOC_DF_00173 = If on Part right click will show temp in Kelvin,\nif Off will show in Celcius. + #autoLOC_DF_00174 = DeepFreeze Misc. + #autoLOC_DF_00175 = Freezer Strip Lights On + #autoLOC_DF_00176 = Turn off if you do not want the internal\nfreezer strip lights to function. + #autoLOC_DF_00177 = ToolTips On + #autoLOC_DF_00178 = Turn the Tooltips on and off. + #autoLOC_DF_00179 = Editor Filter + #autoLOC_DF_00180 = Turn the DeepFreeze Editor filter Category on and off. + #autoLOC_DF_00181 = Use Stock App Launcher Icon + #autoLOC_DF_00182 = If on, the Stock Application launcher will be used,\nif off will use Blizzy Toolbar if installed. + #autoLOC_DF_00183 = Extra Debug Logging + #autoLOC_DF_00184 = Turn this On to capture lots of extra information\ninto the KSP log for reporting a problem. + + #autoLOC_DF_00185 = CRY-0300 Cryonic Freezing Chamber + #autoLOC_DF_00186 = REPOSoftTech + #autoLOC_DF_00187 = Designed for long term storage of 1 kerbal. The CRY-0300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300 comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00188 = deepfreeze cryogenic freezer + #autoLOC_DF_00189 = CRY-0300R Cryonic Freezing Chamber + #autoLOC_DF_00190 = Designed for long term storage of 1 kerbal. The CRY-0300R uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300R comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300R also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00191 = CRY-1300 Cryonic Freezing Chamber + #autoLOC_DF_00192 = Designed for long term storage of up to 3 Kerbals. The CRY-1300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-1300 comes stocked with 15 units of Glykerol. CAUTION: The CRY-1300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00193 = CRY-2300 Cryonic Freezing Chamber + #autoLOC_DF_00194 = Designed for long term storage of up to 10 Kerbals. The CRY-2300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-2300 comes stocked with 50 units of Glykerol. CAUTION: The CRY-2300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00195 = RS-X20R Glykerol Container + #autoLOC_DF_00196 = The RS-X20R is a small-volume Radial Glykerol container, for all your Kerbal Freezing and Thawing needs. Brought to you by the good folks at REPOSoftTech. Warranty void if filled with Glykerol. + #autoLOC_DF_00197 = deepfreeze cryogenic freezer glykerol tank + + #autoLOC_DF_00198 = Experts in the field of cryogenics, ergonomics and electrical equipment, the kerbals at REPOSoftTech are trying hard to keep all space fairing kerbals alive and their missions successful. + + #autoLOC_DF_00199 = Freeze <<1>> + #autoLOC_DF_00200 = Thaw <<1>> + } +} + +Localization +{ + es-mx + { + #autoLOC_DF_00001 = <<1>> has recovered from emergency thaw and resumed normal duties. + #autoLOC_DF_00002 = <<1>> has been emergency thawed and cannot perform duties for <<2>> minutes. + #autoLOC_DF_00003 = DeepFreeze + #autoLOC_DF_00004 = DeepFreeze Vessel Switch + #autoLOC_DF_00005 = DeepFreeze Vessel Switch Failed + #autoLOC_DF_00006 = DeepFreeze Kerbals + #autoLOC_DF_00007 = DeepFreeze Alarms + #autoLOC_DF_00008 = Close Window + #autoLOC_DF_00009 = Vessel + #autoLOC_DF_00010 = Vessel Name + #autoLOC_DF_00011 = Part + #autoLOC_DF_00012 = Part Name + #autoLOC_DF_00013 = Tmp + #autoLOC_DF_00014 = Part Temperature Status + #autoLOC_DF_00015 = EC + #autoLOC_DF_00016 = Electric Charge Status + #autoLOC_DF_00017 = R.T + #autoLOC_DF_00018 = Remote Tech Status + #autoLOC_DF_00019 = Alarms + #autoLOC_DF_00020 = Press the button for Kerbal Alarm Clock Alarms assigned to this part + #autoLOC_DF_00021 = LastUpd + #autoLOC_DF_00022 = The Time the part was last updated + #autoLOC_DF_00023 = TimeRem + #autoLOC_DF_00024 = Approx. time remaining before Electric Charge will run out + #autoLOC_DF_00025 = Vessel <<1>> is Over-Heating. + #autoLOC_DF_00026 = OFF + #autoLOC_DF_00027 = S/BY + #autoLOC_DF_00028 = OUT + #autoLOC_DF_00029 = Vesssel <<1>> is out of ElectricCharge.\n Situation Critical. + #autoLOC_DF_00030 = ALRT + #autoLOC_DF_00031 = Vessel <<1>> is almost out of ElectricCharge. + #autoLOC_DF_00032 = LOW + #autoLOC_DF_00033 = OK + #autoLOC_DF_00034 = NC + #autoLOC_DF_00035 = Alarm + #autoLOC_DF_00036 = Go to Alarms + #autoLOC_DF_00037 = There are currently no Frozen Kerbals + #autoLOC_DF_00038 = Kerbal Name + #autoLOC_DF_00039 = Profession + #autoLOC_DF_00040 = Thaw + #autoLOC_DF_00041 = Thaw this kerbal + #autoLOC_DF_00042 = Cannot thaw <<1>> from KSC. Vessel still exists <<2>> at <<3>> + #autoLOC_DF_00043 = Freeze + #autoLOC_DF_00044 = Freeze this kerbal + #autoLOC_DF_00045 = KAC Alarms + #autoLOC_DF_00046 = Resize Window + #autoLOC_DF_00047 = <<1>>K + #autoLOC_DF_00048 = <<2>>C + #autoLOC_DF_00049 = <<1>> was stored frozen at KSC + #autoLOC_DF_00050 = Insufficient funds to thaw <<1>> at this time + #autoLOC_DF_00051 = <<1>> was found and thawed out + #autoLOC_DF_00052 = <<1>> was found and thawed out <<2>> funds deducted from account + #autoLOC_DF_00053 = Cannot thaw <<1>> vessel still exists <<2>> at <<3>> + + #autoLOC_DF_00054 = Freezer Capacity + #autoLOC_DF_00055 = Total Frozen Kerbals + #autoLOC_DF_00056 = Freezer Space + #autoLOC_DF_00057 = Part is Full? + #autoLOC_DF_00058 = R/T Connection + #autoLOC_DF_00059 = Freezer Temp + #autoLOC_DF_00060 = Cabin Temperature + #autoLOC_DF_00061 = K + #autoLOC_DF_00062 = DeepFreeze Menu + #autoLOC_DF_00063 = EC p/Kerbal to run + #autoLOC_DF_00064 = \u0020p/min + #autoLOC_DF_00065 = Current EC Usage + #autoLOC_DF_00066 = \u0020p/sec + #autoLOC_DF_00067 = Glykerol Reqd. to Freeze + #autoLOC_DF_00068 = EC p/Kerbal to Frze/Thaw + #autoLOC_DF_00069 = \nCryopods: <<1>> + #autoLOC_DF_00070 = C + #autoLOC_DF_00071 = Pod:<<1>> + #autoLOC_DF_00072 = Insufficient electric charge to monitor frozen kerbals. + #autoLOC_DF_00073 = \u0020Freezer Out of EC : Systems critical in <<1>> secs + #autoLOC_DF_00074 = <<1>> died due to lack of Electrical Charge to run cryogenics + #autoLOC_DF_00075 = Check Temperatures, Freezer getting hot + #autoLOC_DF_00076 = Warning!! Check Temperatures NOW, Freezer getting very hot + #autoLOC_DF_00077 = Temperature getting too hot for kerbals to remain frozen. + #autoLOC_DF_00078 = Freezer Over Temp : Systems critical in <<1>> secs + #autoLOC_DF_00079 = <<1>> died due to overheating, cannot keep frozen + #autoLOC_DF_00080 = Over Temperature - Emergency Thaw in Progress. + #autoLOC_DF_00081 = Insufficient electric charge to freeze kerbal + #autoLOC_DF_00082 = \u0020Cryopod - Charging: <<1>> + #autoLOC_DF_00083 = Insufficient Glykerol to freeze kerbal + #autoLOC_DF_00084 = Cannot Freeze while Temperature greater than <<1>> + #autoLOC_DF_00085 = Cannot Freeze while Crew Xfer in progress + #autoLOC_DF_00086 = Cannot run Freeze process on more than one Kerbal at a time + #autoLOC_DF_00087 = RemoteTech Detected. Press Freeze Again if you want to Freeze your Last Active Kerbal + #autoLOC_DF_00088 = An Active connection or Active Kerbal is Required On-Board to Initiate Thaw Process + #autoLOC_DF_00089 = Cannot freeze kerbal. Freezer is full + #autoLOC_DF_00090 = Cannot freeze kerbal at this time + #autoLOC_DF_00091 = Starting Freeze process + #autoLOC_DF_00092 = Freezing Aborted + #autoLOC_DF_00093 = <<1>> frozen + #autoLOC_DF_00094 = Insufficient electric charge to thaw kerbal + #autoLOC_DF_00095 = \u0020Cryopod - Charging:<<1>> + #autoLOC_DF_00096 = Cannot Thaw <<1>> Part is full + #autoLOC_DF_00097 = Cannot Thaw while Crew Xfer in progress + #autoLOC_DF_00098 = Cannot run Thaw process on more than one Kerbal at a time + #autoLOC_DF_00099 = Cannot thaw kerbal at this time + #autoLOC_DF_00100 = Code Error: Cannot thaw kerbal at this time, Check Log + #autoLOC_DF_00101 = Thawing Aborted + #autoLOC_DF_00102 = <<1>> thawed out + #autoLOC_DF_00103 = <<1>> was thawed out due to lack of Electrical Charge to run cryogenics + #autoLOC_DF_00104 = DeepFreezer mechanical failure + #autoLOC_DF_00105 = Vessel about to change, Aborting Thaw process + #autoLOC_DF_00106 = Vessel about to change, Aborting Freeze process + + #autoLOC_DF_00107 = DeepFreeze Items + #autoLOC_DF_00108 = There is less than 5 units of Glykerol on-board for your DeepFreeze Freezers + #autoLOC_DF_00109 = A DeepFreeze Alarm event has occurred. Please Switch to <<1>> to execute. + #autoLOC_DF_00110 = DeepFreeze Alarm processing completed. + + #autoLOC_DF_00111 = Name + #autoLOC_DF_00112 = Alarm Name + #autoLOC_DF_00113 = Alarm Type + #autoLOC_DF_00114 = KAC Alarm Type + #autoLOC_DF_00115 = Time Remain. + #autoLOC_DF_00116 = Time remaining before Alarm is triggered + #autoLOC_DF_00117 = There are currently no KAC alarms associated to a DeepFreeze vessel + #autoLOC_DF_00118 = Delete + #autoLOC_DF_00119 = Delete this KAC alarm completely + #autoLOC_DF_00120 = Modify + #autoLOC_DF_00121 = Modify this Alarm + #autoLOC_DF_00122 = Save + #autoLOC_DF_00123 = Save Alarm Changes + #autoLOC_DF_00124 = Cannot Save Alarm. No R/Tech Connection to vessel. + #autoLOC_DF_00125 = DeepFreeze Alarm changes Saved. + #autoLOC_DF_00126 = DeepFreeze Cannot Save alarm changes, Time is up. + #autoLOC_DF_00127 = Cancel + #autoLOC_DF_00128 = Cancel any changes + #autoLOC_DF_00129 = Name + #autoLOC_DF_00130 = The Kerbals Name + #autoLOC_DF_00131 = Trait + #autoLOC_DF_00132 = The Kerbals Profession + #autoLOC_DF_00133 = Thaw + #autoLOC_DF_00134 = Thaw this kerbal on alarm activation + #autoLOC_DF_00135 = Freeze + #autoLOC_DF_00136 = Freeze this kerbal on alarm activation + #autoLOC_DF_00137 = Modify + #autoLOC_DF_00138 = Modify this Alarms settings + + #autoLOC_DF_00139 = Switch to Vessel + #autoLOC_DF_00140 = Not Now + #autoLOC_DF_00141 = Don't switch vessel now + #autoLOC_DF_00142 = Automatic Switch to vessel failed.\nPlease switch manually to vessel Immediately + #autoLOC_DF_00143 = Switch to DeepFreeze vessel required + + #autoLOC_DF_00144 = DeepFreeze Options + #autoLOC_DF_00145 = ElectricCharge Required to run Freezers + #autoLOC_DF_00146 = If on, EC is required to run freezers + #autoLOC_DF_00147 = Fatal EC/Heat Option + #autoLOC_DF_00148 = If on Kerbals will die if EC runs out or it gets too hot + #autoLOC_DF_00149 = Non Fatal Comatose Time(in secs) + #autoLOC_DF_00150 = The time in seconds a kerbal is comatose\n if fatal EC / Heat option is off + #autoLOC_DF_00151 = AutoRecover Frozen Kerbals at KSC + #autoLOC_DF_00152 = If on, will AutoRecover Frozen Kerbals at the KSC\n and deduct the Cost from your funds + #autoLOC_DF_00153 = Cost to Thaw a Kerbal at KSC + #autoLOC_DF_00154 = Amt of currency Reqd to Freeze a Kerbal from the KSC + #autoLOC_DF_00155 = EC Reqd to Freeze/Thaw a Kerbal + #autoLOC_DF_00156 = Amt of ElecCharge Reqd to Freeze/Thaw a Kerbal. + #autoLOC_DF_00157 = Glykerol Reqd to Freeze a Kerbal + #autoLOC_DF_00158 = Amt of Glykerol used to Freeze a Kerbal,\nOverrides Part values. + #autoLOC_DF_00159 = DeepFreeze Temperatures + #autoLOC_DF_00160 = Get your calculator out. + #autoLOC_DF_00161 = Temps are in (K)elvin. (K) = (C)elcius + 273.15. (K) = ((F)arenheit + 459.67) × 5/9. Get your calculator out + #autoLOC_DF_00162 = Regulated Temperatures Required + #autoLOC_DF_00163 = If on, Regulated Temps apply to freeze\nand keep Kerbals Frozen. + #autoLOC_DF_00164 = Min. Temp. for Freezer to Freeze(K) + #autoLOC_DF_00165 = The minimum temperature (in Kelvin) for a Freezer\nto be able to Freeze a Kerbal. + #autoLOC_DF_00166 = Max. Temp. to keep Kerbals Frozen(K) + #autoLOC_DF_00167 = The maximum temperature (in Kelvin) for a Freezer\nto keep Kerbals frozen. + #autoLOC_DF_00168 = Heat generated per kerbal (kW/min) + #autoLOC_DF_00169 = Amount of thermal heat (kW) generated\nby equipment for each frozen kerbal per minute. + #autoLOC_DF_00170 = Heat generated freezer process(kW) + #autoLOC_DF_00171 = Amount of thermal heat (kW) generated\nwith each thaw/freeze process. + #autoLOC_DF_00172 = Show Part Temperatures in Kelvin + #autoLOC_DF_00173 = If on Part right click will show temp in Kelvin,\nif Off will show in Celcius. + #autoLOC_DF_00174 = DeepFreeze Misc. + #autoLOC_DF_00175 = Freezer Strip Lights On + #autoLOC_DF_00176 = Turn off if you do not want the internal\nfreezer strip lights to function. + #autoLOC_DF_00177 = ToolTips On + #autoLOC_DF_00178 = Turn the Tooltips on and off. + #autoLOC_DF_00179 = Editor Filter + #autoLOC_DF_00180 = Turn the DeepFreeze Editor filter Category on and off. + #autoLOC_DF_00181 = Use Stock App Launcher Icon + #autoLOC_DF_00182 = If on, the Stock Application launcher will be used,\nif off will use Blizzy Toolbar if installed. + #autoLOC_DF_00183 = Extra Debug Logging + #autoLOC_DF_00184 = Turn this On to capture lots of extra information\ninto the KSP log for reporting a problem. + + #autoLOC_DF_00185 = CRY-0300 Cryonic Freezing Chamber + #autoLOC_DF_00186 = REPOSoftTech + #autoLOC_DF_00187 = Designed for long term storage of 1 kerbal. The CRY-0300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300 comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00188 = deepfreeze cryogenic freezer + #autoLOC_DF_00189 = CRY-0300R Cryonic Freezing Chamber + #autoLOC_DF_00190 = Designed for long term storage of 1 kerbal. The CRY-0300R uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300R comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300R also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00191 = CRY-1300 Cryonic Freezing Chamber + #autoLOC_DF_00192 = Designed for long term storage of up to 3 Kerbals. The CRY-1300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-1300 comes stocked with 15 units of Glykerol. CAUTION: The CRY-1300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00193 = CRY-2300 Cryonic Freezing Chamber + #autoLOC_DF_00194 = Designed for long term storage of up to 10 Kerbals. The CRY-2300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-2300 comes stocked with 50 units of Glykerol. CAUTION: The CRY-2300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00195 = RS-X20R Glykerol Container + #autoLOC_DF_00196 = The RS-X20R is a small-volume Radial Glykerol container, for all your Kerbal Freezing and Thawing needs. Brought to you by the good folks at REPOSoftTech. Warranty void if filled with Glykerol. + #autoLOC_DF_00197 = deepfreeze cryogenic freezer glykerol tank + + #autoLOC_DF_00198 = Experts in the field of cryogenics, ergonomics and electrical equipment, the kerbals at REPOSoftTech are trying hard to keep all space fairing kerbals alive and their missions successful. + + #autoLOC_DF_00199 = Freeze <<1>> + #autoLOC_DF_00200 = Thaw <<1>> + } +} + +Localization +{ + ja + { + #autoLOC_DF_00001 = <<1>> has recovered from emergency thaw and resumed normal duties. + #autoLOC_DF_00002 = <<1>> has been emergency thawed and cannot perform duties for <<2>> minutes. + #autoLOC_DF_00003 = DeepFreeze + #autoLOC_DF_00004 = DeepFreeze Vessel Switch + #autoLOC_DF_00005 = DeepFreeze Vessel Switch Failed + #autoLOC_DF_00006 = DeepFreeze Kerbals + #autoLOC_DF_00007 = DeepFreeze Alarms + #autoLOC_DF_00008 = Close Window + #autoLOC_DF_00009 = Vessel + #autoLOC_DF_00010 = Vessel Name + #autoLOC_DF_00011 = Part + #autoLOC_DF_00012 = Part Name + #autoLOC_DF_00013 = Tmp + #autoLOC_DF_00014 = Part Temperature Status + #autoLOC_DF_00015 = EC + #autoLOC_DF_00016 = Electric Charge Status + #autoLOC_DF_00017 = R.T + #autoLOC_DF_00018 = Remote Tech Status + #autoLOC_DF_00019 = Alarms + #autoLOC_DF_00020 = Press the button for Kerbal Alarm Clock Alarms assigned to this part + #autoLOC_DF_00021 = LastUpd + #autoLOC_DF_00022 = The Time the part was last updated + #autoLOC_DF_00023 = TimeRem + #autoLOC_DF_00024 = Approx. time remaining before Electric Charge will run out + #autoLOC_DF_00025 = Vessel <<1>> is Over-Heating. + #autoLOC_DF_00026 = OFF + #autoLOC_DF_00027 = S/BY + #autoLOC_DF_00028 = OUT + #autoLOC_DF_00029 = Vesssel <<1>> is out of ElectricCharge.\n Situation Critical. + #autoLOC_DF_00030 = ALRT + #autoLOC_DF_00031 = Vessel <<1>> is almost out of ElectricCharge. + #autoLOC_DF_00032 = LOW + #autoLOC_DF_00033 = OK + #autoLOC_DF_00034 = NC + #autoLOC_DF_00035 = Alarm + #autoLOC_DF_00036 = Go to Alarms + #autoLOC_DF_00037 = There are currently no Frozen Kerbals + #autoLOC_DF_00038 = Kerbal Name + #autoLOC_DF_00039 = Profession + #autoLOC_DF_00040 = Thaw + #autoLOC_DF_00041 = Thaw this kerbal + #autoLOC_DF_00042 = Cannot thaw <<1>> from KSC. Vessel still exists <<2>> at <<3>> + #autoLOC_DF_00043 = Freeze + #autoLOC_DF_00044 = Freeze this kerbal + #autoLOC_DF_00045 = KAC Alarms + #autoLOC_DF_00046 = Resize Window + #autoLOC_DF_00047 = <<1>>K + #autoLOC_DF_00048 = <<2>>C + #autoLOC_DF_00049 = <<1>> was stored frozen at KSC + #autoLOC_DF_00050 = Insufficient funds to thaw <<1>> at this time + #autoLOC_DF_00051 = <<1>> was found and thawed out + #autoLOC_DF_00052 = <<1>> was found and thawed out <<2>> funds deducted from account + #autoLOC_DF_00053 = Cannot thaw <<1>> vessel still exists <<2>> at <<3>> + + #autoLOC_DF_00054 = Freezer Capacity + #autoLOC_DF_00055 = Total Frozen Kerbals + #autoLOC_DF_00056 = Freezer Space + #autoLOC_DF_00057 = Part is Full? + #autoLOC_DF_00058 = R/T Connection + #autoLOC_DF_00059 = Freezer Temp + #autoLOC_DF_00060 = Cabin Temperature + #autoLOC_DF_00061 = K + #autoLOC_DF_00062 = DeepFreeze Menu + #autoLOC_DF_00063 = EC p/Kerbal to run + #autoLOC_DF_00064 = \u0020p/min + #autoLOC_DF_00065 = Current EC Usage + #autoLOC_DF_00066 = \u0020p/sec + #autoLOC_DF_00067 = Glykerol Reqd. to Freeze + #autoLOC_DF_00068 = EC p/Kerbal to Frze/Thaw + #autoLOC_DF_00069 = \nCryopods: <<1>> + #autoLOC_DF_00070 = C + #autoLOC_DF_00071 = Pod:<<1>> + #autoLOC_DF_00072 = Insufficient electric charge to monitor frozen kerbals. + #autoLOC_DF_00073 = \u0020Freezer Out of EC : Systems critical in <<1>> secs + #autoLOC_DF_00074 = <<1>> died due to lack of Electrical Charge to run cryogenics + #autoLOC_DF_00075 = Check Temperatures, Freezer getting hot + #autoLOC_DF_00076 = Warning!! Check Temperatures NOW, Freezer getting very hot + #autoLOC_DF_00077 = Temperature getting too hot for kerbals to remain frozen. + #autoLOC_DF_00078 = Freezer Over Temp : Systems critical in <<1>> secs + #autoLOC_DF_00079 = <<1>> died due to overheating, cannot keep frozen + #autoLOC_DF_00080 = Over Temperature - Emergency Thaw in Progress. + #autoLOC_DF_00081 = Insufficient electric charge to freeze kerbal + #autoLOC_DF_00082 = \u0020Cryopod - Charging: <<1>> + #autoLOC_DF_00083 = Insufficient Glykerol to freeze kerbal + #autoLOC_DF_00084 = Cannot Freeze while Temperature greater than <<1>> + #autoLOC_DF_00085 = Cannot Freeze while Crew Xfer in progress + #autoLOC_DF_00086 = Cannot run Freeze process on more than one Kerbal at a time + #autoLOC_DF_00087 = RemoteTech Detected. Press Freeze Again if you want to Freeze your Last Active Kerbal + #autoLOC_DF_00088 = An Active connection or Active Kerbal is Required On-Board to Initiate Thaw Process + #autoLOC_DF_00089 = Cannot freeze kerbal. Freezer is full + #autoLOC_DF_00090 = Cannot freeze kerbal at this time + #autoLOC_DF_00091 = Starting Freeze process + #autoLOC_DF_00092 = Freezing Aborted + #autoLOC_DF_00093 = <<1>> frozen + #autoLOC_DF_00094 = Insufficient electric charge to thaw kerbal + #autoLOC_DF_00095 = \u0020Cryopod - Charging:<<1>> + #autoLOC_DF_00096 = Cannot Thaw <<1>> Part is full + #autoLOC_DF_00097 = Cannot Thaw while Crew Xfer in progress + #autoLOC_DF_00098 = Cannot run Thaw process on more than one Kerbal at a time + #autoLOC_DF_00099 = Cannot thaw kerbal at this time + #autoLOC_DF_00100 = Code Error: Cannot thaw kerbal at this time, Check Log + #autoLOC_DF_00101 = Thawing Aborted + #autoLOC_DF_00102 = <<1>> thawed out + #autoLOC_DF_00103 = <<1>> was thawed out due to lack of Electrical Charge to run cryogenics + #autoLOC_DF_00104 = DeepFreezer mechanical failure + #autoLOC_DF_00105 = Vessel about to change, Aborting Thaw process + #autoLOC_DF_00106 = Vessel about to change, Aborting Freeze process + + #autoLOC_DF_00107 = DeepFreeze Items + #autoLOC_DF_00108 = There is less than 5 units of Glykerol on-board for your DeepFreeze Freezers + #autoLOC_DF_00109 = A DeepFreeze Alarm event has occurred. Please Switch to <<1>> to execute. + #autoLOC_DF_00110 = DeepFreeze Alarm processing completed. + + #autoLOC_DF_00111 = Name + #autoLOC_DF_00112 = Alarm Name + #autoLOC_DF_00113 = Alarm Type + #autoLOC_DF_00114 = KAC Alarm Type + #autoLOC_DF_00115 = Time Remain. + #autoLOC_DF_00116 = Time remaining before Alarm is triggered + #autoLOC_DF_00117 = There are currently no KAC alarms associated to a DeepFreeze vessel + #autoLOC_DF_00118 = Delete + #autoLOC_DF_00119 = Delete this KAC alarm completely + #autoLOC_DF_00120 = Modify + #autoLOC_DF_00121 = Modify this Alarm + #autoLOC_DF_00122 = Save + #autoLOC_DF_00123 = Save Alarm Changes + #autoLOC_DF_00124 = Cannot Save Alarm. No R/Tech Connection to vessel. + #autoLOC_DF_00125 = DeepFreeze Alarm changes Saved. + #autoLOC_DF_00126 = DeepFreeze Cannot Save alarm changes, Time is up. + #autoLOC_DF_00127 = Cancel + #autoLOC_DF_00128 = Cancel any changes + #autoLOC_DF_00129 = Name + #autoLOC_DF_00130 = The Kerbals Name + #autoLOC_DF_00131 = Trait + #autoLOC_DF_00132 = The Kerbals Profession + #autoLOC_DF_00133 = Thaw + #autoLOC_DF_00134 = Thaw this kerbal on alarm activation + #autoLOC_DF_00135 = Freeze + #autoLOC_DF_00136 = Freeze this kerbal on alarm activation + #autoLOC_DF_00137 = Modify + #autoLOC_DF_00138 = Modify this Alarms settings + + #autoLOC_DF_00139 = Switch to Vessel + #autoLOC_DF_00140 = Not Now + #autoLOC_DF_00141 = Don't switch vessel now + #autoLOC_DF_00142 = Automatic Switch to vessel failed.\nPlease switch manually to vessel Immediately + #autoLOC_DF_00143 = Switch to DeepFreeze vessel required + + #autoLOC_DF_00144 = DeepFreeze Options + #autoLOC_DF_00145 = ElectricCharge Required to run Freezers + #autoLOC_DF_00146 = If on, EC is required to run freezers + #autoLOC_DF_00147 = Fatal EC/Heat Option + #autoLOC_DF_00148 = If on Kerbals will die if EC runs out or it gets too hot + #autoLOC_DF_00149 = Non Fatal Comatose Time(in secs) + #autoLOC_DF_00150 = The time in seconds a kerbal is comatose\n if fatal EC / Heat option is off + #autoLOC_DF_00151 = AutoRecover Frozen Kerbals at KSC + #autoLOC_DF_00152 = If on, will AutoRecover Frozen Kerbals at the KSC\n and deduct the Cost from your funds + #autoLOC_DF_00153 = Cost to Thaw a Kerbal at KSC + #autoLOC_DF_00154 = Amt of currency Reqd to Freeze a Kerbal from the KSC + #autoLOC_DF_00155 = EC Reqd to Freeze/Thaw a Kerbal + #autoLOC_DF_00156 = Amt of ElecCharge Reqd to Freeze/Thaw a Kerbal. + #autoLOC_DF_00157 = Glykerol Reqd to Freeze a Kerbal + #autoLOC_DF_00158 = Amt of Glykerol used to Freeze a Kerbal,\nOverrides Part values. + #autoLOC_DF_00159 = DeepFreeze Temperatures + #autoLOC_DF_00160 = Get your calculator out. + #autoLOC_DF_00161 = Temps are in (K)elvin. (K) = (C)elcius + 273.15. (K) = ((F)arenheit + 459.67) × 5/9. Get your calculator out + #autoLOC_DF_00162 = Regulated Temperatures Required + #autoLOC_DF_00163 = If on, Regulated Temps apply to freeze\nand keep Kerbals Frozen. + #autoLOC_DF_00164 = Min. Temp. for Freezer to Freeze(K) + #autoLOC_DF_00165 = The minimum temperature (in Kelvin) for a Freezer\nto be able to Freeze a Kerbal. + #autoLOC_DF_00166 = Max. Temp. to keep Kerbals Frozen(K) + #autoLOC_DF_00167 = The maximum temperature (in Kelvin) for a Freezer\nto keep Kerbals frozen. + #autoLOC_DF_00168 = Heat generated per kerbal (kW/min) + #autoLOC_DF_00169 = Amount of thermal heat (kW) generated\nby equipment for each frozen kerbal per minute. + #autoLOC_DF_00170 = Heat generated freezer process(kW) + #autoLOC_DF_00171 = Amount of thermal heat (kW) generated\nwith each thaw/freeze process. + #autoLOC_DF_00172 = Show Part Temperatures in Kelvin + #autoLOC_DF_00173 = If on Part right click will show temp in Kelvin,\nif Off will show in Celcius. + #autoLOC_DF_00174 = DeepFreeze Misc. + #autoLOC_DF_00175 = Freezer Strip Lights On + #autoLOC_DF_00176 = Turn off if you do not want the internal\nfreezer strip lights to function. + #autoLOC_DF_00177 = ToolTips On + #autoLOC_DF_00178 = Turn the Tooltips on and off. + #autoLOC_DF_00179 = Editor Filter + #autoLOC_DF_00180 = Turn the DeepFreeze Editor filter Category on and off. + #autoLOC_DF_00181 = Use Stock App Launcher Icon + #autoLOC_DF_00182 = If on, the Stock Application launcher will be used,\nif off will use Blizzy Toolbar if installed. + #autoLOC_DF_00183 = Extra Debug Logging + #autoLOC_DF_00184 = Turn this On to capture lots of extra information\ninto the KSP log for reporting a problem. + + #autoLOC_DF_00185 = CRY-0300 Cryonic Freezing Chamber + #autoLOC_DF_00186 = REPOSoftTech + #autoLOC_DF_00187 = Designed for long term storage of 1 kerbal. The CRY-0300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300 comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00188 = deepfreeze cryogenic freezer + #autoLOC_DF_00189 = CRY-0300R Cryonic Freezing Chamber + #autoLOC_DF_00190 = Designed for long term storage of 1 kerbal. The CRY-0300R uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300R comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300R also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00191 = CRY-1300 Cryonic Freezing Chamber + #autoLOC_DF_00192 = Designed for long term storage of up to 3 Kerbals. The CRY-1300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-1300 comes stocked with 15 units of Glykerol. CAUTION: The CRY-1300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00193 = CRY-2300 Cryonic Freezing Chamber + #autoLOC_DF_00194 = Designed for long term storage of up to 10 Kerbals. The CRY-2300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-2300 comes stocked with 50 units of Glykerol. CAUTION: The CRY-2300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00195 = RS-X20R Glykerol Container + #autoLOC_DF_00196 = The RS-X20R is a small-volume Radial Glykerol container, for all your Kerbal Freezing and Thawing needs. Brought to you by the good folks at REPOSoftTech. Warranty void if filled with Glykerol. + #autoLOC_DF_00197 = deepfreeze cryogenic freezer glykerol tank + + #autoLOC_DF_00198 = Experts in the field of cryogenics, ergonomics and electrical equipment, the kerbals at REPOSoftTech are trying hard to keep all space fairing kerbals alive and their missions successful. + + #autoLOC_DF_00199 = Freeze <<1>> + #autoLOC_DF_00200 = Thaw <<1>> + } +} + +Localization +{ + ru + { + #autoLOC_DF_00001 = <<1>> has recovered from emergency thaw and resumed normal duties. + #autoLOC_DF_00002 = <<1>> has been emergency thawed and cannot perform duties for <<2>> minutes. + #autoLOC_DF_00003 = DeepFreeze + #autoLOC_DF_00004 = DeepFreeze Vessel Switch + #autoLOC_DF_00005 = DeepFreeze Vessel Switch Failed + #autoLOC_DF_00006 = DeepFreeze Kerbals + #autoLOC_DF_00007 = DeepFreeze Alarms + #autoLOC_DF_00008 = Close Window + #autoLOC_DF_00009 = Vessel + #autoLOC_DF_00010 = Vessel Name + #autoLOC_DF_00011 = Part + #autoLOC_DF_00012 = Part Name + #autoLOC_DF_00013 = Tmp + #autoLOC_DF_00014 = Part Temperature Status + #autoLOC_DF_00015 = EC + #autoLOC_DF_00016 = Electric Charge Status + #autoLOC_DF_00017 = R.T + #autoLOC_DF_00018 = Remote Tech Status + #autoLOC_DF_00019 = Alarms + #autoLOC_DF_00020 = Press the button for Kerbal Alarm Clock Alarms assigned to this part + #autoLOC_DF_00021 = LastUpd + #autoLOC_DF_00022 = The Time the part was last updated + #autoLOC_DF_00023 = TimeRem + #autoLOC_DF_00024 = Approx. time remaining before Electric Charge will run out + #autoLOC_DF_00025 = Vessel <<1>> is Over-Heating. + #autoLOC_DF_00026 = OFF + #autoLOC_DF_00027 = S/BY + #autoLOC_DF_00028 = OUT + #autoLOC_DF_00029 = Vesssel <<1>> is out of ElectricCharge.\n Situation Critical. + #autoLOC_DF_00030 = ALRT + #autoLOC_DF_00031 = Vessel <<1>> is almost out of ElectricCharge. + #autoLOC_DF_00032 = LOW + #autoLOC_DF_00033 = OK + #autoLOC_DF_00034 = NC + #autoLOC_DF_00035 = Alarm + #autoLOC_DF_00036 = Go to Alarms + #autoLOC_DF_00037 = There are currently no Frozen Kerbals + #autoLOC_DF_00038 = Kerbal Name + #autoLOC_DF_00039 = Profession + #autoLOC_DF_00040 = Thaw + #autoLOC_DF_00041 = Thaw this kerbal + #autoLOC_DF_00042 = Cannot thaw <<1>> from KSC. Vessel still exists <<2>> at <<3>> + #autoLOC_DF_00043 = Freeze + #autoLOC_DF_00044 = Freeze this kerbal + #autoLOC_DF_00045 = KAC Alarms + #autoLOC_DF_00046 = Resize Window + #autoLOC_DF_00047 = <<1>>K + #autoLOC_DF_00048 = <<2>>C + #autoLOC_DF_00049 = <<1>> was stored frozen at KSC + #autoLOC_DF_00050 = Insufficient funds to thaw <<1>> at this time + #autoLOC_DF_00051 = <<1>> was found and thawed out + #autoLOC_DF_00052 = <<1>> was found and thawed out <<2>> funds deducted from account + #autoLOC_DF_00053 = Cannot thaw <<1>> vessel still exists <<2>> at <<3>> + + #autoLOC_DF_00054 = Freezer Capacity + #autoLOC_DF_00055 = Total Frozen Kerbals + #autoLOC_DF_00056 = Freezer Space + #autoLOC_DF_00057 = Part is Full? + #autoLOC_DF_00058 = R/T Connection + #autoLOC_DF_00059 = Freezer Temp + #autoLOC_DF_00060 = Cabin Temperature + #autoLOC_DF_00061 = K + #autoLOC_DF_00062 = DeepFreeze Menu + #autoLOC_DF_00063 = EC p/Kerbal to run + #autoLOC_DF_00064 = \u0020p/min + #autoLOC_DF_00065 = Current EC Usage + #autoLOC_DF_00066 = \u0020p/sec + #autoLOC_DF_00067 = Glykerol Reqd. to Freeze + #autoLOC_DF_00068 = EC p/Kerbal to Frze/Thaw + #autoLOC_DF_00069 = \nCryopods: <<1>> + #autoLOC_DF_00070 = C + #autoLOC_DF_00071 = Pod:<<1>> + #autoLOC_DF_00072 = Insufficient electric charge to monitor frozen kerbals. + #autoLOC_DF_00073 = \u0020Freezer Out of EC : Systems critical in <<1>> secs + #autoLOC_DF_00074 = <<1>> died due to lack of Electrical Charge to run cryogenics + #autoLOC_DF_00075 = Check Temperatures, Freezer getting hot + #autoLOC_DF_00076 = Warning!! Check Temperatures NOW, Freezer getting very hot + #autoLOC_DF_00077 = Temperature getting too hot for kerbals to remain frozen. + #autoLOC_DF_00078 = Freezer Over Temp : Systems critical in <<1>> secs + #autoLOC_DF_00079 = <<1>> died due to overheating, cannot keep frozen + #autoLOC_DF_00080 = Over Temperature - Emergency Thaw in Progress. + #autoLOC_DF_00081 = Insufficient electric charge to freeze kerbal + #autoLOC_DF_00082 = \u0020Cryopod - Charging: <<1>> + #autoLOC_DF_00083 = Insufficient Glykerol to freeze kerbal + #autoLOC_DF_00084 = Cannot Freeze while Temperature greater than <<1>> + #autoLOC_DF_00085 = Cannot Freeze while Crew Xfer in progress + #autoLOC_DF_00086 = Cannot run Freeze process on more than one Kerbal at a time + #autoLOC_DF_00087 = RemoteTech Detected. Press Freeze Again if you want to Freeze your Last Active Kerbal + #autoLOC_DF_00088 = An Active connection or Active Kerbal is Required On-Board to Initiate Thaw Process + #autoLOC_DF_00089 = Cannot freeze kerbal. Freezer is full + #autoLOC_DF_00090 = Cannot freeze kerbal at this time + #autoLOC_DF_00091 = Starting Freeze process + #autoLOC_DF_00092 = Freezing Aborted + #autoLOC_DF_00093 = <<1>> frozen + #autoLOC_DF_00094 = Insufficient electric charge to thaw kerbal + #autoLOC_DF_00095 = \u0020Cryopod - Charging:<<1>> + #autoLOC_DF_00096 = Cannot Thaw <<1>> Part is full + #autoLOC_DF_00097 = Cannot Thaw while Crew Xfer in progress + #autoLOC_DF_00098 = Cannot run Thaw process on more than one Kerbal at a time + #autoLOC_DF_00099 = Cannot thaw kerbal at this time + #autoLOC_DF_00100 = Code Error: Cannot thaw kerbal at this time, Check Log + #autoLOC_DF_00101 = Thawing Aborted + #autoLOC_DF_00102 = <<1>> thawed out + #autoLOC_DF_00103 = <<1>> was thawed out due to lack of Electrical Charge to run cryogenics + #autoLOC_DF_00104 = DeepFreezer mechanical failure + #autoLOC_DF_00105 = Vessel about to change, Aborting Thaw process + #autoLOC_DF_00106 = Vessel about to change, Aborting Freeze process + + #autoLOC_DF_00107 = DeepFreeze Items + #autoLOC_DF_00108 = There is less than 5 units of Glykerol on-board for your DeepFreeze Freezers + #autoLOC_DF_00109 = A DeepFreeze Alarm event has occurred. Please Switch to <<1>> to execute. + #autoLOC_DF_00110 = DeepFreeze Alarm processing completed. + + #autoLOC_DF_00111 = Name + #autoLOC_DF_00112 = Alarm Name + #autoLOC_DF_00113 = Alarm Type + #autoLOC_DF_00114 = KAC Alarm Type + #autoLOC_DF_00115 = Time Remain. + #autoLOC_DF_00116 = Time remaining before Alarm is triggered + #autoLOC_DF_00117 = There are currently no KAC alarms associated to a DeepFreeze vessel + #autoLOC_DF_00118 = Delete + #autoLOC_DF_00119 = Delete this KAC alarm completely + #autoLOC_DF_00120 = Modify + #autoLOC_DF_00121 = Modify this Alarm + #autoLOC_DF_00122 = Save + #autoLOC_DF_00123 = Save Alarm Changes + #autoLOC_DF_00124 = Cannot Save Alarm. No R/Tech Connection to vessel. + #autoLOC_DF_00125 = DeepFreeze Alarm changes Saved. + #autoLOC_DF_00126 = DeepFreeze Cannot Save alarm changes, Time is up. + #autoLOC_DF_00127 = Cancel + #autoLOC_DF_00128 = Cancel any changes + #autoLOC_DF_00129 = Name + #autoLOC_DF_00130 = The Kerbals Name + #autoLOC_DF_00131 = Trait + #autoLOC_DF_00132 = The Kerbals Profession + #autoLOC_DF_00133 = Thaw + #autoLOC_DF_00134 = Thaw this kerbal on alarm activation + #autoLOC_DF_00135 = Freeze + #autoLOC_DF_00136 = Freeze this kerbal on alarm activation + #autoLOC_DF_00137 = Modify + #autoLOC_DF_00138 = Modify this Alarms settings + + #autoLOC_DF_00139 = Switch to Vessel + #autoLOC_DF_00140 = Not Now + #autoLOC_DF_00141 = Don't switch vessel now + #autoLOC_DF_00142 = Automatic Switch to vessel failed.\nPlease switch manually to vessel Immediately + #autoLOC_DF_00143 = Switch to DeepFreeze vessel required + + #autoLOC_DF_00144 = DeepFreeze Options + #autoLOC_DF_00145 = ElectricCharge Required to run Freezers + #autoLOC_DF_00146 = If on, EC is required to run freezers + #autoLOC_DF_00147 = Fatal EC/Heat Option + #autoLOC_DF_00148 = If on Kerbals will die if EC runs out or it gets too hot + #autoLOC_DF_00149 = Non Fatal Comatose Time(in secs) + #autoLOC_DF_00150 = The time in seconds a kerbal is comatose\n if fatal EC / Heat option is off + #autoLOC_DF_00151 = AutoRecover Frozen Kerbals at KSC + #autoLOC_DF_00152 = If on, will AutoRecover Frozen Kerbals at the KSC\n and deduct the Cost from your funds + #autoLOC_DF_00153 = Cost to Thaw a Kerbal at KSC + #autoLOC_DF_00154 = Amt of currency Reqd to Freeze a Kerbal from the KSC + #autoLOC_DF_00155 = EC Reqd to Freeze/Thaw a Kerbal + #autoLOC_DF_00156 = Amt of ElecCharge Reqd to Freeze/Thaw a Kerbal. + #autoLOC_DF_00157 = Glykerol Reqd to Freeze a Kerbal + #autoLOC_DF_00158 = Amt of Glykerol used to Freeze a Kerbal,\nOverrides Part values. + #autoLOC_DF_00159 = DeepFreeze Temperatures + #autoLOC_DF_00160 = Get your calculator out. + #autoLOC_DF_00161 = Temps are in (K)elvin. (K) = (C)elcius + 273.15. (K) = ((F)arenheit + 459.67) × 5/9. Get your calculator out + #autoLOC_DF_00162 = Regulated Temperatures Required + #autoLOC_DF_00163 = If on, Regulated Temps apply to freeze\nand keep Kerbals Frozen. + #autoLOC_DF_00164 = Min. Temp. for Freezer to Freeze(K) + #autoLOC_DF_00165 = The minimum temperature (in Kelvin) for a Freezer\nto be able to Freeze a Kerbal. + #autoLOC_DF_00166 = Max. Temp. to keep Kerbals Frozen(K) + #autoLOC_DF_00167 = The maximum temperature (in Kelvin) for a Freezer\nto keep Kerbals frozen. + #autoLOC_DF_00168 = Heat generated per kerbal (kW/min) + #autoLOC_DF_00169 = Amount of thermal heat (kW) generated\nby equipment for each frozen kerbal per minute. + #autoLOC_DF_00170 = Heat generated freezer process(kW) + #autoLOC_DF_00171 = Amount of thermal heat (kW) generated\nwith each thaw/freeze process. + #autoLOC_DF_00172 = Show Part Temperatures in Kelvin + #autoLOC_DF_00173 = If on Part right click will show temp in Kelvin,\nif Off will show in Celcius. + #autoLOC_DF_00174 = DeepFreeze Misc. + #autoLOC_DF_00175 = Freezer Strip Lights On + #autoLOC_DF_00176 = Turn off if you do not want the internal\nfreezer strip lights to function. + #autoLOC_DF_00177 = ToolTips On + #autoLOC_DF_00178 = Turn the Tooltips on and off. + #autoLOC_DF_00179 = Editor Filter + #autoLOC_DF_00180 = Turn the DeepFreeze Editor filter Category on and off. + #autoLOC_DF_00181 = Use Stock App Launcher Icon + #autoLOC_DF_00182 = If on, the Stock Application launcher will be used,\nif off will use Blizzy Toolbar if installed. + #autoLOC_DF_00183 = Extra Debug Logging + #autoLOC_DF_00184 = Turn this On to capture lots of extra information\ninto the KSP log for reporting a problem. + + #autoLOC_DF_00185 = CRY-0300 Cryonic Freezing Chamber + #autoLOC_DF_00186 = REPOSoftTech + #autoLOC_DF_00187 = Designed for long term storage of 1 kerbal. The CRY-0300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300 comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00188 = deepfreeze cryogenic freezer + #autoLOC_DF_00189 = CRY-0300R Cryonic Freezing Chamber + #autoLOC_DF_00190 = Designed for long term storage of 1 kerbal. The CRY-0300R uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300R comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300R also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00191 = CRY-1300 Cryonic Freezing Chamber + #autoLOC_DF_00192 = Designed for long term storage of up to 3 Kerbals. The CRY-1300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-1300 comes stocked with 15 units of Glykerol. CAUTION: The CRY-1300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00193 = CRY-2300 Cryonic Freezing Chamber + #autoLOC_DF_00194 = Designed for long term storage of up to 10 Kerbals. The CRY-2300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-2300 comes stocked with 50 units of Glykerol. CAUTION: The CRY-2300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00195 = RS-X20R Glykerol Container + #autoLOC_DF_00196 = The RS-X20R is a small-volume Radial Glykerol container, for all your Kerbal Freezing and Thawing needs. Brought to you by the good folks at REPOSoftTech. Warranty void if filled with Glykerol. + #autoLOC_DF_00197 = deepfreeze cryogenic freezer glykerol tank + + #autoLOC_DF_00198 = Experts in the field of cryogenics, ergonomics and electrical equipment, the kerbals at REPOSoftTech are trying hard to keep all space fairing kerbals alive and their missions successful. + + #autoLOC_DF_00199 = Freeze <<1>> + #autoLOC_DF_00200 = Thaw <<1>> + } +} + +Localization +{ + zh-cn + { + #autoLOC_DF_00001 = <<1>> has recovered from emergency thaw and resumed normal duties. + #autoLOC_DF_00002 = <<1>> has been emergency thawed and cannot perform duties for <<2>> minutes. + #autoLOC_DF_00003 = DeepFreeze + #autoLOC_DF_00004 = DeepFreeze Vessel Switch + #autoLOC_DF_00005 = DeepFreeze Vessel Switch Failed + #autoLOC_DF_00006 = DeepFreeze Kerbals + #autoLOC_DF_00007 = DeepFreeze Alarms + #autoLOC_DF_00008 = Close Window + #autoLOC_DF_00009 = Vessel + #autoLOC_DF_00010 = Vessel Name + #autoLOC_DF_00011 = Part + #autoLOC_DF_00012 = Part Name + #autoLOC_DF_00013 = Tmp + #autoLOC_DF_00014 = Part Temperature Status + #autoLOC_DF_00015 = EC + #autoLOC_DF_00016 = Electric Charge Status + #autoLOC_DF_00017 = R.T + #autoLOC_DF_00018 = Remote Tech Status + #autoLOC_DF_00019 = Alarms + #autoLOC_DF_00020 = Press the button for Kerbal Alarm Clock Alarms assigned to this part + #autoLOC_DF_00021 = LastUpd + #autoLOC_DF_00022 = The Time the part was last updated + #autoLOC_DF_00023 = TimeRem + #autoLOC_DF_00024 = Approx. time remaining before Electric Charge will run out + #autoLOC_DF_00025 = Vessel <<1>> is Over-Heating. + #autoLOC_DF_00026 = OFF + #autoLOC_DF_00027 = S/BY + #autoLOC_DF_00028 = OUT + #autoLOC_DF_00029 = Vesssel <<1>> is out of ElectricCharge.\n Situation Critical. + #autoLOC_DF_00030 = ALRT + #autoLOC_DF_00031 = Vessel <<1>> is almost out of ElectricCharge. + #autoLOC_DF_00032 = LOW + #autoLOC_DF_00033 = OK + #autoLOC_DF_00034 = NC + #autoLOC_DF_00035 = Alarm + #autoLOC_DF_00036 = Go to Alarms + #autoLOC_DF_00037 = There are currently no Frozen Kerbals + #autoLOC_DF_00038 = Kerbal Name + #autoLOC_DF_00039 = Profession + #autoLOC_DF_00040 = Thaw + #autoLOC_DF_00041 = Thaw this kerbal + #autoLOC_DF_00042 = Cannot thaw <<1>> from KSC. Vessel still exists <<2>> at <<3>> + #autoLOC_DF_00043 = Freeze + #autoLOC_DF_00044 = Freeze this kerbal + #autoLOC_DF_00045 = KAC Alarms + #autoLOC_DF_00046 = Resize Window + #autoLOC_DF_00047 = <<1>>K + #autoLOC_DF_00048 = <<2>>C + #autoLOC_DF_00049 = <<1>> was stored frozen at KSC + #autoLOC_DF_00050 = Insufficient funds to thaw <<1>> at this time + #autoLOC_DF_00051 = <<1>> was found and thawed out + #autoLOC_DF_00052 = <<1>> was found and thawed out <<2>> funds deducted from account + #autoLOC_DF_00053 = Cannot thaw <<1>> vessel still exists <<2>> at <<3>> + + #autoLOC_DF_00054 = Freezer Capacity + #autoLOC_DF_00055 = Total Frozen Kerbals + #autoLOC_DF_00056 = Freezer Space + #autoLOC_DF_00057 = Part is Full? + #autoLOC_DF_00058 = R/T Connection + #autoLOC_DF_00059 = Freezer Temp + #autoLOC_DF_00060 = Cabin Temperature + #autoLOC_DF_00061 = K + #autoLOC_DF_00062 = DeepFreeze Menu + #autoLOC_DF_00063 = EC p/Kerbal to run + #autoLOC_DF_00064 = \u0020p/min + #autoLOC_DF_00065 = Current EC Usage + #autoLOC_DF_00066 = \u0020p/sec + #autoLOC_DF_00067 = Glykerol Reqd. to Freeze + #autoLOC_DF_00068 = EC p/Kerbal to Frze/Thaw + #autoLOC_DF_00069 = \nCryopods: <<1>> + #autoLOC_DF_00070 = C + #autoLOC_DF_00071 = Pod:<<1>> + #autoLOC_DF_00072 = Insufficient electric charge to monitor frozen kerbals. + #autoLOC_DF_00073 = \u0020Freezer Out of EC : Systems critical in <<1>> secs + #autoLOC_DF_00074 = <<1>> died due to lack of Electrical Charge to run cryogenics + #autoLOC_DF_00075 = Check Temperatures, Freezer getting hot + #autoLOC_DF_00076 = Warning!! Check Temperatures NOW, Freezer getting very hot + #autoLOC_DF_00077 = Temperature getting too hot for kerbals to remain frozen. + #autoLOC_DF_00078 = Freezer Over Temp : Systems critical in <<1>> secs + #autoLOC_DF_00079 = <<1>> died due to overheating, cannot keep frozen + #autoLOC_DF_00080 = Over Temperature - Emergency Thaw in Progress. + #autoLOC_DF_00081 = Insufficient electric charge to freeze kerbal + #autoLOC_DF_00082 = \u0020Cryopod - Charging: <<1>> + #autoLOC_DF_00083 = Insufficient Glykerol to freeze kerbal + #autoLOC_DF_00084 = Cannot Freeze while Temperature greater than <<1>> + #autoLOC_DF_00085 = Cannot Freeze while Crew Xfer in progress + #autoLOC_DF_00086 = Cannot run Freeze process on more than one Kerbal at a time + #autoLOC_DF_00087 = RemoteTech Detected. Press Freeze Again if you want to Freeze your Last Active Kerbal + #autoLOC_DF_00088 = An Active connection or Active Kerbal is Required On-Board to Initiate Thaw Process + #autoLOC_DF_00089 = Cannot freeze kerbal. Freezer is full + #autoLOC_DF_00090 = Cannot freeze kerbal at this time + #autoLOC_DF_00091 = Starting Freeze process + #autoLOC_DF_00092 = Freezing Aborted + #autoLOC_DF_00093 = <<1>> frozen + #autoLOC_DF_00094 = Insufficient electric charge to thaw kerbal + #autoLOC_DF_00095 = \u0020Cryopod - Charging:<<1>> + #autoLOC_DF_00096 = Cannot Thaw <<1>> Part is full + #autoLOC_DF_00097 = Cannot Thaw while Crew Xfer in progress + #autoLOC_DF_00098 = Cannot run Thaw process on more than one Kerbal at a time + #autoLOC_DF_00099 = Cannot thaw kerbal at this time + #autoLOC_DF_00100 = Code Error: Cannot thaw kerbal at this time, Check Log + #autoLOC_DF_00101 = Thawing Aborted + #autoLOC_DF_00102 = <<1>> thawed out + #autoLOC_DF_00103 = <<1>> was thawed out due to lack of Electrical Charge to run cryogenics + #autoLOC_DF_00104 = DeepFreezer mechanical failure + #autoLOC_DF_00105 = Vessel about to change, Aborting Thaw process + #autoLOC_DF_00106 = Vessel about to change, Aborting Freeze process + + #autoLOC_DF_00107 = DeepFreeze Items + #autoLOC_DF_00108 = There is less than 5 units of Glykerol on-board for your DeepFreeze Freezers + #autoLOC_DF_00109 = A DeepFreeze Alarm event has occurred. Please Switch to <<1>> to execute. + #autoLOC_DF_00110 = DeepFreeze Alarm processing completed. + + #autoLOC_DF_00111 = Name + #autoLOC_DF_00112 = Alarm Name + #autoLOC_DF_00113 = Alarm Type + #autoLOC_DF_00114 = KAC Alarm Type + #autoLOC_DF_00115 = Time Remain. + #autoLOC_DF_00116 = Time remaining before Alarm is triggered + #autoLOC_DF_00117 = There are currently no KAC alarms associated to a DeepFreeze vessel + #autoLOC_DF_00118 = Delete + #autoLOC_DF_00119 = Delete this KAC alarm completely + #autoLOC_DF_00120 = Modify + #autoLOC_DF_00121 = Modify this Alarm + #autoLOC_DF_00122 = Save + #autoLOC_DF_00123 = Save Alarm Changes + #autoLOC_DF_00124 = Cannot Save Alarm. No R/Tech Connection to vessel. + #autoLOC_DF_00125 = DeepFreeze Alarm changes Saved. + #autoLOC_DF_00126 = DeepFreeze Cannot Save alarm changes, Time is up. + #autoLOC_DF_00127 = Cancel + #autoLOC_DF_00128 = Cancel any changes + #autoLOC_DF_00129 = Name + #autoLOC_DF_00130 = The Kerbals Name + #autoLOC_DF_00131 = Trait + #autoLOC_DF_00132 = The Kerbals Profession + #autoLOC_DF_00133 = Thaw + #autoLOC_DF_00134 = Thaw this kerbal on alarm activation + #autoLOC_DF_00135 = Freeze + #autoLOC_DF_00136 = Freeze this kerbal on alarm activation + #autoLOC_DF_00137 = Modify + #autoLOC_DF_00138 = Modify this Alarms settings + + #autoLOC_DF_00139 = Switch to Vessel + #autoLOC_DF_00140 = Not Now + #autoLOC_DF_00141 = Don't switch vessel now + #autoLOC_DF_00142 = Automatic Switch to vessel failed.\nPlease switch manually to vessel Immediately + #autoLOC_DF_00143 = Switch to DeepFreeze vessel required + + #autoLOC_DF_00144 = DeepFreeze Options + #autoLOC_DF_00145 = ElectricCharge Required to run Freezers + #autoLOC_DF_00146 = If on, EC is required to run freezers + #autoLOC_DF_00147 = Fatal EC/Heat Option + #autoLOC_DF_00148 = If on Kerbals will die if EC runs out or it gets too hot + #autoLOC_DF_00149 = Non Fatal Comatose Time(in secs) + #autoLOC_DF_00150 = The time in seconds a kerbal is comatose\n if fatal EC / Heat option is off + #autoLOC_DF_00151 = AutoRecover Frozen Kerbals at KSC + #autoLOC_DF_00152 = If on, will AutoRecover Frozen Kerbals at the KSC\n and deduct the Cost from your funds + #autoLOC_DF_00153 = Cost to Thaw a Kerbal at KSC + #autoLOC_DF_00154 = Amt of currency Reqd to Freeze a Kerbal from the KSC + #autoLOC_DF_00155 = EC Reqd to Freeze/Thaw a Kerbal + #autoLOC_DF_00156 = Amt of ElecCharge Reqd to Freeze/Thaw a Kerbal. + #autoLOC_DF_00157 = Glykerol Reqd to Freeze a Kerbal + #autoLOC_DF_00158 = Amt of Glykerol used to Freeze a Kerbal,\nOverrides Part values. + #autoLOC_DF_00159 = DeepFreeze Temperatures + #autoLOC_DF_00160 = Get your calculator out. + #autoLOC_DF_00161 = Temps are in (K)elvin. (K) = (C)elcius + 273.15. (K) = ((F)arenheit + 459.67) × 5/9. Get your calculator out + #autoLOC_DF_00162 = Regulated Temperatures Required + #autoLOC_DF_00163 = If on, Regulated Temps apply to freeze\nand keep Kerbals Frozen. + #autoLOC_DF_00164 = Min. Temp. for Freezer to Freeze(K) + #autoLOC_DF_00165 = The minimum temperature (in Kelvin) for a Freezer\nto be able to Freeze a Kerbal. + #autoLOC_DF_00166 = Max. Temp. to keep Kerbals Frozen(K) + #autoLOC_DF_00167 = The maximum temperature (in Kelvin) for a Freezer\nto keep Kerbals frozen. + #autoLOC_DF_00168 = Heat generated per kerbal (kW/min) + #autoLOC_DF_00169 = Amount of thermal heat (kW) generated\nby equipment for each frozen kerbal per minute. + #autoLOC_DF_00170 = Heat generated freezer process(kW) + #autoLOC_DF_00171 = Amount of thermal heat (kW) generated\nwith each thaw/freeze process. + #autoLOC_DF_00172 = Show Part Temperatures in Kelvin + #autoLOC_DF_00173 = If on Part right click will show temp in Kelvin,\nif Off will show in Celcius. + #autoLOC_DF_00174 = DeepFreeze Misc. + #autoLOC_DF_00175 = Freezer Strip Lights On + #autoLOC_DF_00176 = Turn off if you do not want the internal\nfreezer strip lights to function. + #autoLOC_DF_00177 = ToolTips On + #autoLOC_DF_00178 = Turn the Tooltips on and off. + #autoLOC_DF_00179 = Editor Filter + #autoLOC_DF_00180 = Turn the DeepFreeze Editor filter Category on and off. + #autoLOC_DF_00181 = Use Stock App Launcher Icon + #autoLOC_DF_00182 = If on, the Stock Application launcher will be used,\nif off will use Blizzy Toolbar if installed. + #autoLOC_DF_00183 = Extra Debug Logging + #autoLOC_DF_00184 = Turn this On to capture lots of extra information\ninto the KSP log for reporting a problem. + + #autoLOC_DF_00185 = CRY-0300 Cryonic Freezing Chamber + #autoLOC_DF_00186 = REPOSoftTech + #autoLOC_DF_00187 = Designed for long term storage of 1 kerbal. The CRY-0300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300 comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00188 = deepfreeze cryogenic freezer + #autoLOC_DF_00189 = CRY-0300R Cryonic Freezing Chamber + #autoLOC_DF_00190 = Designed for long term storage of 1 kerbal. The CRY-0300R uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300R comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300R also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00191 = CRY-1300 Cryonic Freezing Chamber + #autoLOC_DF_00192 = Designed for long term storage of up to 3 Kerbals. The CRY-1300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-1300 comes stocked with 15 units of Glykerol. CAUTION: The CRY-1300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00193 = CRY-2300 Cryonic Freezing Chamber + #autoLOC_DF_00194 = Designed for long term storage of up to 10 Kerbals. The CRY-2300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-2300 comes stocked with 50 units of Glykerol. CAUTION: The CRY-2300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. + #autoLOC_DF_00195 = RS-X20R Glykerol Container + #autoLOC_DF_00196 = The RS-X20R is a small-volume Radial Glykerol container, for all your Kerbal Freezing and Thawing needs. Brought to you by the good folks at REPOSoftTech. Warranty void if filled with Glykerol. + #autoLOC_DF_00197 = deepfreeze cryogenic freezer glykerol tank + + #autoLOC_DF_00198 = Experts in the field of cryogenics, ergonomics and electrical equipment, the kerbals at REPOSoftTech are trying hard to keep all space fairing kerbals alive and their missions successful. + + #autoLOC_DF_00199 = Freeze <<1>> + #autoLOC_DF_00200 = Thaw <<1>> + } +} + diff --git a/Distribution/GameData/REPOSoftTech/DeepFreeze/DeepFreezeContinued.version b/Distribution/GameData/REPOSoftTech/DeepFreeze/DeepFreezeContinued.version index 6f56655..677d3c8 100644 --- a/Distribution/GameData/REPOSoftTech/DeepFreeze/DeepFreezeContinued.version +++ b/Distribution/GameData/REPOSoftTech/DeepFreeze/DeepFreezeContinued.version @@ -2,8 +2,8 @@ "NAME":"DeepFreeze Continued...", "URL":"http://ksp-avc.cybutek.net/version.php?id=183", "DOWNLOAD":"http://spacedock.info/mod/142/DeepFreeze%20Continued...", -"VERSION":{"MAJOR":0,"MINOR":23,"PATCH":4,"BUILD":0}, -"KSP_VERSION":{"MAJOR":1,"MINOR":2,"PATCH":2}, -"KSP_VERSION_MIN":{"MAJOR":1,"MINOR":2,"PATCH":2}, -"KSP_VERSION_MAX":{"MAJOR":1,"MINOR":2,"PATCH":2} +"VERSION":{"MAJOR":0,"MINOR":23,"PATCH":5,"BUILD":0}, +"KSP_VERSION":{"MAJOR":1,"MINOR":3,"PATCH":0), +"KSP_VERSION_MIN":{"MAJOR":1,"MINOR":3,"PATCH":0}, +"KSP_VERSION_MAX":{"MAJOR":1,"MINOR":3,"PATCH":0} } \ No newline at end of file diff --git a/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY0300Freezer.cfg b/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY0300Freezer.cfg index 339c60f..4df8de6 100644 --- a/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY0300Freezer.cfg +++ b/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY0300Freezer.cfg @@ -20,12 +20,9 @@ PART cost = 4000 category = Utility subcategory = 0 - title = CRY-0300 Cryonic Freezing Chamber - manufacturer = REPOSoftTech - description = Designed for long term storage of 1 kerbal. The CRY-0300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. -Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300 comes stocked with 10 units of Glykerol. -CAUTION: The CRY-0300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge -there is a risk of frozen Kerbals dying. + title = #autoLOC_DF_00185 //CRY-0300 Cryonic Freezing Chamber + manufacturer = #autoLOC_DF_00186 //REPOSoftTech + description = #autoLOC_DF_00187 //Designed for long term storage of 1 kerbal. The CRY-0300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300 comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. attachRules = 1,0,1,1,0 mass = 1.5 dragModelType = default @@ -37,7 +34,7 @@ there is a risk of frozen Kerbals dying. vesselType = Ship CrewCapacity = 1 bulkheadProfiles = size1 - tags = deepfreeze cryogenic freezer + tags = #autoLOC_DF_00188 //deepfreeze cryogenic freezer INTERNAL { name = Cry-0300Internals diff --git a/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY0300RFreezer.cfg b/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY0300RFreezer.cfg index 3b95118..1dc6e3b 100644 --- a/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY0300RFreezer.cfg +++ b/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY0300RFreezer.cfg @@ -34,12 +34,9 @@ PART cost = 4000 category = Utility subcategory = 0 - title = CRY-0300R Cryonic Freezing Chamber - manufacturer = REPOSoftTech - description = Designed for long term storage of 1 kerbal. The CRY-0300R uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. -Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300R comes stocked with 10 units of Glykerol. -CAUTION: The CRY-0300R also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge -there is a risk of frozen Kerbals dying. + title = #autoLOC_DF_00189 //CRY-0300R Cryonic Freezing Chamber + manufacturer = #autoLOC_DF_00186 //REPOSoftTech + description = #autoLOC_DF_00190 //Designed for long term storage of 1 kerbal. The CRY-0300R uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-0300R comes stocked with 10 units of Glykerol. CAUTION: The CRY-0300R also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. attachRules = 1,1,0,1,1 mass = 0.75 dragModelType = default @@ -51,7 +48,7 @@ there is a risk of frozen Kerbals dying. vesselType = Ship CrewCapacity = 1 bulkheadProfiles = size1 - tags = deepfreeze cryogenic freezer + tags = #autoLOC_DF_00188 //deepfreeze cryogenic freezer INTERNAL { diff --git a/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY1300Freezer.cfg b/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY1300Freezer.cfg index d95085e..9fb6bff 100644 --- a/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY1300Freezer.cfg +++ b/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY1300Freezer.cfg @@ -18,12 +18,9 @@ PART cost = 6000 category = Utility subcategory = 0 - title = CRY-1300 Cryonic Freezing Chamber - manufacturer = REPOSoftTech - description = Designed for long term storage of up to 3 Kerbals. The CRY-1300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. -Please ensure you have enough ElectricCharge capacity on your ship. The CRY-1300 comes stocked with 15 units of Glykerol. -CAUTION: The CRY-1300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge -there is a risk of frozen Kerbals dying. + title = #autoLOC_DF_00191 //CRY-1300 Cryonic Freezing Chamber + manufacturer = #autoLOC_DF_00186 //REPOSoftTech + description = #autoLOC_DF_00192 //Designed for long term storage of up to 3 Kerbals. The CRY-1300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-1300 comes stocked with 15 units of Glykerol. CAUTION: The CRY-1300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. attachRules = 1,0,1,1,0 mass = 2.5 dragModelType = default @@ -36,7 +33,7 @@ there is a risk of frozen Kerbals dying. maxTemp = 2000 // = 2900 vesselType = Ship bulkheadProfiles = size2 - tags = deepfreeze cryogenic freezer + tags = #autoLOC_DF_00188 //deepfreeze cryogenic freezer INTERNAL { diff --git a/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY2300Freezer.cfg b/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY2300Freezer.cfg index 7a03e9b..81e2b91 100644 --- a/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY2300Freezer.cfg +++ b/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/CRY2300Freezer.cfg @@ -19,13 +19,9 @@ PART cost = 8000 category = Utility subcategory = 0 - title = CRY-2300 Cryonic Freezing Chamber - manufacturer = REPOSoftTech - description = Designed for long term storage of up to 10 Kerbals. The CRY-2300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. -Please ensure you have enough ElectricCharge capacity on your ship. The CRY-2300 comes stocked with 50 units of Glykerol. -CAUTION: The CRY-2300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge -there is a risk of frozen Kerbals dying. - + title = #autoLOC_DF_00193 //CRY-2300 Cryonic Freezing Chamber + manufacturer = #autoLOC_DF_00186 //REPOSoftTech + description = #autoLOC_DF_00194 //Designed for long term storage of up to 10 Kerbals. The CRY-2300 uses Glykerol and ElectricCharge to freeze or thaw one Kerbal. Please ensure you have enough ElectricCharge capacity on your ship. The CRY-2300 comes stocked with 50 units of Glykerol. CAUTION: The CRY-2300 also requires ElectricCharge per minute per Kerbal to keep it's Monitoring Systems Functioning. If it cannot get this ElectricCharge there is a risk of frozen Kerbals dying. attachRules = 1,0,1,1,0 mass = 5.25 @@ -40,7 +36,7 @@ there is a risk of frozen Kerbals dying. vesselType = Ship bulkheadProfiles = size2 - tags = deepfreeze cryogenic freezer + tags = #autoLOC_DF_00188 //deepfreeze cryogenic freezer INTERNAL { diff --git a/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/GlykerolRadialTank.cfg b/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/GlykerolRadialTank.cfg index bc03fda..3b63b3d 100644 --- a/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/GlykerolRadialTank.cfg +++ b/Distribution/GameData/REPOSoftTech/DeepFreeze/Parts/GlykerolRadialTank.cfg @@ -15,9 +15,9 @@ PART cost = 500 category = FuelTank subcategory = 0 - title = RS-X20R Glykerol Container - manufacturer = REPOSoftTech - description = The RS-X20R is a small-volume Radial Glykerol container, for all your Kerbal Freezing and Thawing needs. Brought to you by the good folks at REPOSoftTech. Warranty void if filled with Glykerol. + title = #autoLOC_DF_00195 //RS-X20R Glykerol Container + manufacturer = #autoLOC_DF_00186 //REPOSoftTech + description = #autoLOC_DF_00196 //The RS-X20R is a small-volume Radial Glykerol container, for all your Kerbal Freezing and Thawing needs. Brought to you by the good folks at REPOSoftTech. Warranty void if filled with Glykerol. attachRules = 0,1,0,0,1 mass = 0.03143 dragModelType = default @@ -27,7 +27,7 @@ PART crashTolerance = 12 maxTemp = 2000 // = 2900 bulkheadProfiles = srf - tags = deepfreeze cryogenic freezer glykerol tank + tags = #autoLOC_DF_00197 //deepfreeze cryogenic freezer glykerol tank RESOURCE { name = Glykerol diff --git a/Source/DFEditorFilter.cs b/Source/DFEditorFilter.cs index 9ea2bdc..466dad6 100644 --- a/Source/DFEditorFilter.cs +++ b/Source/DFEditorFilter.cs @@ -19,6 +19,7 @@ using KSP.UI.Screens; using RUI.Icons.Selectable; using UnityEngine; +using KSP.Localization; namespace DF { @@ -30,9 +31,8 @@ public class DFEditorFilter : MonoBehaviour // and the GlykerolTankRadial. private static List avPartItems = new List(); public static DFEditorFilter Instance; - internal string category = "Filter by Function"; - internal string subCategoryTitle = "DeepFreeze Items"; - internal string defaultTitle = "DF"; + internal string category = "Filter by function"; + internal string subCategoryTitle = "DeepFreeze Items"; //internal string iconName = "R&D_node_icon_evatech"; //create and the icons @@ -156,7 +156,7 @@ private void SubCategories() RemoveSubFilter(); Icon filterDeepFreeze = new Icon("DeepFreezeEditor", Textures.DeepFreeze_Editor, Textures.DeepFreeze_Editor, true); PartCategorizer.Category Filter = PartCategorizer.Instance.filters.Find(f => f.button.categoryName == category); - PartCategorizer.AddCustomSubcategoryFilter(Filter, subCategoryTitle, filterDeepFreeze, p => EditorItemsFilter(p)); + PartCategorizer.AddCustomSubcategoryFilter(Filter, subCategoryTitle, Localizer.Format("#autoLOC_DF_00107"), filterDeepFreeze, p => EditorItemsFilter(p)); } } } \ No newline at end of file diff --git a/Source/DFIntMemory.cs b/Source/DFIntMemory.cs index 8f26187..0eb431e 100644 --- a/Source/DFIntMemory.cs +++ b/Source/DFIntMemory.cs @@ -21,6 +21,7 @@ using PreFlightTests; using RSTUtils; using UnityEngine; +using KSP.Localization; namespace DF { @@ -313,7 +314,7 @@ private void Update() // Set Top Left messages for FreezerCam mode // See if there is a kerbal seated/frozen in that seat get their reference - IVAkerbalPod = new ScreenMessage("Pod:" + ActFrzrCams[lastFrzrCam].FrzrCamSeatIndex, 1, ScreenMessageStyle.UPPER_LEFT); + IVAkerbalPod = new ScreenMessage(Localizer.Format("autoLOC_DF_00071", ActFrzrCams[lastFrzrCam].FrzrCamSeatIndex), 1, ScreenMessageStyle.UPPER_LEFT); //autoLOC_DF_00071 = Pod:<<1>> IVAkerbalPod.color = Color.white; ScreenMessages.PostScreenMessage(IVAkerbalPod); IVAkerbalPart = new ScreenMessage(ActFrzrCams[lastFrzrCam].FrzrCamPartName, 1, ScreenMessageStyle.UPPER_LEFT); @@ -1120,7 +1121,7 @@ private void KAC_onAlarmStateChanged(KACWrapper.KACAPI.AlarmStateChangedEventArg private void SwitchVslAlarmMsg(string vesselname) { - ScreenMessages.PostScreenMessage("A DeepFreeze Alarm event has occurred. Please Switch to " + vesselname + " to execute.", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00109", vesselname), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00109 = A DeepFreeze Alarm event has occurred. Please Switch to <<1>> to execute. } private void CheckKACAlarmsUpdate() @@ -1158,7 +1159,7 @@ private void CheckKACAlarmsUpdate() { // we are all done. Delete the alarm. Do a message. Utilities.Log_Debug("Execution of alarm for vessel " + entry.Value.Name + " is complete"); - ScreenMessages.PostScreenMessage("DeepFreeze Alarm processing completed.", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00110"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00110 = DeepFreeze Alarm processing completed. alarmstoDelete.Add(entry.Key); continue; } diff --git a/Source/DeepFreeze.cs b/Source/DeepFreeze.cs index b0f30d3..25ba00b 100644 --- a/Source/DeepFreeze.cs +++ b/Source/DeepFreeze.cs @@ -21,7 +21,8 @@ using System.Linq; using System.Reflection; using RSTUtils; -using UnityEngine; +using UnityEngine; +using KSP.Localization; namespace DF { @@ -237,7 +238,7 @@ protected void onVesselRecovered(ProtoVessel vessel, bool notSureWhatFor) realkerbal.type = ProtoCrewMember.KerbalType.Unowned; realkerbal.rosterStatus = ProtoCrewMember.RosterStatus.Dead; Utilities.Log_Debug("Kerbal " + realkerbal.name + " " + realkerbal.type + " " + realkerbal.rosterStatus); - ScreenMessages.PostScreenMessage(key + " was stored frozen at KSC", 5.0f, ScreenMessageStyle.UPPER_LEFT); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00049", key), 5.0f, ScreenMessageStyle.UPPER_LEFT); } } } @@ -338,7 +339,7 @@ internal void ThawFrozenCrew(String FrozenCrew, Guid vesselID) else { Utilities.Log("Not enough funds to thaw kerbal"); - ScreenMessages.PostScreenMessage("Insufficient funds to thaw " + kerbal.name + " at this time", 5.0f, ScreenMessageStyle.UPPER_LEFT); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00050", kerbal.name), 5.0f, ScreenMessageStyle.UPPER_LEFT); return; } } @@ -350,18 +351,18 @@ internal void ThawFrozenCrew(String FrozenCrew, Guid vesselID) Utilities.Log_Debug("Kerbal " + kerbal.name + " " + kerbal.type + " " + kerbal.rosterStatus); if (!fundstaken) { - ScreenMessages.PostScreenMessage(kerbal.name + " was found and thawed out", 5.0f, ScreenMessageStyle.UPPER_LEFT); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00051", kerbal.name), 5.0f, ScreenMessageStyle.UPPER_LEFT); } else { - ScreenMessages.PostScreenMessage(kerbal.name + " was found and thawed out " + DFsettings.KSCcostToThawKerbal.ToString("########0") + " funds deducted from account", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00052", kerbal.name, DFsettings.KSCcostToThawKerbal.ToString("########0")), 5.0f, ScreenMessageStyle.UPPER_CENTER); } DFgameSettings.KnownFrozenKerbals.Remove(kerbal.name); } else { Utilities.Log("Cannot thaw, vessel still exists " + vessel.situation + " at " + vessel.mainBody.bodyName); - ScreenMessages.PostScreenMessage("Cannot thaw " + kerbal.name + " vessel still exists " + vessel.situation + " at " + vessel.mainBody.bodyName, 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00053", kerbal.name, vessel.SituationString, vessel.mainBody.displayName), 5.0f, ScreenMessageStyle.UPPER_CENTER); } } } @@ -421,12 +422,12 @@ internal bool setComatoseKerbal(Part part, ProtoCrewMember crew, ProtoCrewMember crew.RegisterExperienceTraits(part); DFGameEvents.onKerbalUnSetComatose.Fire(part, crew); ScreenMessages.PostScreenMessage( - crew.name + " has recovered from emergency thaw and resumed normal duties.", 5.0f, + Localizer.Format("#autoLOC_DF_00001", crew.name), 5.0f, ScreenMessageStyle.UPPER_CENTER); } else { - ScreenMessages.PostScreenMessage(crew.name + " has been emergency thawed and cannot perform duties for " + Instance.DFsettings.comatoseTime / 60 + " minutes.", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00002", crew.name, Instance.DFsettings.comatoseTime / 60), 5.0f, ScreenMessageStyle.UPPER_CENTER); } return true; diff --git a/Source/DeepFreeze.csproj b/Source/DeepFreeze.csproj index c02ab36..11efb5c 100644 --- a/Source/DeepFreeze.csproj +++ b/Source/DeepFreeze.csproj @@ -36,9 +36,9 @@ OnOutputUpdated - + False - ..\..\KSPDLLs - 1.2\Assembly-CSharp.dll + ..\..\KSPDLLs - 1.3\Assembly-CSharp.dll @@ -48,11 +48,11 @@ False - ..\..\KSPDLLs - 1.2\UnityEngine.dll + ..\..\KSPDLLs - 1.3\UnityEngine.dll False - ..\..\KSPDLLs - 1.2\UnityEngine.UI.dll + ..\..\KSPDLLs - 1.3\UnityEngine.UI.dll diff --git a/Source/DeepFreezeGUI.cs b/Source/DeepFreezeGUI.cs index 3638536..69d98e6 100644 --- a/Source/DeepFreezeGUI.cs +++ b/Source/DeepFreezeGUI.cs @@ -18,12 +18,11 @@ using System; using System.Collections.Generic; using System.Linq; -//using System.Text.RegularExpressions; using RSTUtils; using UnityEngine; -//using Random = System.Random; using KSP.UI.Screens; using RSTUtils.Extensions; +using KSP.Localization; namespace DF { @@ -92,7 +91,163 @@ internal class DeepFreezeGUI : MonoBehaviour, Savable public bool Useapplauncher; private double currentTime; - + + #region Cache Strings + + private static string cacheautoLOC_DF_00003; + private static string cacheautoLOC_DF_00004; + private static string cacheautoLOC_DF_00005; + private static string cacheautoLOC_DF_00006; + private static string cacheautoLOC_DF_00007; + private static string cacheautoLOC_DF_00008; + private static string cacheautoLOC_DF_00009; + private static string cacheautoLOC_DF_00010; + private static string cacheautoLOC_DF_00011; + private static string cacheautoLOC_DF_00012; + private static string cacheautoLOC_DF_00013; + private static string cacheautoLOC_DF_00014; + private static string cacheautoLOC_DF_00015; + private static string cacheautoLOC_DF_00016; + private static string cacheautoLOC_DF_00017; + private static string cacheautoLOC_DF_00018; + private static string cacheautoLOC_DF_00019; + private static string cacheautoLOC_DF_00020; + private static string cacheautoLOC_DF_00021; + private static string cacheautoLOC_DF_00022; + private static string cacheautoLOC_DF_00023; + private static string cacheautoLOC_DF_00024; + private static string cacheautoLOC_DF_00026; + private static string cacheautoLOC_DF_00027; + private static string cacheautoLOC_DF_00028; + private static string cacheautoLOC_DF_00030; + private static string cacheautoLOC_DF_00032; + private static string cacheautoLOC_DF_00033; + private static string cacheautoLOC_DF_00034; + private static string cacheautoLOC_DF_00035; + private static string cacheautoLOC_DF_00036; + private static string cacheautoLOC_DF_00037; + private static string cacheautoLOC_DF_00038; + private static string cacheautoLOC_DF_00039; + private static string cacheautoLOC_DF_00040; + private static string cacheautoLOC_DF_00041; + private static string cacheautoLOC_DF_00043; + private static string cacheautoLOC_DF_00044; + private static string cacheautoLOC_DF_00045; + private static string cacheautoLOC_DF_00046; + private static string cacheautoLOC_DF_00111; + private static string cacheautoLOC_DF_00112; + private static string cacheautoLOC_DF_00113; + private static string cacheautoLOC_DF_00114; + private static string cacheautoLOC_DF_00115; + private static string cacheautoLOC_DF_00116; + private static string cacheautoLOC_DF_00117; + private static string cacheautoLOC_DF_00118; + private static string cacheautoLOC_DF_00119; + private static string cacheautoLOC_DF_00120; + private static string cacheautoLOC_DF_00121; + private static string cacheautoLOC_DF_00122; + private static string cacheautoLOC_DF_00123; + private static string cacheautoLOC_DF_00124; + private static string cacheautoLOC_DF_00125; + private static string cacheautoLOC_DF_00126; + private static string cacheautoLOC_DF_00127; + private static string cacheautoLOC_DF_00128; + private static string cacheautoLOC_DF_00129; + private static string cacheautoLOC_DF_00130; + private static string cacheautoLOC_DF_00131; + private static string cacheautoLOC_DF_00132; + private static string cacheautoLOC_DF_00133; + private static string cacheautoLOC_DF_00134; + private static string cacheautoLOC_DF_00135; + private static string cacheautoLOC_DF_00136; + private static string cacheautoLOC_DF_00137; + private static string cacheautoLOC_DF_00138; + private static string cacheautoLOC_DF_00139; + private static string cacheautoLOC_DF_00140; + private static string cacheautoLOC_DF_00141; + private static string cacheautoLOC_DF_00142; + private static string cacheautoLOC_DF_00143; + + + private static void CacheLocalStrings() + { + cacheautoLOC_DF_00003 = Localizer.Format("#autoLOC_DF_00003"); //#autoLOC_DF_00003 = DeepFreeze + cacheautoLOC_DF_00009 = Localizer.Format("#autoLOC_DF_00004"); + cacheautoLOC_DF_00009 = Localizer.Format("#autoLOC_DF_00005"); + cacheautoLOC_DF_00009 = Localizer.Format("#autoLOC_DF_00006"); + cacheautoLOC_DF_00009 = Localizer.Format("#autoLOC_DF_00007"); + cacheautoLOC_DF_00008 = Localizer.Format("#autoLOC_DF_00008"); //#autoLOC_DF_00008 = Close Window + cacheautoLOC_DF_00009 = Localizer.Format("#autoLOC_DF_00009"); + cacheautoLOC_DF_00010 = Localizer.Format("#autoLOC_DF_00010"); + cacheautoLOC_DF_00011 = Localizer.Format("#autoLOC_DF_00011"); + cacheautoLOC_DF_00012 = Localizer.Format("#autoLOC_DF_00012"); + cacheautoLOC_DF_00013 = Localizer.Format("#autoLOC_DF_00013"); + cacheautoLOC_DF_00014 = Localizer.Format("#autoLOC_DF_00014"); + cacheautoLOC_DF_00015 = Localizer.Format("#autoLOC_DF_00015"); + cacheautoLOC_DF_00016 = Localizer.Format("#autoLOC_DF_00016"); + cacheautoLOC_DF_00017 = Localizer.Format("#autoLOC_DF_00017"); + cacheautoLOC_DF_00018 = Localizer.Format("#autoLOC_DF_00018"); + cacheautoLOC_DF_00019 = Localizer.Format("#autoLOC_DF_00019"); + cacheautoLOC_DF_00020 = Localizer.Format("#autoLOC_DF_00020"); + cacheautoLOC_DF_00021 = Localizer.Format("#autoLOC_DF_00021"); + cacheautoLOC_DF_00022 = Localizer.Format("#autoLOC_DF_00022"); + cacheautoLOC_DF_00023 = Localizer.Format("#autoLOC_DF_00023"); + cacheautoLOC_DF_00024 = Localizer.Format("#autoLOC_DF_00024"); + cacheautoLOC_DF_00026 = Localizer.Format("#autoLOC_DF_00026"); + cacheautoLOC_DF_00027 = Localizer.Format("#autoLOC_DF_00027"); + cacheautoLOC_DF_00028 = Localizer.Format("#autoLOC_DF_00028"); + cacheautoLOC_DF_00030 = Localizer.Format("#autoLOC_DF_00029"); + cacheautoLOC_DF_00032 = Localizer.Format("#autoLOC_DF_00032"); + cacheautoLOC_DF_00033 = Localizer.Format("#autoLOC_DF_00033"); + cacheautoLOC_DF_00034 = Localizer.Format("#autoLOC_DF_00034"); + cacheautoLOC_DF_00035 = Localizer.Format("#autoLOC_DF_00035"); + cacheautoLOC_DF_00036 = Localizer.Format("#autoLOC_DF_00036"); + cacheautoLOC_DF_00037 = Localizer.Format("#autoLOC_DF_00037"); + cacheautoLOC_DF_00038 = Localizer.Format("#autoLOC_DF_00038"); + cacheautoLOC_DF_00039 = Localizer.Format("#autoLOC_DF_00039"); + cacheautoLOC_DF_00040 = Localizer.Format("#autoLOC_DF_00040"); + cacheautoLOC_DF_00041 = Localizer.Format("#autoLOC_DF_00041"); + cacheautoLOC_DF_00043 = Localizer.Format("#autoLOC_DF_00043"); + cacheautoLOC_DF_00044 = Localizer.Format("#autoLOC_DF_00044"); + cacheautoLOC_DF_00045 = Localizer.Format("#autoLOC_DF_00045"); + cacheautoLOC_DF_00046 = Localizer.Format("#autoLOC_DF_00046"); + cacheautoLOC_DF_00111 = Localizer.Format("#autoLOC_DF_00111"); + cacheautoLOC_DF_00112 = Localizer.Format("#autoLOC_DF_00112"); + cacheautoLOC_DF_00113 = Localizer.Format("#autoLOC_DF_00113"); + cacheautoLOC_DF_00114 = Localizer.Format("#autoLOC_DF_00114"); + cacheautoLOC_DF_00115 = Localizer.Format("#autoLOC_DF_00115"); + cacheautoLOC_DF_00116 = Localizer.Format("#autoLOC_DF_00116"); + cacheautoLOC_DF_00117 = Localizer.Format("#autoLOC_DF_00117"); + cacheautoLOC_DF_00118 = Localizer.Format("#autoLOC_DF_00118"); + cacheautoLOC_DF_00119 = Localizer.Format("#autoLOC_DF_00119"); + cacheautoLOC_DF_00120 = Localizer.Format("#autoLOC_DF_00120"); + cacheautoLOC_DF_00121 = Localizer.Format("#autoLOC_DF_00121"); + cacheautoLOC_DF_00122 = Localizer.Format("#autoLOC_DF_00122"); + cacheautoLOC_DF_00123 = Localizer.Format("#autoLOC_DF_00123"); + cacheautoLOC_DF_00124 = Localizer.Format("#autoLOC_DF_00124"); + cacheautoLOC_DF_00125 = Localizer.Format("#autoLOC_DF_00125"); + cacheautoLOC_DF_00126 = Localizer.Format("#autoLOC_DF_00126"); + cacheautoLOC_DF_00127 = Localizer.Format("#autoLOC_DF_00127"); + cacheautoLOC_DF_00128 = Localizer.Format("#autoLOC_DF_00128"); + cacheautoLOC_DF_00129 = Localizer.Format("#autoLOC_DF_00129"); + cacheautoLOC_DF_00130 = Localizer.Format("#autoLOC_DF_00130"); + cacheautoLOC_DF_00131 = Localizer.Format("#autoLOC_DF_00131"); + cacheautoLOC_DF_00132 = Localizer.Format("#autoLOC_DF_00132"); + cacheautoLOC_DF_00133 = Localizer.Format("#autoLOC_DF_00133"); + cacheautoLOC_DF_00134 = Localizer.Format("#autoLOC_DF_00134"); + cacheautoLOC_DF_00135 = Localizer.Format("#autoLOC_DF_00135"); + cacheautoLOC_DF_00136 = Localizer.Format("#autoLOC_DF_00136"); + cacheautoLOC_DF_00137 = Localizer.Format("#autoLOC_DF_00137"); + cacheautoLOC_DF_00138 = Localizer.Format("#autoLOC_DF_00138"); + cacheautoLOC_DF_00139 = Localizer.Format("#autoLOC_DF_00139"); + cacheautoLOC_DF_00140 = Localizer.Format("#autoLOC_DF_00140"); + cacheautoLOC_DF_00141 = Localizer.Format("#autoLOC_DF_00141"); + cacheautoLOC_DF_00142 = Localizer.Format("#autoLOC_DF_00142"); + cacheautoLOC_DF_00143 = Localizer.Format("#autoLOC_DF_00143"); + } + + #endregion + internal void OnDestroy() { DFMenuAppLToolBar.Destroy(); @@ -101,6 +256,7 @@ internal void OnDestroy() internal void Start() { Utilities.Log_Debug("DeepFreezeGUI startup"); + CacheLocalStrings(); windowID = Utilities.getnextrandomInt(); KACwindowID = Utilities.getnextrandomInt(); VSwindowID = Utilities.getnextrandomInt(); @@ -134,7 +290,7 @@ internal void Start() Utilities.setScaledScreen(); - DFMenuAppLToolBar = new AppLauncherToolBar("DeepFreeze", "DeepFreeze", + DFMenuAppLToolBar = new AppLauncherToolBar("DeepFreeze", cacheautoLOC_DF_00003, "REPOSoftTech/DeepFreeze/Icons/DFtoolbar", ApplicationLauncher.AppScenes.SPACECENTER | ApplicationLauncher.AppScenes.FLIGHT | ApplicationLauncher.AppScenes.MAPVIEW | ApplicationLauncher.AppScenes.SPH | ApplicationLauncher.AppScenes.VAB | @@ -234,13 +390,13 @@ private void OnGUI() { DFVSwindowPos.ClampToScreen(); - DFVSwindowPos = GUILayout.Window(VSwindowID, DFVSwindowPos, windowVS, "DeepFreeze Vessel Switch", GUILayout.ExpandWidth(false), + DFVSwindowPos = GUILayout.Window(VSwindowID, DFVSwindowPos, windowVS, cacheautoLOC_DF_00004, GUILayout.ExpandWidth(false), GUILayout.ExpandHeight(true), GUILayout.Width(320), GUILayout.MinHeight(100)); } if (showUnabletoSwitchVessel && !switchVesselManual) { DFVSFwindowPos.ClampToScreen(); - DFVSFwindowPos = GUILayout.Window(VSFwindowID, DFVSFwindowPos, windowVSF, "DeepFreeze Vessel Switch Failed", GUILayout.ExpandWidth(false), + DFVSFwindowPos = GUILayout.Window(VSFwindowID, DFVSFwindowPos, windowVSF, cacheautoLOC_DF_00005, GUILayout.ExpandWidth(false), GUILayout.ExpandHeight(true), GUILayout.Width(320), GUILayout.MinHeight(100)); } if (switchVesselManual) @@ -259,13 +415,13 @@ private void OnGUI() { GUI.skin = HighLogic.Skin; DFwindowPos.ClampInsideScreen(); - DFwindowPos = GUILayout.Window(windowID, DFwindowPos, windowDF, "DeepFreeze Kerbals", GUILayout.ExpandWidth(true), + DFwindowPos = GUILayout.Window(windowID, DFwindowPos, windowDF, cacheautoLOC_DF_00006, GUILayout.ExpandWidth(true), GUILayout.ExpandHeight(true), GUILayout.MinWidth(200), GUILayout.MinHeight(250)); if (showKACGUI) { DFKACwindowPos.ClampInsideScreen(); - DFKACwindowPos = GUILayout.Window(KACwindowID, DFKACwindowPos, windowKAC, "DeepFreeze Alarms", GUILayout.ExpandWidth(true), + DFKACwindowPos = GUILayout.Window(KACwindowID, DFKACwindowPos, windowKAC, cacheautoLOC_DF_00007, GUILayout.ExpandWidth(true), GUILayout.ExpandHeight(true), GUILayout.MinWidth(360), GUILayout.MinHeight(150)); } } @@ -273,10 +429,10 @@ private void OnGUI() if (DeepFreeze.Instance.DFsettings.ToolTips) Utilities.DrawToolTip(); } - + private void windowDF(int id) { - GUIContent closeContent = new GUIContent(Textures.BtnRedCross, "Close Window"); + GUIContent closeContent = new GUIContent(Textures.BtnRedCross, cacheautoLOC_DF_00008); //"Close Window" Rect closeRect = new Rect(DFwindowPos.width - 21, 4, 16, 16); if (GUI.Button(closeRect, closeContent, Textures.ClosebtnStyle)) { @@ -287,16 +443,16 @@ private void windowDF(int id) GUIscrollViewVector2 = GUILayout.BeginScrollView(GUIscrollViewVector2, false, false, GUILayout.MaxHeight(140f)); GUILayout.BeginVertical(); GUILayout.BeginHorizontal(); - GUILayout.Label(new GUIContent("Vessel","Vessel Name"), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslWdthName)); - GUILayout.Label(new GUIContent("Part", "Part Name"), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslPrtName)); - GUILayout.Label(new GUIContent("Tmp", "Part Temperature Status"), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslPrtTmp)); - GUILayout.Label(new GUIContent("EC", "Electric Charge Status"), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslPrtElec)); + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00009, cacheautoLOC_DF_00010), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslWdthName)); //"Vessel","Vessel Name" + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00011, cacheautoLOC_DF_00012), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslPrtName)); //"Part", "Part Name" + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00013, cacheautoLOC_DF_00014), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslPrtTmp)); //"Tmp", "Part Temperature Status" + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00015, cacheautoLOC_DF_00016), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslPrtElec)); //"EC", "Electric Charge Status" if (DFInstalledMods.IsRTInstalled) - GUILayout.Label(new GUIContent("R.T", "Remote Tech Status"), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslRT)); - GUILayout.Label(new GUIContent("Alarms", "Press the button for Kerbal Alarm Clock Alarms assigned to this part"), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslAlarms)); - GUILayout.Label(new GUIContent("LastUpd", "The Time the part was last updated"), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslLstUpd)); + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00017, cacheautoLOC_DF_00018), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslRT)); //"R.T", "Remote Tech Status" + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00019, cacheautoLOC_DF_00020), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslAlarms)); //"Alarms", "Press the button for Kerbal Alarm Clock Alarms assigned to this part" + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00021, cacheautoLOC_DF_00022), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslLstUpd)); //"LastUpd", "The Time the part was last updated" if (DeepFreeze.Instance.DFsettings.ECreqdForFreezer) - GUILayout.Label(new GUIContent("TimeRem", "Approx. time remaining before Electric Charge will run out"), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslLstUpd)); + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00023, cacheautoLOC_DF_00024), Textures.sectionTitleLeftStyle, GUILayout.Width(DFvslLstUpd)); //"TimeRem", "Approx. time remaining before Electric Charge will run out" GUILayout.EndHorizontal(); foreach (KeyValuePair frzr in DeepFreeze.Instance.DFgameSettings.knownFreezerParts) { @@ -312,11 +468,11 @@ private void windowDF(int id) string TempVar; if (DeepFreeze.Instance.DFsettings.TempinKelvin) { - TempVar = frzr.Value.cabinTemp.ToString("###0") + "K"; + TempVar = Localizer.Format("#autoLOC_DF_00047", frzr.Value.cabinTemp.ToString("###0")); //"K" } else { - TempVar = Utilities.KelvintoCelsius(frzr.Value.cabinTemp).ToString("###0") + "C"; + TempVar = Localizer.Format("#autoLOC_DF_00048", Utilities.KelvintoCelsius(frzr.Value.cabinTemp).ToString("###0")); //"C" } if (DeepFreeze.Instance.DFsettings.RegTempReqd && !chgECHeatsettings) @@ -337,7 +493,7 @@ private void windowDF(int id) { GUILayout.Label(TempVar, Textures.StatusRedStyle, GUILayout.Width(DFvslPrtTmp)); switchVessel = FlightGlobals.Vessels.Find(a => a.id == frzr.Value.vesselID); - showSwitchVesselStr = "Vessel " + switchVessel.vesselName + " is Over-Heating."; + showSwitchVesselStr = Localizer.Format("#autoLOC_DF_00025", switchVessel.vesselName); //Vessel <<1>> is Over-Heating. if (HighLogic.LoadedSceneIsFlight) { if (FlightGlobals.ActiveVessel.id != frzr.Value.vesselID && !switchVesselManual) @@ -351,22 +507,22 @@ private void windowDF(int id) } else { - GUILayout.Label("OFF", Textures.StatusGrayStyle, GUILayout.Width(DFvslPrtTmp)); + GUILayout.Label(cacheautoLOC_DF_00026, Textures.StatusGrayStyle, GUILayout.Width(DFvslPrtTmp)); //"OFF" } if (DeepFreeze.Instance.DFsettings.ECreqdForFreezer && !chgECHeatsettings) { if (frzr.Value.numFrznCrew == 0) { - GUILayout.Label("S/BY", Textures.StatusOKStyle, GUILayout.Width(DFvslPrtElec)); + GUILayout.Label(cacheautoLOC_DF_00027, Textures.StatusOKStyle, GUILayout.Width(DFvslPrtElec)); //"S/BY" } else { if (frzr.Value.outofEC) { - GUILayout.Label("OUT", Textures.StatusRedStyle, GUILayout.Width(DFvslPrtElec)); + GUILayout.Label(cacheautoLOC_DF_00028, Textures.StatusRedStyle, GUILayout.Width(DFvslPrtElec)); //"OUT" switchVessel = FlightGlobals.Vessels.Find(a => a.id == frzr.Value.vesselID); - showSwitchVesselStr = "Vessel " + switchVessel.vesselName + " is out of ElectricCharge.\n Situation Critical."; + showSwitchVesselStr = Localizer.Format("#autoLOC_DF_00029", switchVessel.vesselName); //Vesssel <<1>> is out of ElectricCharge.\n Situation Critical. if (HighLogic.LoadedSceneIsFlight) { if (FlightGlobals.ActiveVessel.id != frzr.Value.vesselID && !switchVesselManual) @@ -379,9 +535,9 @@ private void windowDF(int id) { if (vsl.predictedECOut < DeepFreeze.Instance.DFsettings.EClowCriticalTime) { - GUILayout.Label("ALRT", Textures.StatusRedStyle, GUILayout.Width(DFvslPrtElec)); + GUILayout.Label(cacheautoLOC_DF_00030, Textures.StatusRedStyle, GUILayout.Width(DFvslPrtElec)); //"ALRT" switchVessel = FlightGlobals.Vessels.Find(a => a.id == frzr.Value.vesselID); - showSwitchVesselStr = "Vessel " + switchVessel.vesselName + " is almost out of ElectricCharge."; + showSwitchVesselStr = Localizer.Format("#autoLOC_DF_00031", switchVessel.vesselName); //Vessel <<1>> is almost out of ElectricCharge. if (HighLogic.LoadedSceneIsFlight) { if (FlightGlobals.ActiveVessel.id != frzr.Value.vesselID && !switchVesselManual) @@ -395,11 +551,11 @@ private void windowDF(int id) if (vsl.predictedECOut < DeepFreeze.Instance.DFsettings.ECLowWarningTime) // ONE HOUR OF EC WARNING { // Utilities.Log_Debug("Remaining EC time " + vsl.predictedECOut); - GUILayout.Label("LOW", Textures.StatusWarnStyle, GUILayout.Width(DFvslPrtElec)); + GUILayout.Label(cacheautoLOC_DF_00032, Textures.StatusWarnStyle, GUILayout.Width(DFvslPrtElec)); //"LOW" } else { - GUILayout.Label("OK", Textures.StatusOKStyle, GUILayout.Width(DFvslPrtElec)); + GUILayout.Label(cacheautoLOC_DF_00033, Textures.StatusOKStyle, GUILayout.Width(DFvslPrtElec)); //"OK" } } } @@ -407,18 +563,18 @@ private void windowDF(int id) } else { - GUILayout.Label("OFF", Textures.StatusGrayStyle, GUILayout.Width(DFvslPrtElec)); + GUILayout.Label(cacheautoLOC_DF_00026, Textures.StatusGrayStyle, GUILayout.Width(DFvslPrtElec)); //"OFF" } if (DFInstalledMods.IsRTInstalled) { if (DFInstalledMods.RTVesselConnected(frzr.Value.vesselID)) { - GUILayout.Label("OK", Textures.StatusOKStyle, GUILayout.Width(DFvslRT)); + GUILayout.Label(cacheautoLOC_DF_00033, Textures.StatusOKStyle, GUILayout.Width(DFvslRT)); //"OK" } else { - GUILayout.Label("NC", Textures.StatusRedStyle, GUILayout.Width(DFvslRT)); + GUILayout.Label(cacheautoLOC_DF_00034, Textures.StatusRedStyle, GUILayout.Width(DFvslRT)); //"NC" } } @@ -427,7 +583,7 @@ private void windowDF(int id) if (DeepFreeze.Instance.DFgameSettings.knownKACAlarms.Any(e => e.Value.VesselID == frzr.Value.vesselID)) { //GUILayout.Label("Active", StatusOKStyle, GUILayout.Width(DFvslAlarms)); - if (GUILayout.Button(new GUIContent("Alarm", "Go to Alarms"), GUILayout.Width(DFvslAlarms))) + if (GUILayout.Button(new GUIContent(cacheautoLOC_DF_00035, cacheautoLOC_DF_00036), GUILayout.Width(DFvslAlarms))) //"Alarm", "Go to Alarms" { showKACGUI = !showKACGUI; } @@ -526,16 +682,16 @@ private void windowDF(int id) if (DeepFreeze.Instance.DFgameSettings.KnownFrozenKerbals.Count == 0) { GUILayout.BeginHorizontal(); - GUILayout.Label("There are currently no Frozen Kerbals", Textures.frozenStyle); + GUILayout.Label(cacheautoLOC_DF_00037, Textures.frozenStyle); //"There are currently no Frozen Kerbals" GUILayout.EndHorizontal(); } else { Headers = true; GUILayout.BeginHorizontal(); - GUILayout.Label("Kerbal Name", Textures.sectionTitleLeftStyle, GUILayout.Width(DFtxtWdthName)); - GUILayout.Label("Profession", Textures.sectionTitleLeftStyle, GUILayout.Width(DFtxtWdthProf)); - GUILayout.Label("Vessel Name", Textures.sectionTitleLeftStyle, GUILayout.Width(DFtxtWdthVslN)); + GUILayout.Label(cacheautoLOC_DF_00038, Textures.sectionTitleLeftStyle, GUILayout.Width(DFtxtWdthName)); //"Kerbal Name" + GUILayout.Label(cacheautoLOC_DF_00039, Textures.sectionTitleLeftStyle, GUILayout.Width(DFtxtWdthProf)); //"Profession" + GUILayout.Label(cacheautoLOC_DF_00010, Textures.sectionTitleLeftStyle, GUILayout.Width(DFtxtWdthVslN)); //"Vessel Name" GUILayout.EndHorizontal(); List> ThawKeysToDelete = new List>(); foreach (KeyValuePair kerbal in DeepFreeze.Instance.DFgameSettings.KnownFrozenKerbals) @@ -559,7 +715,7 @@ private void windowDF(int id) { GUI.enabled = false; } - if (GUILayout.Button(new GUIContent("Thaw", "Thaw this Kerbal"), GUILayout.Width(50f))) + if (GUILayout.Button(new GUIContent(cacheautoLOC_DF_00040, cacheautoLOC_DF_00041), GUILayout.Width(50f))) //"Thaw", "Thaw this Kerbal" { DeepFreezer frzr = DFIntMemory.Instance.DpFrzrActVsl.FirstOrDefault(a => a.part.flightID == kerbal.Value.partID); if (frzr != null) @@ -571,14 +727,14 @@ private void windowDF(int id) } if (HighLogic.LoadedScene == GameScenes.SPACECENTER) { - if (GUILayout.Button(new GUIContent("Thaw", "Thaw this Kerbal"), GUILayout.Width(50f))) + if (GUILayout.Button(new GUIContent(cacheautoLOC_DF_00040, cacheautoLOC_DF_00041), GUILayout.Width(50f))) //"Thaw", "Thaw this Kerbal" { // We need to check kerbal isn't in a vessel still out there somewhere.... Vessel vessel = FlightGlobals.Vessels.Find(v => v.id == kerbal.Value.vesselID); if (vessel != null) { Utilities.Log_Debug("Cannot thaw, vessel still exists " + vessel.situation + " at " + vessel.mainBody.bodyName); - ScreenMessages.PostScreenMessage("Cannot thaw " + kerbal.Key + " from KSC. Vessel still exists " + vessel.situation + " at " + vessel.mainBody.bodyName, 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00042", kerbal.Key, vessel.situation.displayDescription(), vessel.mainBody.displayName), 5.0f, ScreenMessageStyle.UPPER_CENTER); //Cannot thaw <<1>> from KSC. Vessel still exists <<2>> at <<3>> } else { @@ -601,9 +757,9 @@ private void windowDF(int id) if (!Headers) { GUILayout.BeginHorizontal(); - GUILayout.Label("Kerbal Name", Textures.sectionTitleLeftStyle, GUILayout.Width(DFtxtWdthName)); - GUILayout.Label("Profession", Textures.sectionTitleLeftStyle, GUILayout.Width(DFtxtWdthProf)); - GUILayout.Label("Vessel Name", Textures.sectionTitleLeftStyle, GUILayout.Width(DFtxtWdthVslN)); + GUILayout.Label(cacheautoLOC_DF_00038, Textures.sectionTitleLeftStyle, GUILayout.Width(DFtxtWdthName)); //"Kerbal Name" + GUILayout.Label(cacheautoLOC_DF_00039, Textures.sectionTitleLeftStyle, GUILayout.Width(DFtxtWdthProf)); //"Profession" + GUILayout.Label(cacheautoLOC_DF_00010, Textures.sectionTitleLeftStyle, GUILayout.Width(DFtxtWdthVslN)); //"Vessel Name" GUILayout.EndHorizontal(); Headers = true; } @@ -629,7 +785,7 @@ private void windowDF(int id) { GUI.enabled = false; } - if (GUILayout.Button(new GUIContent("Freeze", "Freeze this Kerbal"), GUILayout.Width(50f))) + if (GUILayout.Button(new GUIContent(cacheautoLOC_DF_00043, cacheautoLOC_DF_00044), GUILayout.Width(50f))) //"Freeze", "Freeze this Kerbal" { frzr.beginFreezeKerbal(crew[i]); } @@ -645,7 +801,7 @@ private void windowDF(int id) GUILayout.Space(24); if (KACWrapper.AssemblyExists && KACWrapper.InstanceExists && KACWrapper.APIReady) { - GUIContent AlarmsContent = new GUIContent("Alarms", "KAC Alarms"); + GUIContent AlarmsContent = new GUIContent(cacheautoLOC_DF_00019, cacheautoLOC_DF_00045); //"Alarms", "KAC Alarms" Rect AlarmsRect = new Rect(DFwindowPos.width - 95, DFwindowPos.height - 22, 70, 20); if (GUI.Button(AlarmsRect, AlarmsContent)) { @@ -653,7 +809,7 @@ private void windowDF(int id) } } - GUIContent resizeContent = new GUIContent(Textures.BtnResize, "Resize Window"); + GUIContent resizeContent = new GUIContent(Textures.BtnResize, cacheautoLOC_DF_00046); //"Resize Window" Rect resizeRect = new Rect(DFwindowPos.width - 21, DFwindowPos.height - 22, 16, 16); GUI.Label(resizeRect, resizeContent, Textures.ResizeStyle); @@ -667,7 +823,7 @@ private void windowDF(int id) private void windowKAC(int id) { - GUIContent closeContent = new GUIContent(Textures.BtnRedCross, "Close Window"); + GUIContent closeContent = new GUIContent(Textures.BtnRedCross, cacheautoLOC_DF_00008); //"Close Window" Rect closeRect = new Rect(DFKACwindowPos.width - 21, 4, 16, 16); if (GUI.Button(closeRect, closeContent, Textures.ClosebtnStyle)) { @@ -681,14 +837,14 @@ private void windowKAC(int id) GUIscrollViewVectorKAC = GUILayout.BeginScrollView(GUIscrollViewVectorKAC, false, false); GUILayout.BeginVertical(); GUILayout.BeginHorizontal(); - GUILayout.Label(new GUIContent("Name", "Alarm Name"), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthName)); - GUILayout.Label(new GUIContent("Alarm Type", "KAC Alarm Type"), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthAtyp)); - GUILayout.Label(new GUIContent("Time Remain.", "Time remaining before Alarm is triggered"), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthATme)); + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00111, cacheautoLOC_DF_00112), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthName)); //#autoLOC_DF_00111 = Name #autoLOC_DF_00112 = Alarm Name + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00113, cacheautoLOC_DF_00114), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthAtyp)); //#autoLOC_DF_00113 = Alarm Type #autoLOC_DF_00114 = KAC Alarm Type + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00115, cacheautoLOC_DF_00116), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthATme)); //#autoLOC_DF_00115 = Time Remain. #autoLOC_DF_00116 = Time remaining before Alarm is triggered GUILayout.EndHorizontal(); if (KACWrapper.KAC.Alarms.Count == 0) { GUILayout.BeginHorizontal(); - GUILayout.Label("There are currently no KAC alarms associated to a DeepFreeze vessel", Textures.frozenStyle); + GUILayout.Label(cacheautoLOC_DF_00117, Textures.frozenStyle); //#autoLOC_DF_00117 = There are currently no KAC alarms associated to a DeepFreeze vessel GUILayout.EndHorizontal(); } else @@ -725,14 +881,14 @@ private void windowKAC(int id) { //If a modify is in progress we turn off the delete button GUI.enabled = false; - GUILayout.Button(new GUIContent("Delete", "Delete this KAC alarm completely"), GUILayout.Width(50)); + GUILayout.Button(new GUIContent(cacheautoLOC_DF_00118, cacheautoLOC_DF_00119), GUILayout.Width(50)); //#autoLOC_DF_00118 = Delete #autoLOC_DF_00119 = Delete this KAC alarm completely GUI.enabled = true; // Utilities.Log_Debug("Delete button disabled"); } else { if (TmeRemaining <= 0) GUI.enabled = false; - if (GUILayout.Button(new GUIContent("Delete", "Delete this KAC alarm completely"), GUILayout.Width(50))) + if (GUILayout.Button(new GUIContent(cacheautoLOC_DF_00118, cacheautoLOC_DF_00119), GUILayout.Width(50))) //#autoLOC_DF_00118 = Delete #autoLOC_DF_00119 = Delete this KAC alarm completely { KACWrapper.KAC.DeleteAlarm(alarm.ID); } @@ -745,36 +901,36 @@ private void windowKAC(int id) if (KACalarmMod.ID != alarm.ID) //If it isn't this alarm we disable the button { GUI.enabled = false; - GUILayout.Button(new GUIContent("Modify", "Modify this Alarm"), GUILayout.Width(50)); + GUILayout.Button(new GUIContent(cacheautoLOC_DF_00120, cacheautoLOC_DF_00121), GUILayout.Width(50)); //#autoLOC_DF_00120 = Modify #autoLOC_DF_00121 = Modify this Alarm GUI.enabled = true; // Utilities.Log_Debug("Modify button disabled"); } else //We are modifying an alarm and it's this one. So we draw a SAVE and Cancel button to save/cancel changes. { // Utilities.Log_Debug("mod in progress and it's this one, change to Save/Cancel"); - if (GUILayout.Button(new GUIContent("Save", "Save Alarm Changes"), GUILayout.Width(50))) + if (GUILayout.Button(new GUIContent(cacheautoLOC_DF_00122, cacheautoLOC_DF_00123), GUILayout.Width(50))) //#autoLOC_DF_00122 = Save #autoLOC_DF_00123 = Save Alarm Changes { if (DFInstalledMods.IsRTInstalled && !DFInstalledMods.RTVesselConnected(tmpid)) { - ScreenMessages.PostScreenMessage("Cannot Save Alarm. No R/Tech Connection to vessel.", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(cacheautoLOC_DF_00124, 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00124 = Cannot Save Alarm. No R/Tech Connection to vessel. } else { if (TmeRemaining > 0) { DFIntMemory.Instance.ModifyKACAlarm(KACalarmMod, KACAlarm_FrzKbls, KACAlarm_ThwKbls); - ScreenMessages.PostScreenMessage("DeepFreeze Alarm changes Saved.", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(cacheautoLOC_DF_00125, 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00125 = DeepFreeze Alarm changes Saved. // Utilities.Log_Debug("DF KAC Modified alarm " + KACalarmMod.ID + " " + KACalarmMod.Name); } else { - ScreenMessages.PostScreenMessage("DeepFreeze Cannot Save alarm changes, Time is up.", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(cacheautoLOC_DF_00126, 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00126 = DeepFreeze Cannot Save alarm changes, Time is up. Utilities.Log_Debug("DF KAC Couldn't save Modified alarm time is up"); } } ModKACAlarm = false; } - if (GUILayout.Button(new GUIContent("Cancel", "Cancel any changes"), GUILayout.Width(50))) + if (GUILayout.Button(new GUIContent(cacheautoLOC_DF_00127, cacheautoLOC_DF_00128), GUILayout.Width(50))) //#autoLOC_DF_00127 = Cancel #autoLOC_DF_00128 = Cancel any changes { // Utilities.Log_Debug("User cancelled mod"); ModKACAlarm = false; @@ -783,10 +939,10 @@ private void windowKAC(int id) GUIscrollViewVectorKACKerbals = GUILayout.BeginScrollView(GUIscrollViewVectorKACKerbals, false, false, GUILayout.MaxHeight(100f)); GUILayout.BeginVertical(); GUILayout.BeginHorizontal(); - GUILayout.Label(new GUIContent("Name", "The Kerbals Name"), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthKName)); - GUILayout.Label(new GUIContent("Trait", "The Kerbals Profession"), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthKTyp)); - GUILayout.Label(new GUIContent("Thaw", "Thaw this kerbal on alarm activation"), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthKTg1)); - GUILayout.Label(new GUIContent("Freeze", "Freeze this kerbal on alarm activation"), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthKTg2)); + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00129, cacheautoLOC_DF_00130), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthKName)); //#autoLOC_DF_00129 = Name #autoLOC_DF_00130 = The Kerbals Name + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00131, cacheautoLOC_DF_00132), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthKTyp)); //#autoLOC_DF_00131 = Trait #autoLOC_DF_00132 = The Kerbals Profession + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00133, cacheautoLOC_DF_00134), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthKTg1)); //#autoLOC_DF_00133 = Thaw #autoLOC_DF_00134 = Thaw this kerbal on alarm activation + GUILayout.Label(new GUIContent(cacheautoLOC_DF_00135, cacheautoLOC_DF_00136), Textures.sectionTitleLeftStyle, GUILayout.Width(KACtxtWdthKTg2)); //#autoLOC_DF_00135 = Freeze #autoLOC_DF_00136 = Freeze this kerbal on alarm activation GUILayout.EndHorizontal(); //Build the Crew list for the alarm and allow modifications List> frzrs = DeepFreeze.Instance.DFgameSettings.knownFreezerParts.Where(a => a.Value.vesselID == tmpid).ToList(); @@ -894,7 +1050,7 @@ private void windowKAC(int id) { // Utilities.Log_Debug("no modify in progress so just show modify buttons on KAC alarm"); if (TmeRemaining <= 0) GUI.enabled = false; - if (GUILayout.Button(new GUIContent("Modify", "Modify this Alarms settings"), GUILayout.Width(50))) + if (GUILayout.Button(new GUIContent(cacheautoLOC_DF_00137, cacheautoLOC_DF_00138), GUILayout.Width(50))) //#autoLOC_DF_00137 = Modify #autoLOC_DF_00138 = Modify this Alarms settings { KACalarmMod = alarm; KACAlarm_FrzKbls.Clear(); @@ -913,7 +1069,7 @@ private void windowKAC(int id) GUILayout.EndVertical(); GUILayout.Space(14); - GUIContent resizeContent = new GUIContent(Textures.BtnResize, "Resize Window"); + GUIContent resizeContent = new GUIContent(Textures.BtnResize, cacheautoLOC_DF_00046); //#autoLOC_DF_00046 = Resize Window Rect resizeRect = new Rect(DFKACwindowPos.width - 17, DFKACwindowPos.height - 17, 16, 16); GUI.Label(resizeRect, resizeContent, Textures.ResizeStyle); @@ -937,14 +1093,14 @@ private void windowVS(int id) GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); - if (GUILayout.Button(new GUIContent("Switch to Vessel", "Switch to Vessel"), GUILayout.Width(160))) + if (GUILayout.Button(new GUIContent(cacheautoLOC_DF_00139, cacheautoLOC_DF_00139), GUILayout.Width(160))) //#autoLOC_DF_00139 = Switch to Vessel { showSwitchVessel = false; if (HighLogic.LoadedSceneIsFlight && FlightGlobals.ready) FlightDriver.SetPause(false); switchNextUpdate = true; } - if (GUILayout.Button(new GUIContent("Not Now", "Don't switch vessel now"), GUILayout.Width(160))) + if (GUILayout.Button(new GUIContent(cacheautoLOC_DF_00140, cacheautoLOC_DF_00141), GUILayout.Width(160))) //#autoLOC_DF_00140 = Not Now #autoLOC_DF_00141 = Don't switch vessel now { showSwitchVessel = false; switchVesselManual = true; @@ -967,11 +1123,11 @@ private void windowVSF(int id) GUILayout.BeginVertical(); GUILayout.BeginHorizontal(); - GUILayout.Box(new GUIContent("Automatic Switch to vessel failed.\nPlease switch manually to vessel Immediately", "Switch to DeepFreeze vessel required"), Textures.statusStyle, GUILayout.Width(280)); + GUILayout.Box(new GUIContent(cacheautoLOC_DF_00142, cacheautoLOC_DF_00143), Textures.statusStyle, GUILayout.Width(280)); //#autoLOC_DF_00142 = Automatic Switch to vessel failed.\nPlease switch manually to vessel Immediately #autoLOC_DF_00143 = Switch to DeepFreeze vessel required GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); - if (GUILayout.Button(new GUIContent("OK", "OK"))) + if (GUILayout.Button(new GUIContent(cacheautoLOC_DF_00033, cacheautoLOC_DF_00033))) //"OK, "OK" { showSwitchVessel = false; showUnabletoSwitchVessel = false; diff --git a/Source/DeepFreezerPart.cs b/Source/DeepFreezerPart.cs index d29efb8..5007c97 100644 --- a/Source/DeepFreezerPart.cs +++ b/Source/DeepFreezerPart.cs @@ -23,6 +23,7 @@ using UnityEngine; using Object = System.Object; using Random = System.Random; +using KSP.Localization; namespace DF { @@ -68,7 +69,7 @@ public class DeepFreezer : PartModule, IResourceConsumer [KSPField(isPersistant = true, guiActive = false, guiName = "PodExternal")] //Set to true if Cryopod is External part (eg. CRY-0300R), read from part.cfg. public bool isPodExternal = false; - [KSPField(isPersistant = true, guiActive = true, guiName = "Freezer Capacity")] //Total Size of Freezer, get's read from part.cfg. + [KSPField(isPersistant = true, guiActive = true, guiName = "#autoLOC_DF_00054")] //Total Size of Freezer, get's read from part.cfg. #autoLOC_DF_00054 = Freezer Capacity public int FreezerSize; public int DFIFreezerSize @@ -79,7 +80,7 @@ public int DFIFreezerSize } } - [KSPField(isPersistant = true, guiActive = true, guiName = "Total Frozen Kerbals")] //WISOTT Total number of frozen kerbals, just a count of the list object. + [KSPField(isPersistant = true, guiActive = true, guiName = "#autoLOC_DF_00055")] //WISOTT Total number of frozen kerbals, just a count of the list object. #autoLOC_DF_00055 = Total Frozen Kerbals public int TotalFrozen; public int DFITotalFrozen @@ -90,7 +91,7 @@ public int DFITotalFrozen } } - [KSPField(isPersistant = true, guiActive = true, guiName = "Freezer Space")] //Total space available for storage. Set by Part.cfg file. + [KSPField(isPersistant = true, guiActive = true, guiName = "#autoLOC_DF_00056")] //Total space available for storage. Set by Part.cfg file. #autoLOC_DF_00056 = Freezer Space public int FreezerSpace; public int DFIFreezerSpace @@ -101,7 +102,7 @@ public int DFIFreezerSpace } } - [KSPField(isPersistant = true, guiActive = true, guiName = "Part is Full?")] //Is set to true if the part is full (taking into account frozen kerbals in the part). + [KSPField(isPersistant = true, guiActive = true, guiName = "#autoLOC_DF_00057")] //Is set to true if the part is full (taking into account frozen kerbals in the part). #autoLOC_DF_00057 = Part is Full? public bool PartFull; public bool DFIPartFull @@ -117,10 +118,10 @@ public bool DFIECReqd get { return DeepFreeze.Instance.DFsettings.ECreqdForFreezer; } } - [KSPField(isPersistant = false, guiName = "R/T Connection", guiActive = false)] + [KSPField(isPersistant = false, guiName = "#autoLOC_DF_00058", guiActive = false)] //#autoLOC_DF_00058 = R/T Connection public bool isRTConnected; - [KSPField(isPersistant = true, guiName = "Freezer Temp", guiActive = true)] + [KSPField(isPersistant = true, guiName = "#autoLOC_DF_00059", guiActive = true)] //#autoLOC_DF_00059 = Freezer Temp public FrzrTmpStatus _FrzrTmp = FrzrTmpStatus.OK; // ok, warning and red alert flags for temperature monitoring of the freezer public FrzrTmpStatus DFIFrzrTmp // Interface var for API = ok, warning and red alert flags for temperature monitoring of the freezer @@ -143,10 +144,10 @@ internal FrzrTmpStatus DFFrzrTmp } } - [KSPField(isPersistant = true, guiName = "Cabin Temperature", guiUnits = "K", guiFormat = "F1", guiActive = true)] + [KSPField(isPersistant = true, guiName = "#autoLOC_DF_00060", guiUnits = "#autoLOC_DF_00061", guiFormat = "F1", guiActive = true)] //#autoLOC_DF_00060 = Cabin Temerature #autoLOC_DF_00061 = K public float CabinTemp; - [KSPEvent(active = true, guiActive = true, name = "showMenu", guiName = "DeepFreeze Menu")] + [KSPEvent(active = true, guiActive = true, name = "showMenu", guiName = "#autoLOC_DF_00062")] //#autoLOC_DF_00062 = DeepFreeze Menu public void showMenu() { DeepFreezeGUI obj = DeepFreeze.Instance.GetComponent("DeepFreezeGUI") as DeepFreezeGUI; @@ -185,7 +186,7 @@ internal bool DFFreezerOutofEC } } - [KSPField(isPersistant = false, guiName = "EC p/Kerbal to run", guiUnits = " p/min", guiActive = true)] + [KSPField(isPersistant = false, guiName = "#autoLOC_DF_00063", guiUnits = "#autoLOC_DF_00064", guiActive = true)] //#autoLOC_DF_00063 = EC p/Kerbal to run #autoLOC_DF_00064 = \u0020p/min public Int32 FrznChargeRequired; //Set by part.cfg. Total EC value required to maintain a frozen kerbal per minute. public Int32 DFIFrznChargeRequired @@ -196,7 +197,7 @@ public Int32 DFIFrznChargeRequired } } - [KSPField(isPersistant = false, guiActive = true, guiName = "Current EC Usage", guiUnits = " p/sec", guiFormat = "F3")] + [KSPField(isPersistant = false, guiActive = true, guiName = "#autoLOC_DF_00065", guiUnits = "#autoLOC_DF_00066", guiFormat = "F3")] //#autoLOC_DF_00065 = Current EC Usage #autoLOC_DF_00066 = \u0020p/sec public float FrznChargeUsage; public float DFIFrznChargeUsage @@ -207,7 +208,7 @@ public float DFIFrznChargeUsage } } - [KSPField(isPersistant = false, guiName = "Glykerol Reqd. to Freeze", guiActive = true)] + [KSPField(isPersistant = false, guiName = "#autoLOC_DF_00067", guiActive = true)] //#autoLOC_DF_00067 = Glykerol Reqd. to Freeze public Int32 GlykerolRequired; //Set by part.cfg. Total Glykerol value required to freeze a kerbal. [KSPField] // set to active while freezing a kerbal @@ -235,7 +236,7 @@ public bool DFIIsThawActive [KSPField] public double StoredCharge; // Stores up EC as we are freezing or thawing over time until we reach what we need. - [KSPField(isPersistant = false, guiName = "EC p/Kerbal to Frze/Thaw", guiActive = true)] + [KSPField(isPersistant = false, guiName = "#autoLOC_DF_00068", guiActive = true)] //#autoLOC_DF_00068 = EC p/Kerbal to Frze/Thaw public Int32 ChargeRequired; //Set by part.cfg. Total EC value required for a complete freeze or thaw. [KSPField(isPersistant = false)] @@ -378,6 +379,7 @@ public void DeActivateAction(KSPActionParam param) private string CrntVslName = ""; private bool vesselisinIVA; private bool vesselisinInternal; + private int internalSeatIdx; private bool setGameSettings; @@ -411,8 +413,8 @@ public void DeActivateAction(KSPActionParam param) public override string GetInfo() { string text = string.Empty; - text += "\nCryopods: " + FreezerSize; - + text += Localizer.Format("#autoLOC_DF_00069", FreezerSize); //#autoLOC_DF_00069 = \nCryopods: <<1>> + return text; } @@ -447,7 +449,11 @@ public void Update() //part.SpawnIVA(); Utilities.spawnInternal(part); resetFrozenKerbals(); - resetCryopods(true); + resetCryopods(true); + if (vesselisinInternal) + { + setIVAFrzrCam(internalSeatIdx); + } } // If we have an external door (CRY-0300) or external pod (CRY-0300R) check RPM transparency setting and change the door settings as appropriate @@ -535,12 +541,12 @@ public void Update() //Set the Part temperature in the partmenu if (DeepFreeze.Instance.DFsettings.TempinKelvin) { - Fields["CabinTemp"].guiUnits = "K"; + Fields["CabinTemp"].guiUnits = Localizer.Format("#autoLOC_DF_00061"); //#autoLOC_DF_00061 = K CabinTemp = (float)part.temperature; } else { - Fields["CabinTemp"].guiUnits = "C"; + Fields["CabinTemp"].guiUnits = Localizer.Format("#autoLOC_DF_00070"); //#autoLOC_DF_00070 = C CabinTemp = Utilities.KelvintoCelsius((float)part.temperature); } @@ -615,7 +621,7 @@ public void Update() if (SeatIndx != -1) { SeatIndx++; - IVAkerbalPod = new ScreenMessage("Pod:" + SeatIndx, 1, ScreenMessageStyle.UPPER_LEFT); + IVAkerbalPod = new ScreenMessage(Localizer.Format("#autoLOC_DF_00071", SeatIndx), 1, ScreenMessageStyle.UPPER_LEFT); //#autoLOC_DF_00071 = Pod:<<1>> IVAkerbalPod.color = Color.white; ScreenMessages.PostScreenMessage(IVAkerbalPod); } @@ -1216,8 +1222,8 @@ private void ChkOngoingEC(PartInfo partInfo) // Utilities.Log_Debug("currenttime = " + currenttime + " timeperiod = " + timeperiod + " updateECTempInterval= " + updateECTempInterval); if (timeperiod > updateECTempInterval) //only update every updateECTempInterval to avoid request resource bug when amounts are too small { - if (TotalFrozen > 0) //We have frozen Kerbals, consume EC - { + if (TotalFrozen > 0 && !CheatOptions.InfiniteElectricity) //We have frozen Kerbals, consume EC + { double ECreqd = FrznChargeRequired / 60.0f * timeperiod * TotalFrozen; Utilities.Log_Debug("DeepFreezer Running the freezer parms currenttime = {0} timeperiod = {1} ecreqd = {2}" , currenttime.ToString(), timeperiod.ToString(), ECreqd.ToString()); double resTotal = 0f; @@ -1252,12 +1258,12 @@ private void ChkOngoingEC(PartInfo partInfo) if (!partInfo.ECWarning) { if (TimeWarp.CurrentRateIndex > 1) Utilities.stopWarp(); - ScreenMessages.PostScreenMessage("Insufficient electric charge to monitor frozen kerbals.", 10.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00072"), 10.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00072 = Insufficient electric charge to monitor frozen kerbals. partInfo.ECWarning = true; deathCounter = currenttime; } if (OnGoingECMsg != null) ScreenMessages.RemoveMessage(OnGoingECMsg); - OnGoingECMsg = ScreenMessages.PostScreenMessage(" Freezer Out of EC : Systems critical in " + (deathRoll - (currenttime - deathCounter)).ToString("######0") + " secs"); + OnGoingECMsg = ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00073", (deathRoll - (currenttime - deathCounter)).ToString("######0"))); //#autoLOC_DF_00073 = \u0020Freezer Out of EC : Systems critical in <<1>> secs _FreezerOutofEC = true; FrznChargeUsage = 0f; Utilities.Log_Debug("DeepFreezer deathCounter = " + deathCounter); @@ -1272,7 +1278,7 @@ private void ChkOngoingEC(PartInfo partInfo) foreach (FrznCrewMbr deathKerbal in _StoredCrewList) { DeepFreeze.Instance.KillFrozenCrew(deathKerbal.CrewName); - ScreenMessages.PostScreenMessage(deathKerbal.CrewName + " died due to lack of Electrical Charge to run cryogenics", 10.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00074", deathKerbal.CrewName), 10.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00074 = <<1>> died due to lack of Electrical Charge to run cryogenics Utilities.Log("DeepFreezer - kerbal " + deathKerbal.CrewName + " died due to lack of Electrical charge to run cryogenics"); kerbalsToDelete.Add(deathKerbal); if (!flatline.isPlaying) @@ -1294,7 +1300,14 @@ private void ChkOngoingEC(PartInfo partInfo) } else // no frozen kerbals, so just update last time EC checked { - Utilities.Log_Debug("No frozen kerbals for EC consumption in part " + part.name); + if (CheatOptions.InfiniteElectricity) + { + Utilities.Log_Debug("Infinite EC cheat on"); + } + else + { + Utilities.Log_Debug("No frozen kerbals for EC consumption in part " + part.name); + } timeSinceLastECtaken = (float)currenttime; deathCounter = currenttime; FrznChargeUsage = 0f; @@ -1332,14 +1345,14 @@ private void ChkOngoingTemp(PartInfo partInfo) if (tempdiff <= 40) { _FrzrTmp = FrzrTmpStatus.WARN; - ScreenMessages.PostScreenMessage("Check Temperatures, Freezer getting hot", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00075"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00075 = Check Temperatures, Freezer getting hot } else { if (tempdiff < 20) { _FrzrTmp = FrzrTmpStatus.RED; - ScreenMessages.PostScreenMessage("Warning!! Check Temperatures NOW, Freezer getting very hot", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00076"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00076 = Warning!! Check Temperatures NOW, Freezer getting very hot } } timeSinceLastTmpChk = (float)currenttime; @@ -1352,13 +1365,13 @@ private void ChkOngoingTemp(PartInfo partInfo) if (!partInfo.TempWarning) { if (TimeWarp.CurrentRateIndex > 1) Utilities.stopWarp(); - ScreenMessages.PostScreenMessage("Temperature getting too hot for kerbals to remain frozen.", 10.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00077"), 10.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00077 = Temperature getting too hot for kerbals to remain frozen. partInfo.TempWarning = true; } _FrzrTmp = FrzrTmpStatus.RED; Utilities.Log_Debug("DeepFreezer tmpdeathCounter = {0}" , tmpdeathCounter.ToString()); if (TempChkMsg != null) ScreenMessages.RemoveMessage(TempChkMsg); - TempChkMsg = ScreenMessages.PostScreenMessage(" Freezer Over Temp : Systems critical in " + (tmpdeathRoll - (currenttime - tmpdeathCounter)).ToString("######0") + " secs"); + TempChkMsg = ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00078", (tmpdeathRoll - (currenttime - tmpdeathCounter)).ToString("######0"))); //#autoLOC_DF_00078 = Freezer Over Temp : Systems critical in <<1>> secs if (currenttime - tmpdeathCounter > tmpdeathRoll) { Utilities.Log_Debug("DeepFreezer tmpdeathRoll reached, roll the dice..."); @@ -1371,7 +1384,7 @@ private void ChkOngoingTemp(PartInfo partInfo) Utilities.Log_Debug("DeepFreezer A Kerbal dies dice=" + dice); FrznCrewMbr deathKerbal = _StoredCrewList[dice - 1]; DeepFreeze.Instance.KillFrozenCrew(deathKerbal.CrewName); - ScreenMessages.PostScreenMessage(deathKerbal.CrewName + " died due to overheating, cannot keep frozen", 10.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00079", deathKerbal.CrewName), 10.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00079 = <<1>> died due to overheating, cannot keep frozen Debug.Log("DeepFreezer - kerbal " + deathKerbal.CrewName + " died due to overheating, cannot keep frozen"); _StoredCrewList.Remove(deathKerbal); @@ -1382,7 +1395,7 @@ private void ChkOngoingTemp(PartInfo partInfo) } else //NON-fatal option set. Thaw them all. { - ScreenMessages.PostScreenMessage("Over Temperature - Emergency Thaw in Progress.", 10.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00080"), 10.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00080 = Over Temperature - Emergency Thaw in Progress. Utilities.Log_Debug("DeepFreezer deathRoll reached, Kerbals all don't die... They just Thaw out..."); //all kerbals thaw out emergencyThawInProgress = true; //This will trigger FixedUpdate to thaw all frozen kerbals in the part, one by one. @@ -1673,7 +1686,7 @@ private void addFreezeEvent(ProtoCrewMember CrewMember) Events.Add(new BaseEvent(Events, "Freeze " + CrewMember.name, () => { beginFreezeKerbal(CrewMember); - }, new KSPEvent { guiName = "Freeze " + CrewMember.name, guiActive = true })); + }, new KSPEvent { guiName = Localizer.Format("#autoLOC_DF_00199", CrewMember.name), guiActive = true })); } } catch (Exception ex) @@ -1724,7 +1737,7 @@ private void addThawEvent(string frozenkerbal) { beginThawKerbal(frozenkerbal); } - }, new KSPEvent { guiName = "Thaw " + frozenkerbal, guiActive = true })); + }, new KSPEvent { guiName = Localizer.Format("#autoLOC_DF_00200", frozenkerbal), guiActive = true })); } } catch (Exception ex) @@ -1779,7 +1792,7 @@ private void ProcessFreezeKerbal() // If we are in IVA mode we switch to the internal camera in front of their cryopod. if (vesselisinIVA || vesselisinInternal) { - setIVAFrzrCam(ToFrzeKerbalSeat); + setIVAFrzrCam(ToFrzeKerbalSeat); } if (partHasStripLights && DeepFreeze.Instance.DFsettings.StripLightsActive) @@ -1791,19 +1804,26 @@ private void ProcessFreezeKerbal() case 1: //get Electric Charge and Glykerol - Utilities.Log_Debug("Freeze Step 1"); + Utilities.Log_Debug("Freeze Step 1"); double ECTotal = 0f; - if (!Utilities.requireResource(vessel, EC, ChargeRate, false, true, false, out ResAvail, out ECTotal)) + if (!CheatOptions.InfiniteElectricity && !Utilities.requireResource(vessel, EC, ChargeRate, false, true, false, out ResAvail, out ECTotal)) { - ScreenMessages.PostScreenMessage("Insufficient electric charge to freeze kerbal", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00081"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00081 = Insufficient electric charge to freeze kerbal FreezeKerbalAbort(ActiveFrzKerbal); } else { - Utilities.requireResource(vessel, EC, ChargeRate, true, true, false, out ResAvail, out ECTotal); + if (CheatOptions.InfiniteElectricity) + { + ECTotal = ChargeRate; + } + else + { + Utilities.requireResource(vessel, EC, ChargeRate, true, true, false, out ResAvail, out ECTotal); + } StoredCharge = StoredCharge + ChargeRate; if (FreezeMsg != null) ScreenMessages.RemoveMessage(FreezeMsg); - FreezeMsg = ScreenMessages.PostScreenMessage(" Cryopod - Charging: " + StoredCharge.ToString("######0")); + FreezeMsg = ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00082", StoredCharge.ToString("######0"))); //#autoLOC_DF_00082 = \u0020Cryopod - Charging: <<1>> if (DeepFreeze.Instance.DFsettings.RegTempReqd) { part.AddThermalFlux(heatamtThawFreezeKerbal); @@ -1956,7 +1976,7 @@ public void beginFreezeKerbal(ProtoCrewMember CrewMember) double GlykTotal = 0f; if (!Utilities.requireResource(vessel, Glykerol, GlykerolRequired, false, true, false, out ResAvail, out GlykTotal)) // check we have Glykerol on board. 5 units per freeze event. This should be a part config item not hard coded. { - ScreenMessages.PostScreenMessage("Insufficient Glykerol to freeze kerbal", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00083"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00083 = Insufficient Glykerol to freeze kerbal } else // We have enough Glykerol { @@ -1964,7 +1984,7 @@ public void beginFreezeKerbal(ProtoCrewMember CrewMember) { if ((float)part.temperature > DeepFreeze.Instance.DFsettings.RegTempFreeze) { - ScreenMessages.PostScreenMessage("Cannot Freeze while Temperature > " + DeepFreeze.Instance.DFsettings.RegTempFreeze.ToString("######0") + Fields["CabinTemp"].guiUnits, 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00084", DeepFreeze.Instance.DFsettings.RegTempFreeze.ToString("######0") + Fields["CabinTemp"].guiUnits), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00084 = Cannot Freeze while Temperature greater than <<1>> return; } } @@ -1980,20 +2000,20 @@ public void beginFreezeKerbal(ProtoCrewMember CrewMember) //if (_crewXferFROMActive || _crewXferTOActive) // We can't run a freeze process if a crewXfer is active, this is catching Stock Xfers. if (IsCrewXferRunning) // We can't run a freeze process if a crewXfer is active, this is catching Stock Xfers. { - ScreenMessages.PostScreenMessage("Cannot Freeze while Crew Xfer in progress", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00085"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00085 = Cannot Freeze while Crew Xfer in progress return; } if (IsThawActive || IsFreezeActive) { - ScreenMessages.PostScreenMessage("Cannot run Freeze process on more than one Kerbal at a time", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00086"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00086 = Cannot run Freeze process on more than one Kerbal at a time return; } if (DFInstalledMods.IsRTInstalled) { if (part.vessel.GetCrewCount() == 1 && RTlastKerbalFreezeWarn == false) { - ScreenMessages.PostScreenMessage("RemoteTech Detected. Press Freeze Again if you want to Freeze your Last Active Kerbal", 10.0f, ScreenMessageStyle.UPPER_CENTER); - ScreenMessages.PostScreenMessage("An Active connection or Active Kerbal is Required On-Board to Initiate Thaw Process", 10.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00087"), 10.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00087 = RemoteTech Detected. Press Freeze Again if you want to Freeze your Last Active Kerbal + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00088"), 10.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00088 = An Active connection or Active Kerbal is Required On-Board to Initiate Thaw Process RTlastKerbalFreezeWarn = true; return; } @@ -2005,14 +2025,14 @@ public void beginFreezeKerbal(ProtoCrewMember CrewMember) else { if (FreezerSpace == 0) - ScreenMessages.PostScreenMessage("Cannot freeze kerbal. Freezer is full", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00089"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00089 = Cannot freeze kerbal. Freezer is full } } catch (Exception ex) { Debug.Log("Exception attempting to start Freeze for " + CrewMember); Debug.Log("Err: " + ex); - ScreenMessages.PostScreenMessage("Cannot freeze kerbal at this time", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00090"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00090 = Cannot freeze kerbal at this time } } @@ -2051,7 +2071,7 @@ private void FreezeKerbal(ProtoCrewMember CrewMember) Utilities.Log_Debug("FreezeKerbal ACtiveFrzKerbal=" + ActiveFrzKerbal.name + ",ToFrzeKerbalSeat=" + ToFrzeKerbalSeat + ",ToFrzeKerbalXformNme=" + ToFrzeKerbalXformNme); FreezeStepInProgress = 0; IsFreezeActive = true; // Set the Freezer actively freezing mode on - ScreenMessages.PostScreenMessage("Starting Freeze process", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00091"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00091 = Starting Freeze process Utilities.Log_Debug("ActiveFrzKerbal=" + ActiveFrzKerbal.name + ",ToFrzeKerbal=" + ToFrzeKerbal + ",SeatIdx=" + ToFrzeKerbalSeat + ",seat transform name=" + ToFrzeKerbalXformNme); Utilities.Log_Debug("FreezeKerbal ended"); } @@ -2061,7 +2081,7 @@ private void FreezeKerbalAbort(ProtoCrewMember CrewMember) try { Utilities.Log_Debug("FreezeKerbalAbort " + CrewMember.name + " seat " + ToFrzeKerbalSeat); - ScreenMessages.PostScreenMessage("Freezing Aborted", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00092"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //autoLOC_DF_00092 = Freezing Aborted Utilities.setFrznKerbalLayer(part, CrewMember, true); if (partHasInternals) { @@ -2159,13 +2179,11 @@ private void FreezeKerbalConfirm(ProtoCrewMember CrewMember) Utilities.Log("DeepFreeze Err: " + ex); } } - ScreenMessages.PostScreenMessage(CrewMember.name + " frozen", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00093", CrewMember.name), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00093 = <<1>> frozen - onvslchgInternal = true; vessel.RebuildCrewList(); DFGameEvents.onKerbalFrozen.Fire(this.part, CrewMember); - CrewHatchController.fetch.EnableInterface(); - GameEvents.onVesselChange.Fire(vessel); + CrewHatchController.fetch.EnableInterface(); GameEvents.onVesselWasModified.Fire(vessel); if (DFInstalledMods.IsUSILSInstalled) // IF USI LS Installed, remove tracking. @@ -2186,6 +2204,10 @@ private void FreezeKerbalConfirm(ProtoCrewMember CrewMember) Utilities.Log("DeepFreeze Err: " + ex); } } + if ((vesselisinIVA || vesselisinInternal) && part.protoModuleCrew.Count == 0) + { + CameraManager.Instance.SetCameraFlight(); + } } Utilities.Log_Debug("FreezeCompleted"); } @@ -2276,17 +2298,20 @@ private void ProcessThawKerbal() break; } double totalAvail = 0f; - if (!Utilities.requireResource(vessel, EC, ChargeRate, false, true, false, out ResAvail, out totalAvail)) + if (!CheatOptions.InfiniteElectricity && !Utilities.requireResource(vessel, EC, ChargeRate, false, true, false, out ResAvail, out totalAvail)) { - ScreenMessages.PostScreenMessage("Insufficient electric charge to thaw kerbal", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00094"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00094 = Insufficient electric charge to thaw kerbal ThawKerbalAbort(ToThawKerbal); } else { - Utilities.requireResource(vessel, EC, ChargeRate, true, true, false, out ResAvail, out totalAvail); + if (!CheatOptions.InfiniteElectricity) + { + Utilities.requireResource(vessel, EC, ChargeRate, true, true, false, out ResAvail, out totalAvail); + } StoredCharge = StoredCharge + ChargeRate; if (ThawMsg != null) ScreenMessages.RemoveMessage(ThawMsg); - ThawMsg = ScreenMessages.PostScreenMessage(" Cryopod - Charging: " + StoredCharge.ToString("######0")); + ThawMsg = ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00095", StoredCharge.ToString("######0"))); //#autoLOC_DF_00095 = \u0020Cryopod - Charging:<<1>> if (DeepFreeze.Instance.DFsettings.RegTempReqd) { @@ -2419,8 +2444,8 @@ public void beginThawKerbal(string frozenkerbal) Utilities.Log_Debug("beginThawKerbal " + frozenkerbal); if (part.protoModuleCrew.Count >= part.CrewCapacity) { - ScreenMessages.PostScreenMessage("Cannot Thaw " + frozenkerbal + " Part is full", 5.0f, ScreenMessageStyle.UPPER_CENTER); - Utilities.Log_Debug("Cannot thaw " + frozenkerbal + " Part is full"); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00096", frozenkerbal), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00096 = Cannot Thaw <<1>> Part is full + Utilities.Log_Debug("Cannot thaw " + frozenkerbal + " Part is full"); } else { @@ -2437,12 +2462,12 @@ public void beginThawKerbal(string frozenkerbal) //if (_crewXferFROMActive || _crewXferTOActive) // We can't run a thaw process if a crewXfer is active, this is catching Stock Xfers. if (IsCrewXferRunning) // We can't run a thaw process if a crewXfer is active, this is catching Stock Xfers. { - ScreenMessages.PostScreenMessage("Cannot Thaw while Crew Xfer in progress", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00097"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00097 = Cannot Thaw while Crew Xfer in progress return; } if (IsThawActive || IsFreezeActive) { - ScreenMessages.PostScreenMessage("Cannot run Thaw process on more than one Kerbal at a time", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00098"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00098 = Cannot run Thaw process on more than one Kerbal at a time return; } @@ -2457,7 +2482,7 @@ public void beginThawKerbal(string frozenkerbal) { Debug.Log("Exception attempting to start Thaw for " + frozenkerbal); Debug.Log("Err: " + ex); - ScreenMessages.PostScreenMessage("Cannot thaw kerbal at this time", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00099"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00099 = Cannot thaw kerbal at this time } } @@ -2565,7 +2590,7 @@ private void ThawKerbalStep0(string frozenkerbal) Debug.Log("Exception attempting to add to seat for " + frozenkerbal); Debug.Log("Part has Internals, and Frozen Kerbal was found codestep = " + codestep); Debug.Log("Err: " + ex); - ScreenMessages.PostScreenMessage("Code Error: Cannot thaw kerbal at this time, Check Log", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00100"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00100 = Code Error: Cannot thaw kerbal at this time, Check Log ThawKerbalAbort(frozenkerbal); } } @@ -2573,7 +2598,7 @@ private void ThawKerbalStep0(string frozenkerbal) { Utilities.Log_Debug("Seat taken by someone else, Abort"); Debug.Log("Could not start kerbal Thaw process as seat is taken by another kerbal. Very Very Bad. Report this to Mod thread"); - ScreenMessages.PostScreenMessage("Code Error: Cannot thaw kerbal at this time, Check Log", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00100"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00100 = Code Error: Cannot thaw kerbal at this time, Check Log ThawKerbalAbort(frozenkerbal); } } @@ -2645,7 +2670,7 @@ private void ThawKerbalStep0(string frozenkerbal) Debug.Log("Exception attempting to add to seat for " + frozenkerbal); Debug.Log("Seat Crew KerbalRef is NULL re-add them at seatidx=" + tmpcrew.SeatIdx + " codestep = " + codestep); Debug.Log("Err: " + ex); - ScreenMessages.PostScreenMessage("Code Error: Cannot thaw kerbal at this time, Check Log", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00100"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00100 = Code Error: Cannot thaw kerbal at this time, Check Log ThawKerbalAbort(frozenkerbal); } } @@ -2664,7 +2689,7 @@ private void ThawKerbalStep0(string frozenkerbal) Debug.Log("Exception attempting to add to seat for " + frozenkerbal); Debug.Log("Where DeepFreezer Module is attached to internal-LESS part"); Debug.Log("Err: " + ex); - ScreenMessages.PostScreenMessage("Code Error: Cannot thaw kerbal at this time, Check Log", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00100"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00100 = Code Error: Cannot thaw kerbal at this time, Check Log ThawKerbalAbort(frozenkerbal); } } @@ -2672,14 +2697,14 @@ private void ThawKerbalStep0(string frozenkerbal) else // This should NEVER occur. { Debug.Log("Could not find frozen kerbal in _StoredCrewList to Thaw, Very Very Bad. Report this to Mod thread"); - ScreenMessages.PostScreenMessage("Code Error: Cannot thaw kerbal at this time, Check Log", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00100"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00100 = Code Error: Cannot thaw kerbal at this time, Check Log ThawKerbalAbort(frozenkerbal); } } else // This should NEVER occur. { Debug.Log("Could not find frozen kerbal in Unowned Crew List to Thaw, Very Very Bad. Report this to Mod thread"); - ScreenMessages.PostScreenMessage("Code Error: Cannot thaw kerbal at this time, Check Log", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00100"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00100 = Code Error: Cannot thaw kerbal at this time, Check Log ThawKerbalAbort(frozenkerbal); } } @@ -2709,7 +2734,7 @@ private void TexReplacerPersonaliseKerbal(Kerbal kerbal) private void ThawKerbalAbort(String ThawKerbal) { Utilities.Log_Debug("ThawkerbalAbort called"); - ScreenMessages.PostScreenMessage("Thawing Aborted", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00101"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00101 = Thawing Aborted IsThawActive = false; // Turn the Freezer actively thawing mode off ToThawKerbal = ""; // Set the Active Thaw Kerbal to null StoredCharge = 0; // Discharge all EC stored @@ -2792,10 +2817,10 @@ private void ThawKerbalStep4(String frozenkerbal) IsThawActive = false; // Turn the Freezer actively thawing mode off ThawStepInProgress = 0; skipThawStep1 = false; - ScreenMessages.PostScreenMessage(frozenkerbal + " thawed out", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00102", frozenkerbal), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00102 = <<1>> thawed out if (emergencyThawInProgress) { - ScreenMessages.PostScreenMessage(frozenkerbal + " was thawed out due to lack of Electrical Charge to run cryogenics", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00103", frozenkerbal), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00103 = <<1>> was thawed out due to lack of Electrical Charge to run cryogenics Debug.Log("DeepFreezer - kerbal " + frozenkerbal + " was thawed out due to lack of Electrical charge to run cryogenics"); DeepFreeze.Instance.setComatoseKerbal(part, kerbal, ProtoCrewMember.KerbalType.Tourist, true); @@ -2830,15 +2855,14 @@ private void ThawKerbalStep4(String frozenkerbal) { Utilities.Log("Unable to add to knownfrozenkerbals comatose crewmember " + kerbal.name); Utilities.Log("Err: " + ex); - ScreenMessages.PostScreenMessage("DeepFreezer mechanical failure", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00104"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00104 = DeepFreezer mechanical failure } } Debug.Log("Thawed out: " + frozenkerbal); UpdateCounts(); // Update the Crew counts removeThawEvent(frozenkerbal); // Remove the Thaw Event for this kerbal. ding_ding.Play(); - OpenPodAnimPlaying = false; - onvslchgInternal = true; + OpenPodAnimPlaying = false; if (DFInstalledMods.IskerbalismInstalled) // IF Kerbalism Installed, add tracking. { Utilities.Log_Debug("kerbalism installed track kerbal=" + frozenkerbal); @@ -2853,8 +2877,7 @@ private void ThawKerbalStep4(String frozenkerbal) } } CrewHatchController.fetch.EnableInterface(); - DFGameEvents.onKerbalThaw.Fire(this.part, kerbal); - GameEvents.onVesselChange.Fire(vessel); + DFGameEvents.onKerbalThaw.Fire(this.part, kerbal); GameEvents.onVesselWasModified.Fire(vessel); Utilities.Log_Debug("ThawKerbalConfirm End"); } @@ -2916,7 +2939,7 @@ private bool RemoveKerbal(ProtoCrewMember kerbal, int SeatIndx) { Utilities.Log("Unable to add to knownfrozenkerbals frozen crewmember " + kerbal.name); Utilities.Log("Err: " + ex); - ScreenMessages.PostScreenMessage("DeepFreezer mechanical failure", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00104"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00104 = DeepFreezer mechanical failure return false; } if (partHasInternals && ExternalDoorActive) @@ -3002,7 +3025,7 @@ private bool AddKerbal(ProtoCrewMember kerbal, int SeatIndx) { Utilities.Log("Unable to remove knownfrozenkerbals frozen crewmember " + kerbal.name); Utilities.Log("Err: " + ex); - ScreenMessages.PostScreenMessage("DeepFreezer mechanical failure", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00104"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00104 = DeepFreezer mechanical failure return false; } if (partHasInternals && ExternalDoorActive) @@ -3170,14 +3193,14 @@ private void OnVesselChange(Vessel vessel) //Check a Freeze or Thaw is not in progress, if it is, we must abort. if (IsThawActive) { - ScreenMessages.PostScreenMessage("Vessel about to change, Aborting Thaw process", 5.0f, ScreenMessageStyle.UPPER_CENTER); - Utilities.Log_Debug("Thawisactive - abort"); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00105"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00105 = Vessel about to change, Aborting Thaw process + Utilities.Log_Debug("Thawisactive - abort"); ThawKerbalAbort(ToThawKerbal); } if (IsFreezeActive) { - ScreenMessages.PostScreenMessage("Vessel about to change, Aborting Freeze process", 5.0f, ScreenMessageStyle.UPPER_CENTER); - Utilities.Log_Debug("Freezeisactive - abort"); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00106"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00106 = Vessel about to change, Aborting Freeze process + Utilities.Log_Debug("Freezeisactive - abort"); FreezeKerbalAbort(ActiveFrzKerbal); } //If the vessel we have changed to is the same as the vessel this partmodule is attached to we LOAD persistent vars, otherwise we SAVE persistent vars. @@ -3230,13 +3253,13 @@ private void onVesselDestroy(Vessel vessel) //Check a Freeze or Thaw is not in progress, if it is, we must abort. if (IsThawActive) { - ScreenMessages.PostScreenMessage("Vessel about to change, Aborting Thaw process", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00105"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00105 = Vessel about to change, Aborting Thaw process Utilities.Log_Debug("Thawisactive - abort"); ThawKerbalAbort(ToThawKerbal); } if (IsFreezeActive) { - ScreenMessages.PostScreenMessage("Vessel about to change, Aborting Freeze process", 5.0f, ScreenMessageStyle.UPPER_CENTER); + ScreenMessages.PostScreenMessage(Localizer.Format("#autoLOC_DF_00106"), 5.0f, ScreenMessageStyle.UPPER_CENTER); //#autoLOC_DF_00106 = Vessel about to change, Aborting Freeze process Utilities.Log_Debug("Freezeisactive - abort"); FreezeKerbalAbort(ActiveFrzKerbal); } @@ -3944,7 +3967,8 @@ private void stopStripLightFlash(int seatIndx) //This method sets the internal camera to the Freezer view prior to thawing or freezing a kerbal so we can see the nice animations. private void setIVAFrzrCam(int seatIndx) { - string camname = "FrzCam" + (seatIndx + 1); + string camname = "FrzCam" + (seatIndx + 1); + internalSeatIdx = seatIndx; Camera cam = part.internalModel.FindModelComponent(camname); if (cam != null) //Found Freezer Camera so switch to it. { @@ -4155,10 +4179,10 @@ private DoorState getdoorState() //It will consume ElectricCharge for Freezer that contain frozen kerbals for vessels that are unloaded, if the user has turned on the ECreqdForFreezer option in the settings menu. public static void FixedBackgroundUpdate(Vessel v, uint partFlightID, Func resourceRequest, ref Object data) { - if (Time.timeSinceLevelLoad < 2.0f) // Check not loading level + if (Time.timeSinceLevelLoad < 2.0f || CheatOptions.InfiniteElectricity) // Check not loading level { return; - } + } bool debug = true; try { @@ -4224,12 +4248,12 @@ public static void FixedBackgroundUpdate(Vessel v, uint partFlightID, Func> secs partInfo.outofEC = true; if (debug) Debug.Log("FixedBackgroundUpdate deathCounter = " + partInfo.deathCounter); if (currenttime - partInfo.deathCounter > deathRoll) @@ -4250,7 +4274,7 @@ public static void FixedBackgroundUpdate(Vessel v, uint partFlightID, Func> died due to lack of Electrical Charge to run cryogenics if (debug) Debug.Log("FixedBackgroundUpdate DeepFreezer - kerbal " + deathKerbal + " died due to lack of Electrical charge to run cryogenics"); } kerbalsToDelete.ForEach(id => DeepFreeze.Instance.DFgameSettings.KnownFrozenKerbals.Remove(id)); diff --git a/Source/EngineerReport.cs b/Source/EngineerReport.cs index 27cd272..75223fd 100644 --- a/Source/EngineerReport.cs +++ b/Source/EngineerReport.cs @@ -2,6 +2,7 @@ using System.Linq; using PreFlightTests; using RSTUtils; +using KSP.Localization; namespace DF { @@ -56,13 +57,13 @@ public override List GetAffectedParts() // Title of the problem description public override string GetConcernTitle() { - return "DeepFreeze"; + return Localizer.Format("#autoLOC_DF_00003"); // "DeepFreeze"; } // problem description public override string GetConcernDescription() { - return "There is less than 5 units of Glykerol on-board for your DeepFreeze Freezers"; + return Localizer.Format("#autoLOC_DF_00108"); // "There is less than 5 units of Glykerol on-board for your DeepFreeze Freezers"; } // how bad is the problem diff --git a/Source/InstallChecker.cs b/Source/InstallChecker.cs index e50fa89..778817c 100644 --- a/Source/InstallChecker.cs +++ b/Source/InstallChecker.cs @@ -44,7 +44,7 @@ protected void Start() var badPaths = loadedAssemblies.Select(a => a.path).Select(p => Uri.UnescapeDataString(new Uri(Path.GetFullPath(KSPUtil.ApplicationRootPath)).MakeRelativeUri(new Uri(p)).ToString().Replace('/', Path.DirectorySeparatorChar))); string badPathsString = String.Join("\n", badPaths.ToArray()); Utilities.Log(modName + " - Incorrectly installed, bad paths:\n" + badPathsString); - PopupDialog.SpawnPopupDialog(new Vector2(0.5f, 0.5f), new Vector2(0.5f, 0.5f), "Incorrect " + modName + " Installation", + PopupDialog.SpawnPopupDialog(new Vector2(0.5f, 0.5f), new Vector2(0.5f, 0.5f), "IncorrectInstallation", "Incorrect " + modName + " Installation", modName + " has been installed incorrectly and will not function properly. All files should be located in KSP/GameData/" + expectedPath + ". Do not move any files from inside that folder.\n\nPlease Remove all old installations and invalid files, as follows.\n\nIncorrect path(s):\n" + badPathsString, "OK", false, HighLogic.UISkin); @@ -57,7 +57,7 @@ protected void Start() if (!AssemblyLoader.loadedAssemblies.Any(a => a.assembly.GetName().Name.StartsWith("ModuleManager") && a.url == "")) { Utilities.Log(modName + " - Missing or incorrectly installed RPM & ModuleManager."); - PopupDialog.SpawnPopupDialog(new Vector2(0.5f, 0.5f), new Vector2(0.5f, 0.5f), "Missing Module Manager", + PopupDialog.SpawnPopupDialog(new Vector2(0.5f, 0.5f), new Vector2(0.5f, 0.5f), "IncorrectInstallation", "Missing Module Manager", modName + " requires the Module Manager mod in order to function properly with Raster Prop Monitor mod Installed.\n\nPlease download from http://forum.kerbalspaceprogram.com/threads/55219 and copy to the KSP/GameData/ directory.", "OK", false, HighLogic.UISkin); } @@ -90,7 +90,7 @@ protected void Start() catch (Exception ex) { Utilities.Log("DeepFreeze - Caught an exception:\n" + ex.Message + "\n" + ex.StackTrace); - PopupDialog.SpawnPopupDialog(new Vector2(0.5f, 0.5f), new Vector2(0.5f, 0.5f), "Incorrect " + modName + " Installation", + PopupDialog.SpawnPopupDialog(new Vector2(0.5f, 0.5f), new Vector2(0.5f, 0.5f), "IncorrectInstallation", "Incorrect " + modName + " Installation", "A very serious error has occurred while checking the installation of " + modName + ".\n\n" + "You need to\n" + " (1) shut down KSP,\n" + diff --git a/Source/Properties/AssemblyInfo.cs b/Source/Properties/AssemblyInfo.cs index 5a7c308..8c4c18d 100644 --- a/Source/Properties/AssemblyInfo.cs +++ b/Source/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("0.23.4.0")] -[assembly: AssemblyFileVersion("0.23.4.0")] +[assembly: AssemblyVersion("0.23.5.0")] +[assembly: AssemblyFileVersion("0.23.5.0")] [assembly: KSPAssembly("DeepFreeze", 0, 23)] \ No newline at end of file diff --git a/Source/SettingsParms.cs b/Source/SettingsParms.cs index 9bb101a..5827800 100644 --- a/Source/SettingsParms.cs +++ b/Source/SettingsParms.cs @@ -1,41 +1,42 @@ using System; using System.Collections.Generic; -using System.Linq; using System.Reflection; using System.Text; using UnityEngine; +using KSP.Localization; namespace DF { public class DeepFreeze_SettingsParms : GameParameters.CustomParameterNode { - public override string Title { get { return "DeepFreeze Options"; } } + public override string Title { get { return Localizer.Format("#autoLOC_DF_00144"); } } //#autoLOC_DF_00144 = DeepFreeze Options public override GameParameters.GameMode GameMode { get { return GameParameters.GameMode.ANY; } } public override bool HasPresets { get { return true; } } public override string Section { get { return "DeepFreeze"; } } + public override string DisplaySection { get { return Localizer.Format("#autoLOC_DF_00003"); } } //#autoLOC_DF_00003 = DeepFreeze public override int SectionOrder { get { return 1; } } - [GameParameters.CustomParameterUI("ElectricCharge Required to run Freezers", autoPersistance = true, toolTip = "If on, EC is required to run freezers")] + [GameParameters.CustomParameterUI("#autoLOC_DF_00145", autoPersistance = true, toolTip = "#autoLOC_DF_00146")] //#autoLOC_DF_00145 = ElectricCharge Required to run Freezers #autoLOC_DF_00146 = If on, EC is required to run freezers public bool ECreqdForFreezer = false; - [GameParameters.CustomParameterUI("Fatal EC/Heat Option", autoPersistance = true, toolTip = "If on Kerbals will die if EC runs out or it gets too hot")] + [GameParameters.CustomParameterUI("#autoLOC_DF_00147", autoPersistance = true, toolTip = "#autoLOC_DF_00148")] //#autoLOC_DF_00147 = Fatal EC/Heat Option #autoLOC_DF_00148 = If on Kerbals will die if EC runs out or it gets too hot public bool fatalOption = false; - [GameParameters.CustomIntParameterUI("Non Fatal Comatose Time(in secs)", minValue = 60, maxValue = 10000, stepSize = 60, autoPersistance = true, toolTip = "The time in seconds a kerbal is comatose\n if fatal EC / Heat option is off")] + [GameParameters.CustomIntParameterUI("#autoLOC_DF_00149", minValue = 60, maxValue = 10000, stepSize = 60, autoPersistance = true, toolTip = "#autoLOC_DF_00150")] //#autoLOC_DF_00149 = Non Fatal Comatose Time(in secs) #autoLOC_DF_00150 = The time in seconds a kerbal is comatose\n if fatal EC / Heat option is off public int comatoseTime = 300; - [GameParameters.CustomParameterUI("AutoRecover Frozen Kerbals at KSC", autoPersistance = true, toolTip = "If on, will AutoRecover Frozen Kerbals at the KSC\n and deduct the Cost from your funds")] + [GameParameters.CustomParameterUI("#autoLOC_DF_00151", autoPersistance = true, toolTip = "#autoLOC_DF_00152")] //#autoLOC_DF_00151 = AutoRecover Frozen Kerbals at KSC #autoLOC_DF_00152 = If on, will AutoRecover Frozen Kerbals at the KSC\n and deduct the Cost from your funds public bool AutoRecoverFznKerbals = false; - [GameParameters.CustomFloatParameterUI("Cost to Thaw a Kerbal at KSC",toolTip = "Amt of currency Reqd to Freeze a Kerbal from the KSC", minValue = 0, maxValue = 500000, gameMode = GameParameters.GameMode.CAREER)] + [GameParameters.CustomFloatParameterUI("#autoLOC_DF_00153", toolTip = "#autoLOC_DF_00154", minValue = 0, maxValue = 500000, gameMode = GameParameters.GameMode.CAREER)] //#autoLOC_DF_00153 = Cost to Thaw a Kerbal at KSC #autoLOC_DF_00154 = Amt of currency Reqd to Freeze a Kerbal from the KSC public float KSCcostToThawKerbal = 10000f; - [GameParameters.CustomIntParameterUI("EC Reqd to Freeze/Thaw a Kerbal", autoPersistance = true, minValue = 0, maxValue = 10000, stepSize = 10, toolTip = "Amt of ElecCharge Reqd to Freeze/Thaw a Kerbal.")] + [GameParameters.CustomIntParameterUI("#autoLOC_DF_00155", autoPersistance = true, minValue = 0, maxValue = 10000, stepSize = 10, toolTip = "#autoLOC_DF_00156")] //#autoLOC_DF_00155 = EC Reqd to Freeze/Thaw a Kerbal #autoLOC_DF_00156 = Amt of ElecCharge Reqd to Freeze/Thaw a Kerbal. public int ECReqdToFreezeThaw = 3000; - [GameParameters.CustomIntParameterUI("Glykerol Reqd to Freeze a Kerbal", autoPersistance = true, minValue = 0, maxValue = 50, toolTip = "Amt of Glykerol used to Freeze a Kerbal,\nOverrides Part values.")] + [GameParameters.CustomIntParameterUI("#autoLOC_DF_00157", autoPersistance = true, minValue = 0, maxValue = 50, toolTip = "#autoLOC_DF_00158")] //#autoLOC_DF_00157 = Glykerol Reqd to Freeze a Kerbal #autoLOC_DF_00158 = Amt of Glykerol used to Freeze a Kerbal,\nOverrides Part values. public int GlykerolReqdToFreeze = 5; public override void SetDifficultyPreset(GameParameters.Preset preset) @@ -117,31 +118,32 @@ public override bool Interactible(MemberInfo member, GameParameters parameters) public class DeepFreeze_SettingsParms_Sec2 : GameParameters.CustomParameterNode { - public override string Title { get { return "DeepFreeze Temperatures"; } } + public override string Title { get { return Localizer.Format("#autoLOC_DF_00159"); } } //#autoLOC_DF_00159 = DeepFreeze Temperatures public override GameParameters.GameMode GameMode { get { return GameParameters.GameMode.ANY; } } public override bool HasPresets { get { return true; } } public override string Section { get { return "DeepFreeze"; } } + public override string DisplaySection { get { return Localizer.Format("#autoLOC_DF_00003"); } } //#autoLOC_DF_00003 = DeepFreeze public override int SectionOrder { get { return 2; } } - [GameParameters.CustomStringParameterUI("Test String UI", lines = 3, title = "", toolTip = "Get your calculator out.")] - public string CBstring = "Temps are in (K)elvin. (K) = (C)elcius + 273.15. (K) = ((F)arenheit + 459.67) × 5/9. Get your calculator out."; + [GameParameters.CustomStringParameterUI("Test String UI", lines = 3, title = "", toolTip = "#autoLOC_DF_00160")] //#autoLOC_DF_00160 = Get your calculator out. + public string CBstring = "#autoLOC_DF_00161"; //#autoLOC_DF_00161 = Temps are in (K)elvin. (K) = (C)elcius + 273.15. (K) = ((F)arenheit + 459.67) × 5/9. Get your calculator out - [GameParameters.CustomParameterUI("Regulated Temperatures Required", autoPersistance = true, toolTip = "If on, Regulated Temps apply to freeze\nand keep Kerbals Frozen.")] + [GameParameters.CustomParameterUI("#autoLOC_DF_00162", autoPersistance = true, toolTip = "#autoLOC_DF_00163")] //#autoLOC_DF_00162 = Regulated Temperatures Required #autoLOC_DF_00163 = If on, Regulated Temps apply to freeze\nand keep Kerbals Frozen. public bool RegTempReqd = false; - [GameParameters.CustomFloatParameterUI("Min. Temp. for Freezer to Freeze(K)", autoPersistance = true, minValue = 0, maxValue = 400, toolTip = "The minimum temperature (in Kelvin) for a Freezer\nto be able to Freeze a Kerbal.")] + [GameParameters.CustomFloatParameterUI("#autoLOC_DF_00164", autoPersistance = true, minValue = 0, maxValue = 400, toolTip = "#autoLOC_DF_00165")] //#autoLOC_DF_00164 = Min. Temp. for Freezer to Freeze(K) #autoLOC_DF_00165 = The minimum temperature (in Kelvin) for a Freezer\nto be able to Freeze a Kerbal. public float RegTempFreeze = 300f; - [GameParameters.CustomFloatParameterUI("Max. Temp. to keep Kerbals Frozen(K)", autoPersistance = true, minValue = 0, maxValue = 800, toolTip = "The maximum temperature (in Kelvin) for a Freezer\nto keep Kerbals frozen.")] + [GameParameters.CustomFloatParameterUI("#autoLOC_DF_00166", autoPersistance = true, minValue = 0, maxValue = 800, toolTip = "#autoLOC_DF_00167")] //#autoLOC_DF_00166 = Max. Temp. to keep Kerbals Frozen(K) #autoLOC_DF_00167 = The maximum temperature (in Kelvin) for a Freezer\nto keep Kerbals frozen. public float RegTempMonitor = 400f; - [GameParameters.CustomFloatParameterUI("Heat generated per kerbal (kW/min)", autoPersistance = true, minValue = 10, maxValue = 1000, toolTip = "Amount of thermal heat (kW) generated\nby equipment for each frozen kerbal per minute.")] + [GameParameters.CustomFloatParameterUI("#autoLOC_DF_00168", autoPersistance = true, minValue = 10, maxValue = 1000, toolTip = "#autoLOC_DF_00169")] //#autoLOC_DF_00168 = Heat generated per kerbal (kW/min) #autoLOC_DF_00169 = Amount of thermal heat (kW) generated\nby equipment for each frozen kerbal per minute. public float heatamtMonitoringFrznKerbals = 100f; - [GameParameters.CustomFloatParameterUI("Heat generated freezer process(kW)", autoPersistance = true, minValue = 10, maxValue = 3000, toolTip = "Amount of thermal heat (kW) generated\nwith each thaw/freeze process.")] + [GameParameters.CustomFloatParameterUI("#autoLOC_DF_00170", autoPersistance = true, minValue = 10, maxValue = 3000, toolTip = "#autoLOC_DF_00171")] //#autoLOC_DF_00170 = Heat generated freezer process(kW) #autoLOC_DF_00171 = Amount of thermal heat (kW) generated\nwith each thaw/freeze process. public float heatamtThawFreezeKerbal = 1000f; - [GameParameters.CustomParameterUI("Show Part Temperatures in Kelvin", autoPersistance = true, toolTip = "If on Part right click will show temp in Kelvin,\nif Off will show in Celcius.")] + [GameParameters.CustomParameterUI("#autoLOC_DF_00172", autoPersistance = true, toolTip = "#autoLOC_DF_00173")] //#autoLOC_DF_00172 = Show Part Temperatures in Kelvin #autoLOC_DF_00173 = If on Part right click will show temp in Kelvin,\nif Off will show in Celcius. public bool TempinKelvin = false; public override void SetDifficultyPreset(GameParameters.Preset preset) @@ -187,25 +189,26 @@ public override bool Interactible(MemberInfo member, GameParameters parameters) public class DeepFreeze_SettingsParms_Sec3 : GameParameters.CustomParameterNode { - public override string Title { get { return "DeepFreeze Misc."; } } + public override string Title { get { return Localizer.Format("#autoLOC_DF_00174"); } } //#autoLOC_DF_00174 = DeepFreeze Misc. public override GameParameters.GameMode GameMode { get { return GameParameters.GameMode.ANY; } } public override bool HasPresets { get { return false; } } public override string Section { get { return "DeepFreeze"; } } + public override string DisplaySection { get { return Localizer.Format("#autoLOC_DF_00003"); } } //#autoLOC_DF_00003 = DeepFreeze public override int SectionOrder { get { return 3; } } - [GameParameters.CustomParameterUI("Freezer Strip Lights On", autoPersistance = true, toolTip = "Turn off if you do not want the internal\nfreezer strip lights to function.")] + [GameParameters.CustomParameterUI("#autoLOC_DF_00175", autoPersistance = true, toolTip = "#autoLOC_DF_00176")] //#autoLOC_DF_00175 = Freezer Strip Lights On #autoLOC_DF_00176 = Turn off if you do not want the internal\nfreezer strip lights to function. public bool StripLightsActive = true; - [GameParameters.CustomParameterUI("ToolTips On", autoPersistance = true, toolTip = "Turn the Tooltips on and off.")] + [GameParameters.CustomParameterUI("#autoLOC_DF_00177", autoPersistance = true, toolTip = "#autoLOC_DF_00178")] //#autoLOC_DF_00177 = ToolTips On #autoLOC_DF_00178 = Turn the Tooltips on and off. public bool ToolTips = true; - [GameParameters.CustomParameterUI("Editor Filter", autoPersistance = true, toolTip = "Turn the DeepFreeze Editor filter Category on and off.")] + [GameParameters.CustomParameterUI("#autoLOC_DF_00179", autoPersistance = true, toolTip = "#autoLOC_DF_00180")] //#autoLOC_DF_00179 = Editor Filter #autoLOC_DF_00180 = Turn the DeepFreeze Editor filter Category on and off. public bool EditorFilter = true; - [GameParameters.CustomParameterUI("Use Stock App Launcher Icon", toolTip = "If on, the Stock Application launcher will be used,\nif off will use Blizzy Toolbar if installed.")] + [GameParameters.CustomParameterUI("#autoLOC_DF_00181", toolTip = "#autoLOC_DF_00182")] //#autoLOC_DF_00181 = Use Stock App Launcher Icon #autoLOC_DF_00182 = If on, the Stock Application launcher will be used,\nif off will use Blizzy Toolbar if installed. public bool UseAppLToolbar = true; - [GameParameters.CustomParameterUI("Extra Debug Logging", toolTip = "Turn this On to capture lots of extra information\ninto the KSP log for reporting a problem.")] + [GameParameters.CustomParameterUI("#autoLOC_DF_00183", toolTip = "#autoLOC_DF_00184")] //#autoLOC_DF_00183 = Extra Debug Logging #autoLOC_DF_00184 = Turn this On to capture lots of extra information\ninto the KSP log for reporting a problem. public bool DebugLogging = false; public override bool Interactible(MemberInfo member, GameParameters parameters) diff --git a/Source/Textures.cs b/Source/Textures.cs index 1925501..cffb746 100644 --- a/Source/Textures.cs +++ b/Source/Textures.cs @@ -166,7 +166,7 @@ internal static void SetupStyles() sectionTitleLeftStyle = new GUIStyle(GUI.skin.label); sectionTitleLeftStyle.alignment = TextAnchor.MiddleLeft; sectionTitleLeftStyle.stretchWidth = true; - sectionTitleLeftStyle.normal.textColor = Color.blue; + sectionTitleLeftStyle.normal.textColor = Color.cyan; sectionTitleLeftStyle.fontStyle = FontStyle.Bold; sectionTitleCenterStyle = new GUIStyle(GUI.skin.label);