mirror of
https://github.com/tribufu/ServerManagers
synced 2026-05-06 15:17:34 +00:00
Reset Server Button
- added new button to reset your server.
This commit is contained in:
parent
e2f92bf7a9
commit
9c5b096429
19 changed files with 308 additions and 136 deletions
|
|
@ -189,6 +189,9 @@
|
|||
<HintPath>..\packages\Microsoft.Tpl.Dataflow.4.5.24\lib\portable-net45+win8+wpa81\System.Threading.Tasks.Dataflow.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Transactions" />
|
||||
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Windows.Interactivity, Version=4.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Expression.Blend.Sdk.1.0.2\lib\net45\System.Windows.Interactivity.dll</HintPath>
|
||||
</Reference>
|
||||
|
|
|
|||
|
|
@ -1039,6 +1039,10 @@
|
|||
<sys:String x:Key="ServerSettings_BackupServer_Title">Backup Server</sys:String>
|
||||
<sys:String x:Key="ServerSettings_BackupServer_FailedTitle">Backup Server Error</sys:String>
|
||||
<sys:String x:Key="ServerSettings_BackupServer_SuccessfulLabel">The backup was successful.</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ResetServer_Title">Reset Server</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ResetServer_FailedTitle">Reset Server Error</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ResetServer_ConfirmationLabel">This will delete all the server, player and tribe files and reset your server back to new. Do you wish to proceed?</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ResetServer_SuccessfulLabel">The reset was successful.</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ShutdownServer_FailedTitle">Shutdown Server Error</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ShutdownServer_CancelledTitle">Shutdown Server Cancelled</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ShutdownServer_AlreadyOpenLabel">The shutdown window is already open for this server.</sys:String>
|
||||
|
|
@ -1128,6 +1132,8 @@
|
|||
<sys:String x:Key="ServerSettings_ModIdsTooltip">A comma-separated list of mod ids, in the order in which they should be applied.</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ModDetailsTooltip">View the mod details.</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ModUpgradeTooltip">Upgrade to the latest version of the mods that is currently available to download.</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ResetServerButtonLabel">Reset</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ResetServerButtonTooltip">Deletes all the server, player and tribe files and resets your server back to new.</sys:String>
|
||||
|
||||
<sys:String x:Key="ServerSettings_SavesLabel">Saves</sys:String>
|
||||
<sys:String x:Key="ServerSettings_AutoSavesPeriodLabel">Auto Save Period:</sys:String>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
using ServerManagerTool.Common.Lib;
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
|
|
@ -101,5 +102,41 @@ namespace ServerManagerTool.Lib
|
|||
this.Profile.LastInstalledVersion = this.Runtime.Version.ToString();
|
||||
return success;
|
||||
}
|
||||
|
||||
public async Task ResetAsync()
|
||||
{
|
||||
// delete the world, player and tribe files (SavedArks)
|
||||
var saveFolder = ServerProfile.GetProfileSavePath(Profile);
|
||||
if (Directory.Exists(saveFolder))
|
||||
{
|
||||
await Task.Run(() =>
|
||||
{
|
||||
foreach (var file in Directory.GetFiles(saveFolder, "*.*", SearchOption.TopDirectoryOnly))
|
||||
{
|
||||
File.Delete(file);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
// delete the mod files (SaveGames)
|
||||
var saveGamesFolder = ServerProfile.GetProfileSaveGamesPath(Profile);
|
||||
if (Directory.Exists(saveGamesFolder))
|
||||
{
|
||||
await Task.Run(() =>
|
||||
{
|
||||
Directory.Delete(saveGamesFolder, true);
|
||||
});
|
||||
}
|
||||
|
||||
// delete the log files (Logs)
|
||||
var logsFolder = Path.Combine(Profile.InstallDirectory, Config.Default.SavedRelativePath, Config.Default.LogsDir);
|
||||
if (Directory.Exists(logsFolder))
|
||||
{
|
||||
await Task.Run(() =>
|
||||
{
|
||||
Directory.Delete(logsFolder, true);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -745,6 +745,40 @@
|
|||
</Style>
|
||||
</ComboBox.Style>
|
||||
</ComboBox>
|
||||
<Button Grid.Row="0" Grid.Column="7" Grid.ColumnSpan="2" Margin="5,1,0,0" DataContext="{Binding Runtime, ElementName=SettingsControl}" Click="ResetServer_Click">
|
||||
<Button.Style>
|
||||
<Style BasedOn="{StaticResource {x:Type Button}}" TargetType="{x:Type Button}">
|
||||
<Setter Property="Content" Value="{DynamicResource ServerSettings_ResetServerButtonLabel}"/>
|
||||
<Setter Property="ToolTip" Value="{DynamicResource ServerSettings_ResetServerButtonTooltip}" />
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Null}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Initializing}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Running}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Stopping}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Stopped}">
|
||||
<Setter Property="IsEnabled" Value="True"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Unknown}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Updating}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Uninstalled}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Button.Style>
|
||||
</Button>
|
||||
|
||||
<Label Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Content="{DynamicResource ServerSettings_TotalConversionLabel}" ToolTip="{DynamicResource ServerSettings_TotalConversionTooltip}" VerticalAlignment="Center"/>
|
||||
<ComboBox Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="2" Margin="1" Name="TotalConversionComboBox" ItemsSource="{Binding BaseTotalConversions, ElementName=SettingsControl}" SelectedValue="{Binding TotalConversionModId, Mode=TwoWay, UpdateSourceTrigger=Explicit}" SelectedValuePath="ValueMember" DisplayMemberPath="DisplayMember" IsEditable="True" ToolTip="{DynamicResource ServerSettings_TotalConversionTooltip}" LostFocus="ComboBoxItemList_LostFocus" PreviewMouseWheel="ComboBox_PreviewMouseWheel"/>
|
||||
|
|
|
|||
|
|
@ -1081,6 +1081,29 @@ namespace ServerManagerTool
|
|||
MessageBox.Show(_globalizer.GetResourceString("ServerSettings_ArkAutoSettings_ErrorLabel"), _globalizer.GetResourceString("ServerSettings_ArkAutoSettings_ErrorTitle"), MessageBoxButton.OK, MessageBoxImage.Information);
|
||||
}
|
||||
|
||||
private async void ResetServer_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (MessageBox.Show(_globalizer.GetResourceString("ServerSettings_ResetServer_ConfirmationLabel"), _globalizer.GetResourceString("ServerSettings_ResetServer_Title"), MessageBoxButton.YesNo, MessageBoxImage.Warning) != MessageBoxResult.Yes)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
Application.Current.Dispatcher.Invoke(() => this.Cursor = System.Windows.Input.Cursors.Wait);
|
||||
|
||||
await this.Server.ResetAsync();
|
||||
|
||||
MessageBox.Show(_globalizer.GetResourceString("ServerSettings_ResetServer_SuccessfulLabel"), _globalizer.GetResourceString("ServerSettings_ResetServer_Title"), MessageBoxButton.OK, MessageBoxImage.Information);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(ex.Message, _globalizer.GetResourceString("ServerSettings_ResetServer_FailedTitle"), MessageBoxButton.OK, MessageBoxImage.Error);
|
||||
}
|
||||
finally
|
||||
{
|
||||
Application.Current.Dispatcher.Invoke(() => this.Cursor = null);
|
||||
}
|
||||
}
|
||||
|
||||
private async void SaveBackup_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
try
|
||||
|
|
|
|||
|
|
@ -7,6 +7,29 @@
|
|||
<link href="http://arkservermanager.freeforums.net/" />
|
||||
<updated>2022-06-16T00:00:00Z</updated>
|
||||
|
||||
<entry>
|
||||
<id>urn:uuid:93A04A12-C632-4C2B-AC76-42D9E476431C</id>
|
||||
<title>1.1.432 (1.1.432.1)</title>
|
||||
<summary>1.1.432.1</summary>
|
||||
<link href="" />
|
||||
<updated>2022-06-13T00:00:00Z</updated>
|
||||
<content type="xhtml">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="font-family: Arial, Verdana, Helvetica, Sans-Serif;font-size: .8em;">
|
||||
<p>
|
||||
<u style="font-size: .9em;">NEW</u>
|
||||
<br/>
|
||||
<ul>
|
||||
<li>Reset Server - added new button to reset your server. This will delete all server, player and tribe files and reset your server back to new.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
</content>
|
||||
<author>
|
||||
<name>bletch</name>
|
||||
<email>bletch1971@hotmail.com</email>
|
||||
</author>
|
||||
</entry>
|
||||
|
||||
<entry>
|
||||
<id>urn:uuid:2ADA47E8-6DD0-4231-BAB9-AE3CEE5FA72C</id>
|
||||
<title>1.1.431 (1.1.431.4)</title>
|
||||
|
|
|
|||
|
|
@ -8,94 +8,18 @@
|
|||
<updated>2022-06-16T00:00:00Z</updated>
|
||||
|
||||
<entry>
|
||||
<id>urn:uuid:84F46053-C944-4740-B030-C500310F9074</id>
|
||||
<title>1.1.431 (1.1.431.4)</title>
|
||||
<summary>1.1.431.4</summary>
|
||||
<link href="" />
|
||||
<updated>2022-06-16T00:00:00Z</updated>
|
||||
<content type="xhtml">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="font-family: Arial, Verdana, Helvetica, Sans-Serif;font-size: .8em;">
|
||||
<p>
|
||||
<u style="font-size: .9em;">BUGFIX</u>
|
||||
<br/>
|
||||
<ul>
|
||||
<li>Global Settings - fixed the bug that cleared the Backup Rcon message mode when changing languages.</li>
|
||||
</ul>
|
||||
<u style="font-size: .9em;">CHANGE</u>
|
||||
<br/>
|
||||
<ul>
|
||||
<li>pt-BR Translation file updated.</li>
|
||||
<li>zh-CN Translation file updated.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
</content>
|
||||
<author>
|
||||
<name>bletch</name>
|
||||
<email>bletch1971@hotmail.com</email>
|
||||
</author>
|
||||
</entry>
|
||||
|
||||
<entry>
|
||||
<id>urn:uuid:D3CE3BBC-97AC-40D5-B698-1E65CED7AB52</id>
|
||||
<title>1.1.431 (1.1.431.3)</title>
|
||||
<summary>1.1.431.3</summary>
|
||||
<link href="" />
|
||||
<updated>2022-06-15T00:00:00Z</updated>
|
||||
<content type="xhtml">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="font-family: Arial, Verdana, Helvetica, Sans-Serif;font-size: .8em;">
|
||||
<p>
|
||||
<u style="font-size: .9em;">CHANGE</u>
|
||||
<br/>
|
||||
<ul>
|
||||
<li>RCON Message Modes - now loads them from the gamedata file, so they can be extended without a code change.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
</content>
|
||||
<author>
|
||||
<name>bletch</name>
|
||||
<email>bletch1971@hotmail.com</email>
|
||||
</author>
|
||||
</entry>
|
||||
|
||||
<entry>
|
||||
<id>urn:uuid:2ADA47E8-6DD0-4231-BAB9-AE3CEE5FA72C</id>
|
||||
<title>1.1.431 (1.1.431.2)</title>
|
||||
<summary>1.1.431.2</summary>
|
||||
<id>urn:uuid:93A04A12-C632-4C2B-AC76-42D9E476431C</id>
|
||||
<title>1.1.432 (1.1.432.1)</title>
|
||||
<summary>1.1.432.1</summary>
|
||||
<link href="" />
|
||||
<updated>2022-06-13T00:00:00Z</updated>
|
||||
<content type="xhtml">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="font-family: Arial, Verdana, Helvetica, Sans-Serif;font-size: .8em;">
|
||||
<p>
|
||||
<u style="font-size: .9em;">BUGFIX</u>
|
||||
<u style="font-size: .9em;">NEW</u>
|
||||
<br/>
|
||||
<ul>
|
||||
<li>Player Levels - fix the conversion bug that would prevent all player levels being read from the INI file. Only values > 2147483647 were affected.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
</content>
|
||||
<author>
|
||||
<name>bletch</name>
|
||||
<email>bletch1971@hotmail.com</email>
|
||||
</author>
|
||||
</entry>
|
||||
|
||||
<entry>
|
||||
<id>urn:uuid:2ADA47E8-6DD0-4231-BAB9-AE3CEE5FA72C</id>
|
||||
<title>1.1.431 (1.1.431.1)</title>
|
||||
<summary>1.1.431.1</summary>
|
||||
<link href="" />
|
||||
<updated>2022-06-13T00:00:00Z</updated>
|
||||
<content type="xhtml">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="font-family: Arial, Verdana, Helvetica, Sans-Serif;font-size: .8em;">
|
||||
<p>
|
||||
<u style="font-size: .9em;">CHANGE</u>
|
||||
<br/>
|
||||
<ul>
|
||||
<li>Updated player levels to include the 10 new levels. Also change the additional levels from 75 to 85.\nIf you have an issue with custom level, make sure you add the new 10 levels to the end.</li>
|
||||
<li>Updated to query master timeouts from 10 seconds to 30 seconds.</li>
|
||||
<li>Reset Server - added new button to reset your server. This will delete all server, player and tribe files and reset your server back to new.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
<package id="Microsoft.Tpl.Dataflow" version="4.5.24" targetFramework="net462" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net462" />
|
||||
<package id="NLog" version="4.7.2" targetFramework="net462" />
|
||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net462" />
|
||||
<package id="TaskScheduler" version="2.8.19" targetFramework="net462" />
|
||||
<package id="TinyCsvParser" version="2.5.2" targetFramework="net462" />
|
||||
<package id="WindowsAPICodePack-Core" version="1.1.2" targetFramework="net462" />
|
||||
|
|
|
|||
|
|
@ -176,6 +176,9 @@
|
|||
<HintPath>..\packages\Microsoft.Tpl.Dataflow.4.5.24\lib\portable-net45+win8+wpa81\System.Threading.Tasks.Dataflow.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Transactions" />
|
||||
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System.Windows.Interactivity, Version=4.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Expression.Blend.Sdk.1.0.2\lib\net45\System.Windows.Interactivity.dll</HintPath>
|
||||
</Reference>
|
||||
|
|
|
|||
|
|
@ -1084,6 +1084,10 @@
|
|||
<sys:String x:Key="ServerSettings_BackupServer_Title">Backup Server</sys:String>
|
||||
<sys:String x:Key="ServerSettings_BackupServer_FailedTitle">Backup Server Error</sys:String>
|
||||
<sys:String x:Key="ServerSettings_BackupServer_SuccessfulLabel">The backup was successful.</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ResetServer_Title">Reset Server</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ResetServer_FailedTitle">Reset Server Error</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ResetServer_ConfirmationLabel">This will delete all the server files and reset your server back to new. Do you wish to proceed?</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ResetServer_SuccessfulLabel">The reset was successful.</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ShutdownServer_FailedTitle">Shutdown Server Error</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ShutdownServer_CancelledTitle">Shutdown Server Cancelled</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ShutdownServer_AlreadyOpenLabel">The shutdown window is already open for this server.</sys:String>
|
||||
|
|
@ -1161,6 +1165,8 @@
|
|||
<sys:String x:Key="ServerSettings_ModIdsTooltip">A comma-separated list of mod ids, in the order in which they should be applied.</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ModDetailsTooltip">View the mod details.</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ModUpgradeTooltip">Upgrade to the latest version of the mods that is currently available to download.</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ResetServerButtonLabel">Reset</sys:String>
|
||||
<sys:String x:Key="ServerSettings_ResetServerButtonTooltip">Deletes all the server files and resets your server back to new.</sys:String>
|
||||
|
||||
<sys:String x:Key="ServerSettings_SavesLabel">Saves</sys:String>
|
||||
<sys:String x:Key="ServerSettings_AutoSavesPeriodLabel">Auto Save Period:</sys:String>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
using ServerManagerTool.Common.Lib;
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
|
|
@ -101,5 +102,41 @@ namespace ServerManagerTool.Lib
|
|||
this.Profile.LastInstalledVersion = this.Runtime.Version.ToString();
|
||||
return success;
|
||||
}
|
||||
|
||||
public async Task ResetAsync()
|
||||
{
|
||||
// delete the world files (*.db*)
|
||||
var saveFolder = ServerProfile.GetProfileSavePath(Profile);
|
||||
if (Directory.Exists(saveFolder))
|
||||
{
|
||||
await Task.Run(() =>
|
||||
{
|
||||
foreach (var file in Directory.GetFiles(saveFolder, "*.db*", SearchOption.TopDirectoryOnly))
|
||||
{
|
||||
File.Delete(file);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
// delete the mod files (SaveGames)
|
||||
var saveGamesFolder = ServerProfile.GetProfileSaveGamesPath(Profile);
|
||||
if (Directory.Exists(saveGamesFolder))
|
||||
{
|
||||
await Task.Run(() =>
|
||||
{
|
||||
Directory.Delete(saveGamesFolder, true);
|
||||
});
|
||||
}
|
||||
|
||||
// delete the log files (Logs)
|
||||
var logsFolder = Path.Combine(Profile.InstallDirectory, Config.Default.SavedRelativePath, Config.Default.LogsRelativePath);
|
||||
if (Directory.Exists(logsFolder))
|
||||
{
|
||||
await Task.Run(() =>
|
||||
{
|
||||
Directory.Delete(logsFolder, true);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2011,9 +2011,9 @@ namespace ServerManagerTool.Lib
|
|||
|
||||
// backup the world save file
|
||||
var key = string.Empty;
|
||||
var files = new Dictionary<string, List<string>>
|
||||
var files = new Dictionary<string, List<(string, string)>>
|
||||
{
|
||||
{ key, new List<string> { worldFile } }
|
||||
{ key, new List<(string, string)> { (worldFile, worldFileName) } }
|
||||
};
|
||||
|
||||
if (Config.Default.AutoBackup_IncludeSaveGamesFolder)
|
||||
|
|
@ -2030,9 +2030,9 @@ namespace ServerManagerTool.Lib
|
|||
{
|
||||
key = file.DirectoryName.Replace(saveGamesFolder, Config.Default.SaveGamesRelativePath);
|
||||
if (files.ContainsKey(key))
|
||||
files[key].Add(file.FullName);
|
||||
files[key].Add((file.FullName, file.Name));
|
||||
else
|
||||
files.Add(key, new List<string> { file.FullName });
|
||||
files.Add(key, new List<(string, string)> { (file.FullName, file.Name) });
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -576,6 +576,40 @@
|
|||
|
||||
<Label Grid.Row="0" Grid.Column="0" VerticalAlignment="Center" Content="{DynamicResource ServerSettings_MapPathLabel}" ToolTip="{DynamicResource ServerSettings_MapPathTooltip}"/>
|
||||
<ComboBox Grid.Row="0" Grid.Column="1" Margin="1" Name="GameMapComboBox" IsEditable="True" ItemsSource="{Binding BaseGameMaps, ElementName=SettingsControl, UpdateSourceTrigger=PropertyChanged}" SelectedValue="{Binding ServerMap, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, NotifyOnSourceUpdated=True}" SelectedValuePath="ValueMember" DisplayMemberPath="DisplayMember" LostFocus="ComboBoxItemList_LostFocus" PreviewMouseWheel="ComboBox_PreviewMouseWheel" SourceUpdated="MapName_SourceUpdated" ToolTip="{DynamicResource ServerSettings_MapPathTooltip}"/>
|
||||
<Button Grid.Row="0" Grid.Column="2" Grid.ColumnSpan="2" Margin="5,1,0,0" DataContext="{Binding Runtime, ElementName=SettingsControl}" Click="ResetServer_Click">
|
||||
<Button.Style>
|
||||
<Style BasedOn="{StaticResource {x:Type Button}}" TargetType="{x:Type Button}">
|
||||
<Setter Property="Content" Value="{DynamicResource ServerSettings_ResetServerButtonLabel}"/>
|
||||
<Setter Property="ToolTip" Value="{DynamicResource ServerSettings_ResetServerButtonTooltip}" />
|
||||
<Style.Triggers>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Null}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Initializing}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Running}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Stopping}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Stopped}">
|
||||
<Setter Property="IsEnabled" Value="True"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Unknown}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Updating}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
<DataTrigger Binding="{Binding Status}" Value="{x:Static enum:ServerStatus.Uninstalled}">
|
||||
<Setter Property="IsEnabled" Value="False"/>
|
||||
</DataTrigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Button.Style>
|
||||
</Button>
|
||||
|
||||
<Label Grid.Row="1" Grid.Column="0" VerticalAlignment="Center" Content="{DynamicResource ServerSettings_MapSaveNameLabel}" ToolTip="{DynamicResource ServerSettings_MapSaveNameTooltip}"/>
|
||||
<TextBox Grid.Row="1" Grid.Column="1" Margin="1" VerticalContentAlignment="Center" Text="{Binding ServerMapSaveFileName}" ToolTip="{DynamicResource ServerSettings_MapSaveNameTooltip}"/>
|
||||
|
|
|
|||
|
|
@ -849,6 +849,29 @@ namespace ServerManagerTool
|
|||
MessageBox.Show(_globalizer.GetResourceString("ServerSettings_ServerAutoSettings_ErrorLabel"), _globalizer.GetResourceString("ServerSettings_ServerAutoSettings_ErrorTitle"), MessageBoxButton.OK, MessageBoxImage.Information);
|
||||
}
|
||||
|
||||
private async void ResetServer_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (MessageBox.Show(_globalizer.GetResourceString("ServerSettings_ResetServer_ConfirmationLabel"), _globalizer.GetResourceString("ServerSettings_ResetServer_Title"), MessageBoxButton.YesNo, MessageBoxImage.Warning) != MessageBoxResult.Yes)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
Application.Current.Dispatcher.Invoke(() => this.Cursor = System.Windows.Input.Cursors.Wait);
|
||||
|
||||
await this.Server.ResetAsync();
|
||||
|
||||
MessageBox.Show(_globalizer.GetResourceString("ServerSettings_ResetServer_SuccessfulLabel"), _globalizer.GetResourceString("ServerSettings_ResetServer_Title"), MessageBoxButton.OK, MessageBoxImage.Information);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(ex.Message, _globalizer.GetResourceString("ServerSettings_ResetServer_FailedTitle"), MessageBoxButton.OK, MessageBoxImage.Error);
|
||||
}
|
||||
finally
|
||||
{
|
||||
Application.Current.Dispatcher.Invoke(() => this.Cursor = null);
|
||||
}
|
||||
}
|
||||
|
||||
private async void SaveBackup_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
try
|
||||
|
|
|
|||
|
|
@ -7,6 +7,29 @@
|
|||
<link href="http://servermanagers.freeforums.net/" />
|
||||
<updated>2022-06-13T00:00:00Z</updated>
|
||||
|
||||
<entry>
|
||||
<id>urn:uuid:4E189446-9861-4B64-9B27-0E3E655CD1CA</id>
|
||||
<title>1.1.75 (1.1.75.1)</title>
|
||||
<summary>1.1.75.1</summary>
|
||||
<link href="" />
|
||||
<updated>2022-06-16T00:00:00Z</updated>
|
||||
<content type="xhtml">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="font-family: Arial, Verdana, Helvetica, Sans-Serif;font-size: .8em;">
|
||||
<p>
|
||||
<u style="font-size: .9em;">NEW</u>
|
||||
<br/>
|
||||
<ul>
|
||||
<li>Reset Server - added new button to reset your server. This will delete all server files and reset your server back to new.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
</content>
|
||||
<author>
|
||||
<name>bletch</name>
|
||||
<email>bletch1971@hotmail.com</email>
|
||||
</author>
|
||||
</entry>
|
||||
|
||||
<entry>
|
||||
<id>urn:uuid:4E189446-9861-4B64-9B27-0E3E655CD1CA</id>
|
||||
<title>1.1.74 (1.1.74.3)</title>
|
||||
|
|
|
|||
|
|
@ -8,64 +8,18 @@
|
|||
<updated>2022-06-16T00:00:00Z</updated>
|
||||
|
||||
<entry>
|
||||
<id>urn:uuid:C9BB0F58-3C98-4E69-A0D1-E962EB61072C</id>
|
||||
<title>1.1.74 (1.1.74.3)</title>
|
||||
<summary>1.1.74.3</summary>
|
||||
<id>urn:uuid:4E189446-9861-4B64-9B27-0E3E655CD1CA</id>
|
||||
<title>1.1.75 (1.1.75.1)</title>
|
||||
<summary>1.1.75.1</summary>
|
||||
<link href="" />
|
||||
<updated>2022-06-16T00:00:00Z</updated>
|
||||
<content type="xhtml">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="font-family: Arial, Verdana, Helvetica, Sans-Serif;font-size: .8em;">
|
||||
<p>
|
||||
<u style="font-size: .9em;">BUGFIX</u>
|
||||
<u style="font-size: .9em;">NEW</u>
|
||||
<br/>
|
||||
<ul>
|
||||
<li>Global Settings - fixed the bug that cleared the Backup Rcon message mode when changing languages.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
</content>
|
||||
<author>
|
||||
<name>bletch</name>
|
||||
<email>bletch1971@hotmail.com</email>
|
||||
</author>
|
||||
</entry>
|
||||
|
||||
<entry>
|
||||
<id>urn:uuid:74CFB107-BB04-4A41-B41A-DD6AFB1E8D0F</id>
|
||||
<title>1.1.74 (1.1.74.2)</title>
|
||||
<summary>1.1.74.2</summary>
|
||||
<link href="" />
|
||||
<updated>2022-06-15T00:00:00Z</updated>
|
||||
<content type="xhtml">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="font-family: Arial, Verdana, Helvetica, Sans-Serif;font-size: .8em;">
|
||||
<p>
|
||||
<u style="font-size: .9em;">CHANGE</u>
|
||||
<br/>
|
||||
<ul>
|
||||
<li>RCON Message Modes - now loads them from the gamedata file, so they can be extended without a code change.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
</content>
|
||||
<author>
|
||||
<name>bletch</name>
|
||||
<email>bletch1971@hotmail.com</email>
|
||||
</author>
|
||||
</entry>
|
||||
|
||||
<entry>
|
||||
<id>urn:uuid:4E189446-9861-4B64-9B27-0E3E655CD1CA</id>
|
||||
<title>1.1.74 (1.1.74.1)</title>
|
||||
<summary>1.1.74.1</summary>
|
||||
<link href="" />
|
||||
<updated>2022-06-13T00:00:00Z</updated>
|
||||
<content type="xhtml">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml" style="font-family: Arial, Verdana, Helvetica, Sans-Serif;font-size: .8em;">
|
||||
<p>
|
||||
<u style="font-size: .9em;">CHANGE</u>
|
||||
<br/>
|
||||
<ul>
|
||||
<li>Updated to query master timeouts from 10 seconds to 30 seconds.</li>
|
||||
<li>Reset Server - added new button to reset your server. This will delete all server files and reset your server back to new.</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net462" />
|
||||
<package id="NLog" version="4.7.2" targetFramework="net462" />
|
||||
<package id="System.Data.SQLite.Core" version="1.0.112.1" targetFramework="net462" />
|
||||
<package id="System.ValueTuple" version="4.5.0" targetFramework="net462" />
|
||||
<package id="TaskScheduler" version="2.8.19" targetFramework="net462" />
|
||||
<package id="WindowsAPICodePack-Core" version="1.1.2" targetFramework="net462" />
|
||||
<package id="WindowsAPICodePack-Shell" version="1.1.1" targetFramework="net462" />
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@
|
|||
<PackageReference Include="Microsoft.Tpl.Dataflow" Version="4.5.24" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
|
||||
<PackageReference Include="NLog" Version="4.7.2" />
|
||||
<PackageReference Include="System.ValueTuple" Version="4.5.0" />
|
||||
<PackageReference Include="TaskScheduler" Version="2.8.19" />
|
||||
<PackageReference Include="WindowsFirewallHelper" Version="1.6.3.40" />
|
||||
</ItemGroup>
|
||||
|
|
|
|||
|
|
@ -275,5 +275,44 @@ namespace ServerManagerTool.Common.Utils
|
|||
zip.Save();
|
||||
}
|
||||
}
|
||||
|
||||
public static void ZipFiles(string zipFile, Dictionary<string, List<(string file, string entryName)>> filesToZip, string comment = "")
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(zipFile))
|
||||
throw new ArgumentNullException(nameof(zipFile));
|
||||
|
||||
if (filesToZip is null || filesToZip.IsEmpty())
|
||||
throw new ArgumentNullException(nameof(filesToZip));
|
||||
|
||||
using (var zip = new ZipFile(zipFile))
|
||||
{
|
||||
foreach (var zipFolder in filesToZip.Keys)
|
||||
{
|
||||
filesToZip[zipFolder]
|
||||
.Where(f => !string.IsNullOrWhiteSpace(f.file) && File.Exists(f.file)).ToList()
|
||||
.ForEach(f =>
|
||||
{
|
||||
var zipEntry = zip.AddFile(f.file, zipFolder);
|
||||
var entryName = string.IsNullOrWhiteSpace(f.entryName) ? Path.GetFileName(f.file) : f.entryName;
|
||||
if (string.IsNullOrWhiteSpace(zipFolder))
|
||||
{
|
||||
zipEntry.FileName = entryName;
|
||||
}
|
||||
else
|
||||
{
|
||||
zipEntry.FileName = $"{zipFolder}/{entryName}";
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
zip.CompressionLevel = Ionic.Zlib.CompressionLevel.Default;
|
||||
if (!string.IsNullOrWhiteSpace(comment))
|
||||
{
|
||||
zip.Comment = comment;
|
||||
}
|
||||
|
||||
zip.Save();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue