// ReSharper disable once UnusedMember.Local private static void LogNetworkCommandsAndCheckPermissions(Console self, NetworkUser sender, string concommandName, List <string> userArgs) { StringBuilder s = new StringBuilder(); userArgs.ForEach((str) => s.AppendLine(str)); if (sender != null && sender.isLocalPlayer == false) { Log.Message(string.Format(Lang.NETWORKING_OTHERPLAYER_4, sender.userName, sender.id.value, concommandName, s.ToString())); } else if (Application.isBatchMode) { Log.Message(string.Format(Lang.NETWORKING_OTHERPLAYER_4, "Server", 0, concommandName, s.ToString())); } var canExecute = true; if (sender != null && !sender.isLocalPlayer && PermissionSystem.IsEnabled.Value) { canExecute = PermissionSystem.CanUserExecute(sender, concommandName, userArgs); } if (canExecute) { _origRunCmd(self, sender, concommandName, userArgs); ScrollConsoleDown(); } }
private void Awake() { Configuration = base.Config; new Log(Logger); #region Not Release Message #if !RELEASE //Additional references in this block must be fully qualifed as to not use them in Release Builds. string gitVersion = ""; using (System.IO.Stream stream = System.Reflection.Assembly.GetExecutingAssembly() .GetManifestResourceStream($"{this.GetType().Namespace}.Resources.CurrentCommit")) using (System.IO.StreamReader reader = new System.IO.StreamReader(stream)) { gitVersion = reader.ReadToEnd(); } Log.MessageWarning( #if DEBUG $"This is a debug build!" #elif NONETWORK $"This is a non-networked build!" #elif NODYN $"This is a build without Microsoft.CSharp.dll included. Please put that file manually in your /plugins/ folder." #elif BLEEDING $"This is a Bleeding-Edge build!" #endif , Log.Target.Bepinex); Log.MessageWarning($"Commit: {gitVersion.Trim()}", Log.Target.Bepinex); #endif #endregion Log.Message("Created by Harb, iDeathHD and . Based on RoR2Cheats by Morris1927.", LogLevel.Info, Log.Target.Bepinex); MacroSystem.Init(); PermissionSystem.Init(); Hooks.InitializeHooks(); NetworkManager.Init(); RunCmdMethod = typeof(Console).GetMethod("RunCmd", BindingFlags.Instance | BindingFlags.NonPublic); }