支持删除多开存档功能

This commit is contained in:
ZouJin 2023-10-19 22:30:05 +08:00
parent 95715df65b
commit 5addd3e301
8 changed files with 57 additions and 22 deletions

View File

@ -428,7 +428,7 @@
Click="btn_muti_open_click" />
<Button x:Name="btn_mutidel" Grid.Row="1" Grid.Column="3" Margin="5" Padding="1" pu:ButtonHelper.CornerRadius="4"
Background="{DynamicResource SecondaryLight}" Content="{ll:Str 删除}"
ToolTip="{ll:Str 删除当前选择的多开存档}" VerticalAlignment="Bottom" Height="25" />
ToolTip="{ll:Str 删除当前选择的多开存档}" VerticalAlignment="Bottom" Height="25" Click="btn_mutidel_Click" />
<ListBox x:Name="LBHave" Grid.Row="1" Grid.Column="2" Margin="1,2,1,2"
pu:ListBoxHelper.CornerRadius="4" BorderBrush="{DynamicResource DARKPrimary}"
BorderThickness="2" MinHeight="66"

View File

@ -90,15 +90,7 @@ namespace VPet_Simulator.Windows
swAutoCal.IsChecked = !mw.Set["gameconfig"].GetBool("noAutoCal");
foreach (var str in App.MutiSaves)
{
var rn = str;
if (str == "")
rn = "默认存档".Translate();
if (str == mw.PrefixSave.Trim('-'))
rn += ' ' + "(当前存档)".Translate();
LBHave.Items.Add(rn);
}
LoadMutiUI();
LanguageBox.Items.Add("null");
foreach (string v in LocalizeCore.AvailableCultures)
@ -965,6 +957,19 @@ namespace VPet_Simulator.Windows
PetBox.SelectedIndex = petboxbef;
AllowChange = true;
}
private void LoadMutiUI()
{
LBHave.Items.Clear();
foreach (var str in App.MutiSaves)
{
var rn = str;
if (str == "")
rn = "默认存档".Translate();
if (str == mw.PrefixSave.Trim('-'))
rn += " (" + "当前存档".Translate() + ')';
LBHave.Items.Add(rn);
}
}
private void PetBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (!AllowChange)
@ -975,7 +980,7 @@ namespace VPet_Simulator.Windows
switch (MessageBoxX.Show("是否多开一个新的桌宠使用 {0} 皮肤\n各自存档独立保存,互不影响\n支持同时显示多个宠物".Translate(mw.Pets[PetBox.SelectedIndex].Name.Translate()),
"是否多开".Translate(), MessageBoxButton.YesNoCancel))
{
case MessageBoxResult.Yes:
case MessageBoxResult.Yes:
var savename = mw.Pets[PetBox.SelectedIndex].Name;
petbox_back();
foreach (var c in @"()#:|/\?*<>-")
@ -1415,7 +1420,7 @@ namespace VPet_Simulator.Windows
private void restart_click(object sender, RoutedEventArgs e)
{
if (MessageBoxX.Show("是否重置游戏数据重新开始?\n该操作无法撤回".Translate(), "重新开始".Translate(), MessageBoxButton.YesNo) == MessageBoxResult.Yes)
if (MessageBoxX.Show("是否重置游戏数据重新开始?".Translate(), "重新开始".Translate(), MessageBoxButton.YesNo) == MessageBoxResult.Yes)
{
var oldsave = mw.GameSavesData;
mw.GameSavesData = new GameSave_v2(mw.Core.Save.Name);
@ -1444,11 +1449,11 @@ namespace VPet_Simulator.Windows
if (LBHave.SelectedIndex == -1)
return;
var str = LBHave.SelectedItem as string;
if (str == "默认存档")
if (str == "默认存档".Translate())
{
str = string.Empty;
}
if (str.EndsWith("(当前存档)".Translate()) || App.MainWindows.FirstOrDefault(x => x.PrefixSave.Trim('-') == str) != null)
if (str.EndsWith(")") || App.MainWindows.FirstOrDefault(x => x.PrefixSave.Trim('-') == str) != null)
{
MessageBoxX.Show("当前多开已经加载".Translate());
return;
@ -1478,7 +1483,33 @@ namespace VPet_Simulator.Windows
new MainWindow(savename).Show();
}
private void btn_mutidel_Click(object sender, RoutedEventArgs e)
{
if (LBHave.SelectedIndex == -1)
return;
var str = LBHave.SelectedItem as string;
if (str == "默认存档".Translate())
{
MessageBoxX.Show("默认存档无法删除,请使用重新开始功能重新开始游戏".Translate());
return;
}
if (str.EndsWith(")") || App.MainWindows.FirstOrDefault(x => x.PrefixSave.Trim('-') == str) != null)
{
MessageBoxX.Show("当前多开已经加载,请先关闭改多开后重试".Translate());
return;
}
if (!App.MutiSaves.Contains(str))
{
LoadMutiUI();
return;
}
if (MessageBoxX.Show("是否删除当前选择({0})的多开存档?".Translate(str), "删除前确认".Translate(), MessageBoxButton.YesNo) == MessageBoxResult.Yes)
{
File.Delete(ExtensionValue.BaseDirectory + @$"\Setting-{str}.lps");
App.MutiSaves.Remove(str);
LoadMutiUI();
}
}
private void SwitchHideFromTaskControl_OnChecked(object sender, RoutedEventArgs e)
{

View File

@ -10,7 +10,7 @@
打开#Open:|
打开当前选择的多开存档#Opens the currently selected Multiple archive.:|
删除当前选择的多开存档#Delete the currently selected Multiple archive:|
(当前存档)#(Current archive):|
当前存档#Current archive:|
默认存档#Default archive:|
clicktext#Click text:|
lowtext#Low status text:|
@ -21,4 +21,8 @@ selecttext#Options Chat Text:|
导致的\n如有可能请发送 错误信息截图和引发错误之前的操作给相应MOD作者\n感谢您对MOD开发的支持\n#Caused. \nIf possible, please send the error message screenshot and the operation before the error to the corresponding MOD author\nThank you for your support for MOD development\n:|
搜索设置#Search settings:|
是否多开一个新的桌宠使用 {0} 皮肤\n各自存档独立保存,互不影响\n支持同时显示多个宠物#Whether to open a new VPet to use {0} skin\nEach archive is saved independently and does not affect each other\nSupports displaying multiple pets at the same time:|
是否多开#Whether to open multiple:|
是否多开#Whether to open multiple:|
默认存档无法删除,请使用重新开始功能重新开始游戏#The default archive cannot be deleted, please use the restart function to restart the game:|
是否删除当前选择({0})的多开存档?#Whether to delete the current selection ({0}) multiple archive?:|
删除前确认#Confirm before deleting:|
当前多开已经加载,请先关闭改多开后重试#Multiple currently loaded, please close the multiple before trying again:|

View File

@ -30,5 +30,5 @@
是没有修改过存档/使用超模MOD的玩家专属标志#Is there no modified archive/supermodel MOD player exclusive logo:|
重新开始#Restart New Game:|
重新开始新游戏,重置统计等信息\r对于想要获得脱离超模从而获得成就非常有帮助#Restart a new game, reset statistics and other information\rIt is very helpful for those who want to get out of the supermodel and get achievements.:|
是否重置游戏数据重新开始?\n该操作无法撤回#Reset the game data to restart?\nThis operation can not be revoked:|
是否重置游戏数据重新开始?#Reset the game data to restart?:|
重置成功#Reset successfully:|

View File

@ -10,7 +10,7 @@
打开#打开:|
打开当前选择的多开存档#打开当前选择的多开存档:|
删除当前选择的多开存档#删除当前选择的多开存档:|
(当前存档)#(当前存档):|
当前存档#当前存档:|
默认存档#默认存档:|
clicktext#点击文本:|
lowtext#低状态文本:|

View File

@ -31,5 +31,5 @@
是没有修改过存档/使用超模MOD的玩家专属标志#是没有修改过存档/使用超模MOD的玩家专属标志:|
重新开始#重新开始:|
重新开始新游戏,重置统计等信息\r对于想要获得脱离超模从而获得成就非常有帮助#重新开始新游戏,重置统计等信息\r对于想要获得脱离超模从而获得成就非常有帮助:|
是否重置游戏数据重新开始?\n该操作无法撤回#是否重置游戏数据重新开始?\n该操作无法撤回:|
是否重置游戏数据重新开始?#是否重置游戏数据重新开始?:|
重置成功#重置成功:|

View File

@ -10,7 +10,7 @@
打开#打開:|
打开当前选择的多开存档#打開當前選擇的多開存檔:|
删除当前选择的多开存档#删除當前選擇的多開存檔:|
(当前存档)#當前存檔:|
当前存档#當前存檔:|
默认存档#默認存檔:|
clicktext#點擊文字:|
lowtext#低狀態文字:|

View File

@ -31,5 +31,5 @@
是没有修改过存档/使用超模MOD的玩家专属标志#是沒有修改過存檔使用過OP模組的玩家專屬徽章:|
重新开始#重新開始:|
重新开始新游戏,重置统计等信息\r对于想要获得脱离超模从而获得成就非常有帮助#重頭開始遊戲,重置統計等資訊\r對於想要脫離OP數據以此來獲得成就的人非常有幫助:|
是否重置游戏数据重新开始?\n该操作无法撤回#是否重置遊戲數據重新開始?\n本行為無法被取消:|
是否重置游戏数据重新开始?#是否重置遊戲數據重新開始?:|
重置成功#重置成功:|