Merge pull request #635 from CyberShadow/announce-save

Add AnnounceSave option
This commit is contained in:
k0rd 2013-10-08 01:54:31 -07:00
commit 4fd766a505
3 changed files with 19 additions and 9 deletions

View file

@ -80,6 +80,7 @@ namespace TShockAPI
[Description("Bans a hardcore player on death.")] public bool BanOnMediumcoreDeath; [Description("Bans a hardcore player on death.")] public bool BanOnMediumcoreDeath;
[Description("Enable/disable Terraria's built in auto save.")] public bool AutoSave = true; [Description("Enable/disable Terraria's built in auto save.")] public bool AutoSave = true;
[Description("Enable/disable save announcements.")] public bool AnnounceSave = true;
[Description("Number of failed login attempts before kicking the player.")] public int MaximumLoginAttempts = 3; [Description("Number of failed login attempts before kicking the player.")] public int MaximumLoginAttempts = 3;

View file

@ -48,16 +48,19 @@ namespace TShockAPI
/// </summary> /// </summary>
public void OnSaveWorld(WorldSaveEventArgs args) public void OnSaveWorld(WorldSaveEventArgs args)
{ {
// Protect against internal errors causing save failures if (TShock.Config.AnnounceSave)
// These can be caused by an unexpected error such as a bad or out of date plugin
try
{ {
TShock.Utils.Broadcast("Saving world. Momentary lag might result from this.", Color.Red); // Protect against internal errors causing save failures
} // These can be caused by an unexpected error such as a bad or out of date plugin
catch (Exception ex) try
{ {
Log.Error("World saved notification failed"); TShock.Utils.Broadcast("Saving world. Momentary lag might result from this.", Color.Red);
Log.Error(ex.ToString()); }
catch (Exception ex)
{
Log.Error("World saved notification failed");
Log.Error(ex.ToString());
}
} }
} }

View file

@ -42,6 +42,7 @@ An example configuration file is below.
"KickOnMediumcoreDeath": false, "KickOnMediumcoreDeath": false,
"BanOnMediumcoreDeath": false, "BanOnMediumcoreDeath": false,
"AutoSave": true, "AutoSave": true,
"AnnounceSave": true,
"MaximumLoginAttempts": 3, "MaximumLoginAttempts": 3,
"RconPassword": "", "RconPassword": "",
"RconPort": 7777, "RconPort": 7777,
@ -141,6 +142,11 @@ The following is the official documentation for the configuration file:
**Description:** Enable/Disable Terrarias built in auto save **Description:** Enable/Disable Terrarias built in auto save
**Default:** "True" **Default:** "True"
## AnnounceSave
**Type:** Boolean
**Description:** Enable/Disable save announcements
**Default:** "True"
## BackupInterval ## BackupInterval
**Type:** Int32 **Type:** Int32
**Description:** Backup frequency in minutes. So, a value of 60 = 60 minutes. Backups are stored in the \tshock\backups folder. **Description:** Backup frequency in minutes. So, a value of 60 = 60 minutes. Backups are stored in the \tshock\backups folder.