Added the option to disable karma

This commit is contained in:
juanjp600
2017-12-04 20:52:25 -03:00
parent ca30b901a6
commit e69e316f6b
3 changed files with 27 additions and 4 deletions

View File

@@ -408,6 +408,12 @@ namespace Barotrauma
});
}));
commands.Add(new Command("togglekarma", "togglekarma: Toggles the karma system.", (string[] args) =>
{
if (GameMain.Server == null) return;
GameMain.Server.KarmaEnabled = !GameMain.Server.KarmaEnabled;
}));
commands.Add(new Command("kick", "kick [name]: Kick a player out of the server.", (string[] args) =>
{
if (GameMain.NetworkMember == null || args.Length == 0) return;

View File

@@ -32,8 +32,18 @@ namespace Barotrauma.Networking
private float karma = 1.0f;
public float Karma
{
get { return karma; }
set { karma = Math.Min(Math.Max(value,0.0f),1.0f); DebugConsole.NewMessage(Name+"'s karma set to "+karma,Microsoft.Xna.Framework.Color.Yellow); }
get
{
if (GameMain.Server == null) return 1.0f;
if (!GameMain.Server.KarmaEnabled) return 1.0f;
return karma;
}
set
{
if (GameMain.Server == null) return;
if (!GameMain.Server.KarmaEnabled) return;
karma = Math.Min(Math.Max(value,0.0f),1.0f);
}
}
public byte TeamID = 0;

View File

@@ -18,7 +18,7 @@ namespace Barotrauma.Networking
{
No = 0, Maybe = 1, Yes = 2
}
partial class GameServer : NetworkMember, ISerializableEntity
{
private class SavedClientPermission
@@ -69,7 +69,7 @@ namespace Barotrauma.Networking
private bool isPublic;
private int maxPlayers;
private List<SavedClientPermission> clientPermissions = new List<SavedClientPermission>();
[Serialize(true, true)]
@@ -210,6 +210,13 @@ namespace Barotrauma.Networking
private set;
}
[Serialize(false,true)]
public bool KarmaEnabled
{
get;
set;
}
private void SaveSettings()
{
XDocument doc = new XDocument(new XElement("serversettings"));