- [GUI] Remember last selected CABMap if exists.
- [GUI] Only apply UnityCN key changes if game is selected.
This commit is contained in:
@@ -189,7 +189,7 @@ namespace AssetStudio
|
||||
}
|
||||
}
|
||||
|
||||
public static void LoadCABMap(string mapName)
|
||||
public static bool LoadCABMap(string mapName)
|
||||
{
|
||||
Logger.Info($"Loading {mapName}");
|
||||
try
|
||||
@@ -225,7 +225,10 @@ namespace AssetStudio
|
||||
catch (Exception e)
|
||||
{
|
||||
Logger.Warning($"{mapName} was not loaded, {e}");
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public static void BuildAssetMap(string[] files, string mapName, Game game, string savePath, ExportListType exportListType, ManualResetEvent resetEvent = null, ClassIDType[] typeFilters = null, Regex[] nameFilters = null, Regex[] containerFilters = null)
|
||||
|
||||
@@ -112,6 +112,9 @@
|
||||
<setting name="selectedUnityCNKey" serializeAs="String">
|
||||
<value>0</value>
|
||||
</setting>
|
||||
<setting name="selectedCABMapName" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
</AssetStudioGUI.Properties.Settings>
|
||||
</userSettings>
|
||||
</configuration>
|
||||
@@ -156,9 +156,21 @@ namespace AssetStudioGUI
|
||||
Studio.Game = GameManager.GetGame(Properties.Settings.Default.selectedGame);
|
||||
Logger.Info($"Target Game type is {Studio.Game.Type}");
|
||||
|
||||
MapNameComboBox.SelectedIndexChanged += new EventHandler(specifyNameComboBox_SelectedIndexChanged);
|
||||
if (Studio.Game.Type.IsUnityCN())
|
||||
{
|
||||
UnityCNManager.SetKey(Properties.Settings.Default.selectedUnityCNKey);
|
||||
}
|
||||
|
||||
MapNameComboBox.SelectedIndexChanged += new EventHandler(specifyNameComboBox_SelectedIndexChanged);
|
||||
if (!string.IsNullOrEmpty(Properties.Settings.Default.selectedCABMapName))
|
||||
{
|
||||
if (!AssetsHelper.LoadCABMap(Properties.Settings.Default.selectedCABMapName))
|
||||
{
|
||||
Properties.Settings.Default.selectedCABMapName = "";
|
||||
Properties.Settings.Default.Save();
|
||||
}
|
||||
}
|
||||
}
|
||||
private void AssetStudioGUIForm_DragEnter(object sender, DragEventArgs e)
|
||||
{
|
||||
if (e.Data.GetDataPresent(DataFormats.FileDrop))
|
||||
@@ -2017,6 +2029,11 @@ namespace AssetStudioGUI
|
||||
Studio.Game = GameManager.GetGame(Properties.Settings.Default.selectedGame);
|
||||
Logger.Info($"Target Game is {Studio.Game.Name}");
|
||||
|
||||
if (Studio.Game.Type.IsUnityCN())
|
||||
{
|
||||
UnityCNManager.SetKey(Properties.Settings.Default.selectedUnityCNKey);
|
||||
}
|
||||
|
||||
assetsManager.SpecifyUnityVersion = specifyUnityVersion.Text;
|
||||
assetsManager.Game = Studio.Game;
|
||||
}
|
||||
@@ -2029,7 +2046,14 @@ namespace AssetStudioGUI
|
||||
ResetForm();
|
||||
|
||||
var name = MapNameComboBox.SelectedItem.ToString();
|
||||
await Task.Run(() => AssetsHelper.LoadCABMap(name));
|
||||
await Task.Run(() =>
|
||||
{
|
||||
if (AssetsHelper.LoadCABMap(name))
|
||||
{
|
||||
Properties.Settings.Default.selectedCABMapName = name;
|
||||
Properties.Settings.Default.Save();
|
||||
}
|
||||
});
|
||||
|
||||
assetsManager.SpecifyUnityVersion = specifyUnityVersion.Text;
|
||||
assetsManager.Game = Studio.Game;
|
||||
|
||||
12
AssetStudioGUI/Properties/Settings.Designer.cs
generated
12
AssetStudioGUI/Properties/Settings.Designer.cs
generated
@@ -453,5 +453,17 @@ namespace AssetStudioGUI.Properties {
|
||||
this["selectedUnityCNKey"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string selectedCABMapName {
|
||||
get {
|
||||
return ((string)(this["selectedCABMapName"]));
|
||||
}
|
||||
set {
|
||||
this["selectedCABMapName"] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -110,5 +110,8 @@
|
||||
<Setting Name="selectedUnityCNKey" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">0</Value>
|
||||
</Setting>
|
||||
<Setting Name="selectedCABMapName" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
</Settings>
|
||||
</SettingsFile>
|
||||
@@ -65,7 +65,11 @@ namespace AssetStudioGUI
|
||||
}
|
||||
}
|
||||
UnityCNManager.SaveEntries(keys.Reverse<UnityCN.Entry>().ToList());
|
||||
UnityCNManager.SetKey(specifyUnityCNList.CurrentRow.Index);
|
||||
|
||||
if (Studio.Game.Type.IsUnityCN())
|
||||
{
|
||||
UnityCNManager.SetKey(specifyUnityCNList.CurrentRow.Index);
|
||||
}
|
||||
|
||||
Properties.Settings.Default.selectedUnityCNKey = specifyUnityCNList.CurrentRow.Index;
|
||||
Properties.Settings.Default.Save();
|
||||
|
||||
Reference in New Issue
Block a user