From c19d6e98f56c991c000be7fefd83bbd6d9ef3320 Mon Sep 17 00:00:00 2001 From: RaidMax Date: Mon, 16 Oct 2017 22:47:41 -0500 Subject: [PATCH] Added IManager parameter to IPlugin.OnLoadAsync --- Admin/Manager.cs | 2 +- Admin/lib/SharedLibrary.dll | Bin 108544 -> 108544 bytes Admin/webfront/main.html | 2 +- Admin/webfront/stats.html | 6 +++--- Plugins/EventAPI/Plugin.cs | 2 +- Plugins/FastRestart/Plugin.cs | 2 +- Plugins/MessageBoard/Plugin.cs | 2 +- Plugins/SimpleStats/Plugin.cs | 29 ++++++++++------------------ Plugins/SimpleStats/StatsPage.cs | 2 +- Plugins/Tests/Plugin.cs | 2 +- Plugins/VoteMap/Plugin.cs | 2 +- Plugins/Welcome/Plugin.cs | 2 +- SharedLibrary/Interfaces/IPlugin.cs | 2 +- 13 files changed, 23 insertions(+), 32 deletions(-) diff --git a/Admin/Manager.cs b/Admin/Manager.cs index 0d56242ae..d84098341 100644 --- a/Admin/Manager.cs +++ b/Admin/Manager.cs @@ -85,7 +85,7 @@ namespace IW4MAdmin { try { - Plugin.OnLoadAsync(); + Plugin.OnLoadAsync(this); } catch (Exception e) diff --git a/Admin/lib/SharedLibrary.dll b/Admin/lib/SharedLibrary.dll index 7ca9ddb8f1d4e1977497e925562aef9f85555e1f..4c8d144c7833d68c9b7cac0ac664a9dc7ba8ebc5 100644 GIT binary patch delta 12289 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 OG^f7KF0zK(68{H^T=Z1{ delta 12266 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 Tzv}qO+qY-E%6??ET~hxCO?d7} diff --git a/Admin/webfront/main.html b/Admin/webfront/main.html index 6eb83337b..26ab93834 100644 --- a/Admin/webfront/main.html +++ b/Admin/webfront/main.html @@ -2,7 +2,7 @@ function getPlayerHistoryChart(playerHistory, i) { /////////////////////////////////////// - // thanks to cnavas js :( + // thanks to canvasjs :( playerHistory.forEach(function(item, i) { playerHistory[i].x = new Date(playerHistory[i].x); diff --git a/Admin/webfront/stats.html b/Admin/webfront/stats.html index 55601c308..4a371cd23 100644 --- a/Admin/webfront/stats.html +++ b/Admin/webfront/stats.html @@ -1,6 +1,6 @@ 
- +
@@ -135,8 +135,8 @@ $(document).ready(function () { $('#KillEventCount').on('input change', function () { $(this).next().text('Showing ' + $(this).val() + ' Kills'); - if ($(this).val() > 300) - refreshInterval = 500; + if ($(this).val() > 999) + refreshInterval = 5000; else refreshInterval = 250; }); diff --git a/Plugins/EventAPI/Plugin.cs b/Plugins/EventAPI/Plugin.cs index d537a76d0..824b3b8bc 100644 --- a/Plugins/EventAPI/Plugin.cs +++ b/Plugins/EventAPI/Plugin.cs @@ -95,7 +95,7 @@ namespace EventAPI } } - public async Task OnLoadAsync() + public async Task OnLoadAsync(IManager manager) { APIEvents = new Queue(); flaggedMessagesText = new List(); diff --git a/Plugins/FastRestart/Plugin.cs b/Plugins/FastRestart/Plugin.cs index d017ad31f..024202a17 100644 --- a/Plugins/FastRestart/Plugin.cs +++ b/Plugins/FastRestart/Plugin.cs @@ -72,7 +72,7 @@ namespace Plugin } } - public async Task OnLoadAsync() + public async Task OnLoadAsync(IManager manager) { ConfigManager = new ConfigurationManager(typeof(FastRestartPlugin)); FastRestarts = new Dictionary(); diff --git a/Plugins/MessageBoard/Plugin.cs b/Plugins/MessageBoard/Plugin.cs index a66098d53..ebdb9c545 100644 --- a/Plugins/MessageBoard/Plugin.cs +++ b/Plugins/MessageBoard/Plugin.cs @@ -33,7 +33,7 @@ namespace MessageBoard.Plugin } } - public async Task OnLoadAsync() + public async Task OnLoadAsync(IManager manager) { ManagerInstance = new Forum.Manager(); ManagerInstance.Start(); diff --git a/Plugins/SimpleStats/Plugin.cs b/Plugins/SimpleStats/Plugin.cs index e766bc7c5..8c56329f9 100644 --- a/Plugins/SimpleStats/Plugin.cs +++ b/Plugins/SimpleStats/Plugin.cs @@ -189,10 +189,18 @@ namespace StatsPlugin get { return "RaidMax"; } } - public async Task OnLoadAsync() + public async Task OnLoadAsync(SharedLibrary.Interfaces.IManager manager) { statLists = new List(); ServerStats = new Dictionary(); + ManagerInstance = manager; + + WebService.PageList.Add(new StatsPage()); + WebService.PageList.Add(new KillStatsJSON()); + + ManagerInstance.GetMessageTokens().Add(new MessageToken("TOTALKILLS", GetTotalKills)); + ManagerInstance.GetMessageTokens().Add(new MessageToken("TOTALPLAYTIME", GetTotalPlaytime)); + try { @@ -219,24 +227,7 @@ namespace StatsPlugin { if (E.Type == Event.GType.Start) { - if (ManagerInstance == null) - { - ManagerInstance = S.Manager; - lock (WebService.PageList) - { - WebService.PageList.Add(new StatsPage()); - WebService.PageList.Add(new KillStatsJSON()); - } - } - statLists.Add(new StatTracking(S.GetPort())); - - if (statLists.Count == 1) - { - S.Manager.GetMessageTokens().Add(new MessageToken("TOTALKILLS", GetTotalKills)); - S.Manager.GetMessageTokens().Add(new MessageToken("TOTALPLAYTIME", GetTotalPlaytime)); - } - ServerStats.Add(S.GetPort(), new ServerStatInfo()); } @@ -529,7 +520,7 @@ namespace StatsPlugin public List GetKillsByMap(Map map, int count) { var mapID = ParseEnum.Get(map.Name, typeof(IW4Info.MapName)); - var queryResult = GetDataTable($"select * from KILLS where MapID == {(int)mapID} LIMIT {count} OFFSET (SELECT COUNT(*) FROM KILLS)-500"); //GetDataTable("KILLS", new KeyValuePair("MapID", mapID)); + var queryResult = GetDataTable($"select * from KILLS where MapID == {(int)mapID} LIMIT {count} OFFSET (SELECT COUNT(*) FROM KILLS) - {count}"); var resultList = new List(); if (queryResult?.Rows.Count > 0) diff --git a/Plugins/SimpleStats/StatsPage.cs b/Plugins/SimpleStats/StatsPage.cs index b7f4aab96..6786a3c82 100644 --- a/Plugins/SimpleStats/StatsPage.cs +++ b/Plugins/SimpleStats/StatsPage.cs @@ -55,7 +55,7 @@ namespace StatsPlugin ServerMap = s.CurrentMap.Alias, ServerInfo = Stats.ServerStats[s.GetPort()], Minimap = MinimapConfig.Read(@"Config\minimaps.cfg").MapInfo.Where(m => m.MapName == s.CurrentMap.Name), - MapKills = selectCount < 300 ? Stats.ServerStats[s.GetPort()].GetKillQueue().ToArray() + MapKills = selectCount < 999 ? Stats.ServerStats[s.GetPort()].GetKillQueue().ToArray() .Skip(Math.Min(Stats.MAX_KILLEVENTS - selectCount, Stats.ServerStats[s.GetPort()].GetKillQueue().Count - selectCount)) : Stats.statLists.FirstOrDefault(x => x.Port == s.GetPort()).playerStats.GetKillsByMap(s.CurrentMap, selectCount) }) diff --git a/Plugins/Tests/Plugin.cs b/Plugins/Tests/Plugin.cs index 5cf4818fa..8eb9eb63b 100644 --- a/Plugins/Tests/Plugin.cs +++ b/Plugins/Tests/Plugin.cs @@ -43,7 +43,7 @@ namespace IW4MAdmin.Plugins } } - public async Task OnLoadAsync() + public async Task OnLoadAsync(IManager manager) { Interval = DateTime.Now; } diff --git a/Plugins/VoteMap/Plugin.cs b/Plugins/VoteMap/Plugin.cs index 67236b8bf..19cabbdb1 100644 --- a/Plugins/VoteMap/Plugin.cs +++ b/Plugins/VoteMap/Plugin.cs @@ -210,7 +210,7 @@ namespace Votemap_Plugin } } - public async Task OnLoadAsync() + public async Task OnLoadAsync(IManager manager) { serverVotingList = new List(); } diff --git a/Plugins/Welcome/Plugin.cs b/Plugins/Welcome/Plugin.cs index 8ae1f3d65..7e10f72e7 100644 --- a/Plugins/Welcome/Plugin.cs +++ b/Plugins/Welcome/Plugin.cs @@ -84,7 +84,7 @@ namespace Welcome_Plugin } } - public async Task OnLoadAsync() + public async Task OnLoadAsync(IManager manager) { PlayerPings = new Dictionary(); PingAverageCount = 1; diff --git a/SharedLibrary/Interfaces/IPlugin.cs b/SharedLibrary/Interfaces/IPlugin.cs index f6e5d7521..a6b24fcae 100644 --- a/SharedLibrary/Interfaces/IPlugin.cs +++ b/SharedLibrary/Interfaces/IPlugin.cs @@ -5,7 +5,7 @@ namespace SharedLibrary.Interfaces { public interface IPlugin { - Task OnLoadAsync(); + Task OnLoadAsync(IManager manager); Task OnUnloadAsync(); Task OnEventAsync(Event E, Server S); Task OnTickAsync(Server S);