Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified DeepFreeze.zip
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"NAME":"DeepFreeze Continued...",
"URL":"http://ksp-avc.cybutek.net/version.php?id=183",
"DOWNLOAD":"https://kerbalstuff.com/mod/895/DeepFreeze%20Continued...",
"VERSION":{"MAJOR":0,"MINOR":18,"PATCH":2,"BUILD":1},
"VERSION":{"MAJOR":0,"MINOR":19,"PATCH":0,"BUILD":0},
"KSP_VERSION":{"MAJOR":1,"MINOR":0,"PATCH":4},
"KSP_VERSION_MIN":{"MAJOR":1,"MINOR":0,"PATCH":0},
"KSP_VERSION_MAX":{"MAJOR":1,"MINOR":0,"PATCH":4}
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion GameData/REPOSoftTech/DeepFreeze/Plugins/Config.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ DFSettings
TempinKelvin = True
defaultTimeoutforCrewXfer = 30
cryopodResettimeDelay = 3
DFWindowWidth = 420
DFWindowWidth = 450
CFWindowWidth = 340
KACWindowWidth = 485
ECLowWarningTime = 3600
Expand Down
Binary file modified GameData/REPOSoftTech/DeepFreeze/Plugins/DeepFreeze.dll
Binary file not shown.
Binary file not shown.
23 changes: 22 additions & 1 deletion Source/Changelog.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,25 @@
[B]V0.18.2.0 "Bug Fixes & Enhancements"[/B]
[B]V0.19.0.0 "Bug fixes & Enhancements"[/B]
Added Fatal EC/Heat option. If this is ON kerbals will die if EC runs out or it gets too hot (if you are using the EC and Heat options). If this is OFF
the Kerbals will be emergency thawed and become available again, and start consuming LS resources again. (to-do - expand this to perhaps make them unusable for a period of time due to
emergency thaw effects, but not in this version) Default setting (for compatibility) is set to ON. - IE: running out of EC or over-heating will Kill kerbals.
Added pop-up window when EC is critical for vessels that are not the active vessel and you can automatically switch to that vessel.
Added flatline sound effect if kerbals die due to lack of EC or over temperature condition.
Support for Texture Replacer V2.4.10, you MUST have this version (or above) of Texture Replacer installed. Thawed kerbals will no longer lose their customised texture settings.
Support for RasterPropMonitor V0.23.0, you MUST have this version (or above) of RPM installed.
Changed the Editor Icon for DeepFreeze parts category to use Snowflake/Freeze icon instead of EVA Kerbal (stock) icon.
Added Engineer Info report check where there is a DeepFreeze Freezer attached that the vessel has 5 or more units of Glykerol available.

Fixed Engineer report in editor so that DeepFreeze Freezers are now considered parts that use Glykerol and ElectricCharge.
Fixed bug where ships docking/un-docking with frozen kerbals results in unable to thaw frozen kerbals.
Fixed bug in new Internal Camera system when swapping to other DeepFreeze vessels that are in range the cameras do not move/update to the correct vessel.
Fixed bug if you have multiple vessels in loaded range on initially switching to flight mode on one vessel, if you swap to a DeepFreeze equipped vessel (with DeepFreeze part) and you attempt to thaw a previously frozen
kerbal, the thaw may not work or it will work but the kerbal is not visible on thawing.
Fixed issue where a freeze/thaw is in progress and the player switches vessels. DeepFreeze will now abort any in-progress thaw/freeze in this case.
Fixed NullReference bug in DFIntMemory with the internal cameras function.

[B]V0.18.2.1 "Bug Fixes & Enhancements"[/B]
Fixed distribution file to include missing DFInterface.dll
[B]V0.18.2.0 "Bug Fixes & Enhancements"[/B]
Fix Radial attachment points for CRY-0300 exclusion zones around the external doors. The CRY-0300 now correctly allows you to attach radial parts to the outside of it except for where the external doors are.
There is a EVA Access point at the bottom of the external doors. If you block this with radial parts your EVA access will be blocked by KSP and you will get the "Hatch Obstructed" mesage.
It is recommended you do not attach parts to the doors or the lower front section of the CRY-0300.
Expand Down
19 changes: 14 additions & 5 deletions Source/DFEditorFilter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@

using System.Collections.Generic;
using UnityEngine;
using System.IO;
using KSP.IO;


namespace DF
{
Expand All @@ -31,7 +34,11 @@ public class DFEditorFilter : MonoBehaviour
internal string category = "Filter by Function";
internal string subCategoryTitle = "DeepFreeze Items";
internal string defaultTitle = "DF";
internal string iconName = "R&D_node_icon_evatech";
//internal string iconName = "R&D_node_icon_evatech";
//create and the icons
Texture2D icon_DeepFreeze_Editor = new Texture2D(32, 32);

internal string iconName = "DeepFreezeEditor";
internal bool filter = true;

private void Awake()
Expand All @@ -40,6 +47,9 @@ private void Awake()
GameEvents.onGUIEditorToolbarReady.Add(SubCategories);
//ModuleManager.MMPatchLoader.addPostPatchCallback(DFMMCallBack);
DFMMCallBack();
//load the icons
icon_DeepFreeze_Editor.LoadImage(System.IO.File.ReadAllBytes("GameData/REPOSoftTech/DeepFreeze/Icons/DeepFreezeEditor.png"));

Debug.Log("DFEditorFilter Awake Complete");
}

Expand Down Expand Up @@ -72,11 +82,10 @@ private bool EditorItemsFilter(AvailablePart avPart)
}

private void SubCategories()
{
RUI.Icons.Selectable.Icon icon = PartCategorizer.Instance.iconLoader.GetIcon(iconName);
{
RUI.Icons.Selectable.Icon filterDeepFreeze = new RUI.Icons.Selectable.Icon("DeepFreezeEditor", icon_DeepFreeze_Editor, icon_DeepFreeze_Editor, true);
PartCategorizer.Category Filter = PartCategorizer.Instance.filters.Find(f => f.button.categoryName == category);
PartCategorizer.AddCustomSubcategoryFilter(Filter, subCategoryTitle, icon, p => EditorItemsFilter(p));

PartCategorizer.AddCustomSubcategoryFilter(Filter, subCategoryTitle, filterDeepFreeze, p => EditorItemsFilter(p));
RUIToggleButtonTyped button = Filter.button.activeButton;
button.SetFalse(button, RUIToggleButtonTyped.ClickType.FORCED);
button.SetTrue(button, RUIToggleButtonTyped.ClickType.FORCED);
Expand Down
1 change: 1 addition & 0 deletions Source/DFGameSettings.cs
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ internal void Load(ConfigNode node)
{
KnownFrozenKerbals.Clear();
knownVessels.Clear();
knownFreezerParts.Clear();
knownKACAlarms.Clear();

if (node.HasNode(configNodeName))
Expand Down
26 changes: 22 additions & 4 deletions Source/DFInstalledMods.cs
Original file line number Diff line number Diff line change
Expand Up @@ -111,10 +111,19 @@ where a.FullName.Split(',')[0] == assemblyName
internal static bool RTVesselConnected(Guid id)
{
bool RTVslConnected = false;
if (IsRTInstalled)
try
{
if (IsRTInstalled && RTWrapper.APIReady)
{
//RTVslConnected = (RemoteTech.API.API.HasLocalControl(id) || RemoteTech.API.API.HasAnyConnection(id));
RTVslConnected = (RTWrapper.RTactualAPI.HasLocalControl(id) || RTWrapper.RTactualAPI.HasAnyConnection(id));
//Utilities.Log_Debug("vessel " + id + "haslocal " + RemoteTech.API.API.HasLocalControl(id) + " has any " + RemoteTech.API.API.HasAnyConnection(id));
}
}
catch (Exception ex)
{
RTVslConnected = (RemoteTech.API.API.HasLocalControl(id) || RemoteTech.API.API.HasAnyConnection(id));
//Utilities.Log_Debug("vessel " + id + "haslocal " + RemoteTech.API.API.HasLocalControl(id) + " has any " + RemoteTech.API.API.HasAnyConnection(id));
Utilities.Log("DeepFreeze", "Exception attempting to check RemoteTech connections. Report this error on the Forum Thread.");
Utilities.Log("DeepFreeze", "Err: " + ex);
}
return RTVslConnected;
}
Expand All @@ -124,7 +133,16 @@ internal static double RTVesselDelay
get
{
double RTVslDelay = 0f;
RTVslDelay = RemoteTech.API.API.GetShortestSignalDelay(FlightGlobals.ActiveVessel.id);
try
{
//RTVslDelay = RemoteTech.API.API.GetShortestSignalDelay(FlightGlobals.ActiveVessel.id);
RTVslDelay = RTWrapper.RTactualAPI.GetShortestSignalDelay(FlightGlobals.ActiveVessel.id);
}
catch (Exception ex)
{
Utilities.Log("DeepFreeze", "Exception attempting to check RemoteTech VesselDelay. Report this error on the Forum Thread.");
Utilities.Log("DeepFreeze", "Err: " + ex);
}
return RTVslDelay;
}
}
Expand Down
Loading