Skip to content

Commit

Permalink
2.1.1
Browse files Browse the repository at this point in the history
  • Loading branch information
terminator-97 committed Jul 28, 2020
1 parent c19c27c commit 33b18b1
Show file tree
Hide file tree
Showing 6 changed files with 48 additions and 35 deletions.
6 changes: 3 additions & 3 deletions SCPUtils/Commands/Help.cs
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ public bool Execute(ArraySegment<string> arguments, ICommandSender sender, out s
{
string text = "";
text = $"<color=#1BBC9B>User commands:</color> \n" +
"<color=#1BBC9B>.scputils_info, .scputils_help, .scputils_change_nickname, .scputils_change_color, .scputils_show_badge, .scputils_hide_badge, .scputils_my_info</color>";
if (CommandExtensions.IsAllowed(((CommandSender)sender).SenderId, "scputils.help") && !((CommandSender)sender).FullPermissions) text += "\n<color=#FFD700>Administration commands (Remote Admin): </color>\n" +
"<color=#FFD700>scputils_help, scputils_player_info, scputils_player_list, scputils_player_reset_preferences, scputils_player_reset, scputils_set_color, scputils_set_name, scputils_set_badge, scputils_revoke_badge, scputils_play_time, scputils_whitelist_asn, scputils_unwhitelist_asn</color>";
"<color=#1BBC9B>.scputils_info, .scputils_change_nickname, .scputils_change_color, .scputils_show_badge, .scputils_hide_badge, .scputils_my_info</color>";
if (CommandExtensions.IsAllowed(((CommandSender)sender).SenderId, "scputils.help") && ((CommandSender)sender).FullPermissions) text += "\n<color=#FFD700>Administration commands (Remote Admin): </color>\n" +
"<color=#FFD700>scputils_player_info, scputils_player_list, scputils_player_reset_preferences, scputils_player_reset, scputils_set_color, scputils_set_name, scputils_set_badge, scputils_revoke_badge, scputils_play_time, scputils_whitelist_asn, scputils_unwhitelist_asn</color>";
response = text;
return true;
}
Expand Down
28 changes: 15 additions & 13 deletions SCPUtils/Functions/EventHandlers.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
using Exiled.Events.EventArgs;
using MEC;
using System;

using Log = Exiled.API.Features.Log;

namespace SCPUtils
{
Expand All @@ -23,11 +23,21 @@ internal void OnRoundStart()
internal void OnRoundEnd(RoundEndedEventArgs ev)
{
ScpUtils.IsStarted = false;
Timing.KillCoroutines(pluginInstance.Functions.DT);
Timing.KillCoroutines(pluginInstance.Functions.DT);
foreach (var player in Exiled.API.Features.Player.List)
{
pluginInstance.Functions.SaveData(player);
}

}

internal void OnRoundRestart()
{
{
foreach (var player in Exiled.API.Features.Player.List)
{
pluginInstance.Functions.SaveData(player);
}

ScpUtils.IsStarted = false;
Timing.KillCoroutines(pluginInstance.Functions.DT);
}
Expand All @@ -41,6 +51,7 @@ internal void OnPlayerDeath(DyingEventArgs ev)
if (ev.HitInformation.GetDamageType() == DamageTypes.Tesla || ev.HitInformation.GetDamageType() == DamageTypes.Wall) pluginInstance.Functions.OnQuitOrSuicide(ev.Target);
}
}

}

internal void On079TeslaEvent(InteractingTeslaEventArgs ev)
Expand Down Expand Up @@ -79,16 +90,7 @@ internal void OnPlayerSpawn(SpawningEventArgs ev)

internal void OnPlayerLeave(LeftEventArgs ev)
{
if (ev.Player.Nickname != "Dedicated Server" && ev.Player != null && Database.PlayerData.ContainsKey(ev.Player))
{
if ((ev.Player.Team == Team.SCP || (pluginInstance.Config.AreTutorialsSCP && ev.Player.Team == Team.TUT)) && pluginInstance.Config.QuitEqualsSuicide && ScpUtils.IsStarted)
{
if (pluginInstance.Config.EnableSCPSuicideAutoWarn && pluginInstance.Config.QuitEqualsSuicide) pluginInstance.Functions.OnQuitOrSuicide(ev.Player);
}
ev.Player.GetDatabasePlayer().SetCurrentDayPlayTime();
Database.LiteDatabase.GetCollection<Player>().Update(Database.PlayerData[ev.Player]);
Database.PlayerData.Remove(ev.Player);
}
pluginInstance.Functions.SaveData(ev.Player);
}

internal void OnDecontaminate(DecontaminatingEventArgs ev)
Expand Down
2 changes: 0 additions & 2 deletions SCPUtils/Functions/Extensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,5 @@ public static void RAMessage(this CommandSender sender, string message, bool suc
sender.RaReply("SCPUtils#" + message, success, true, string.Empty);

public static string Convert(int seconds) => TimeSpan.FromSeconds(seconds).ToString();


}
}
33 changes: 23 additions & 10 deletions SCPUtils/Functions/Functions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ public void PostLoadPlayer(Exiled.API.Features.Player player)
{
var databasePlayer = player.GetDatabasePlayer();


if (!string.IsNullOrEmpty(databasePlayer.BadgeName))
{
Timing.CallDelayed(1f, () =>
Expand All @@ -105,45 +105,58 @@ public void PostLoadPlayer(Exiled.API.Features.Player player)
}
});
}

if (!string.IsNullOrEmpty(databasePlayer.ColorPreference) && databasePlayer.ColorPreference != "None")
{
Timing.CallDelayed(1.15f, () =>
{
player.RankColor = databasePlayer.ColorPreference;
});
}

if (databasePlayer.HideBadge == true)
{
Timing.CallDelayed(1.25f, () =>
{
player.BadgeHidden = true;
});
}



if (pluginInstance.Config.AutoKickBannedNames && pluginInstance.Functions.CheckNickname(player.Nickname) && !player.CheckPermission("scputils.bypassnickrestriction"))
{
Timing.CallDelayed(1.4f, () =>
Timing.CallDelayed(3f, () =>
{
player.Kick("Auto-Kick: " + pluginInstance.Config.AutoKickBannedNameMessage, "SCPUtils");
});
}

}

}

public bool CheckNickname(string name)
{
foreach (var nickname in pluginInstance.Config.BannedNickNames)
{
{
name = Regex.Replace(name, "[^a-zA-Z0-9]", "").ToLower();
string pattern = Regex.Replace(nickname.ToLower(), "[^a-zA-Z0-9]", "");
string pattern = Regex.Replace(nickname.ToLower(), "[^a-zA-Z0-9]", "");
if (Regex.Match(name, pattern).Success) return true;
}
return false;
}

public void SaveData (Exiled.API.Features.Player player)
{
if (player.Nickname != "Dedicated Server" && player != null && Database.PlayerData.ContainsKey(player))
{
if ((player.Team == Team.SCP || (pluginInstance.Config.AreTutorialsSCP && player.Team == Team.TUT)) && pluginInstance.Config.QuitEqualsSuicide && ScpUtils.IsStarted)
{
if (pluginInstance.Config.EnableSCPSuicideAutoWarn && pluginInstance.Config.QuitEqualsSuicide) pluginInstance.Functions.OnQuitOrSuicide(player);
}
player.GetDatabasePlayer().SetCurrentDayPlayTime();
Database.LiteDatabase.GetCollection<Player>().Update(Database.PlayerData[player]);
Database.PlayerData.Remove(player);
Log.Debug($"Saving data of {player.Nickname}");
}
}

}
}
10 changes: 5 additions & 5 deletions SCPUtils/Plugin.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,10 @@ public class ScpUtils : Features.Plugin<Configs>
private static readonly Lazy<ScpUtils> LazyInstance = new Lazy<ScpUtils>(() => new ScpUtils());
public static ScpUtils StaticInstance => LazyInstance.Value;
public static bool IsStarted { get; set; }
public static string pluginVersion = "2.1.0";
public static string pluginVersion = "2.1.1";
public override string Author { get; } = "Terminator_9#0507";
public override string Name { get; } = "SCPUtils";
public override Version Version { get; } = new Version(2, 1, 0);
public override Version Version { get; } = new Version(2, 1, 1);
public override Version RequiredExiledVersion { get; } = new Version(2, 0, 7);
public EventHandlers EventHandlers { get; private set; }
public Functions Functions { get; private set; }
Expand All @@ -40,12 +40,12 @@ public void LoadEvents()
{
ServerEvents.RoundStarted += EventHandlers.OnRoundStart;
ServerEvents.RoundEnded += EventHandlers.OnRoundEnd;
ServerEvents.RestartingRound += EventHandlers.OnRoundRestart;
ServerEvents.RestartingRound += EventHandlers.OnRoundRestart;
MapEvents.Decontaminating += EventHandlers.OnDecontaminate;
PlayerEvents.Joined += EventHandlers.OnPlayerJoin;
PlayerEvents.Left += EventHandlers.OnPlayerLeave;
PlayerEvents.Left += EventHandlers.OnPlayerLeave;
PlayerEvents.Spawning += EventHandlers.OnPlayerSpawn;
PlayerEvents.Dying += EventHandlers.OnPlayerDeath;
PlayerEvents.Dying += EventHandlers.OnPlayerDeath;
Exiled.Events.Handlers.Scp079.InteractingTesla += EventHandlers.On079TeslaEvent;
}

Expand Down
4 changes: 2 additions & 2 deletions SCPUtils/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,5 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("2.1.0.0")]
[assembly: AssemblyFileVersion("2.1.0.0")]
[assembly: AssemblyVersion("2.1.1.0")]
[assembly: AssemblyFileVersion("2.1.1.0")]

0 comments on commit 33b18b1

Please sign in to comment.