private static void Postfix(NicknameSync __instance) { if (__instance.hub.characterClassManager.IsHost || string.IsNullOrEmpty(__instance.hub.characterClassManager.UserId)) { return; } if (!API.Features.Player.Dictionary.TryGetValue(__instance.gameObject, out API.Features.Player player)) { player = new API.Features.Player(ReferenceHub.GetHub(__instance.gameObject)); API.Features.Player.Dictionary.Add(__instance.gameObject, player); } API.Features.Log.Debug($"Player {player?.Nickname} ({player?.UserId}) connected with the IP: {player?.IPAddress}"); if (PlayerManager.players.Count >= CustomNetworkManager.slots) { API.Features.Log.Debug($"Server is full!"); } Timing.CallDelayed(0.25f, () => { if (player != null && player.IsMuted) { player.ReferenceHub.characterClassManager.SetDirtyBit(1UL); } }); var ev = new JoinedEventArgs(API.Features.Player.Get(__instance.gameObject)); Player.OnJoined(ev); }
private void OnPlayerJoin(JoinedEventArgs ev) { if (IntercomText != null) { Timing.CallDelayed(2f, () => ReferenceHub.HostHub.GetComponent <Intercom>().CustomContent = IntercomText); } }
IEnumerator <float> PlayerJoined(JoinedEventArgs ev) { yield return(Timing.WaitForSeconds(0.1f)); if (!_roundStarted) { if (_roundStartCountdown > 3) { _roundStartCountdown++; } ev.Player.Broadcast(3, "The race starts in a few seconds."); yield return(Timing.WaitForSeconds(0.1f)); ev.Player.SetRole(RoleType.Tutorial); yield return(Timing.WaitForSeconds(0.1f)); ev.Player.Position = Common.GetEvacuationZone().Position + new Vector3(0, 1f, 0); ev.Player.ShowHint( $"<size=50>Welcome to the Amazing Race!</size>\nYour goal is to escape the facility.\nNo 914, Only ClassD\nFind the keycards\n<size=50><color=red>ONLY WHO HAS O5 CAN ESCAPE!</color></size>\n\nGood Luck. You have {_roundMinutes} minutes.", 10F); } else { if (ev.Player.Role != RoleType.Spectator) { ev.Player.SetRole(RoleType.Spectator); } ev.Player.ShowHint("Sorry, you joined too late for the race."); } }
private static void Postfix(GameObject player) { try { if (!API.Features.Player.Dictionary.TryGetValue(player, out API.Features.Player newPlayer)) { newPlayer = new API.Features.Player(ReferenceHub.GetHub(player)); API.Features.Player.Dictionary.Add(player, newPlayer); } API.Features.Log.Debug($"Player {newPlayer?.Nickname} ({newPlayer?.UserId}) connected with the IP: {newPlayer?.IPAddress}"); if (PlayerManager.players.Count >= CustomNetworkManager.slots) { API.Features.Log.Debug($"Server is full!"); } Timing.CallDelayed(0.25f, () => { if (newPlayer != null && newPlayer.IsMuted) { newPlayer.ReferenceHub.characterClassManager.SetDirtyBit(1UL); } }); var ev = new JoinedEventArgs(API.Features.Player.Get(player)); Player.OnJoined(ev); } catch (Exception exception) { API.Features.Log.Error($"Exiled.Events.Patches.Events.Player.Joined: {exception}\n{exception.StackTrace}"); } }
public void OnJoin(JoinedEventArgs ev) { if (Plugin.Instance.Config.joinuse == true) { Map.Broadcast(5, Plugin.Instance.Config.Joinmessage.Replace("{player.Nickname}", ev.Player.Nickname).Replace("{player}", ev.Player.UserId)); } }
public void OnPlayerJoin(JoinedEventArgs ev) { if (!File.Exists(Path.Combine(PlayerXP.XPPath, $"{ev.Player.UserId}.json"))) { pInfoDict.Add(ev.Player.UserId, new PlayerInfo(ev.Player.Nickname)); } }
public void OnPlayerJoined(JoinedEventArgs ev) { // Add a component to the player to check AFK status. AFKComponent afkComponent = ev.Player.GameObject.gameObject.AddComponent <AFKComponent>(); afkComponent.plugin = plugin; }
private void PlayerEvents_Joined(JoinedEventArgs ev) { if (Round.IsStarted) { Timing.RunCoroutine(RespawnIn30(ev.Player)); } }
/// <inheritdoc cref="Events.Handlers.Player.OnJoined(JoinedEventArgs)"/> public void OnJoined(JoinedEventArgs ev) { if (!Instance.Config.JoinedBroadcast.Show) { return; } ev.Player.Broadcast(Instance.Config.JoinedBroadcast.Duration, Instance.Config.JoinedBroadcast.Content, Instance.Config.JoinedBroadcast.Type); }
public void OnPlayerJoin(JoinedEventArgs ev) { if (ev.Player.IPAddress != "127.0.0.1") // Do not assign AFK component to localized pet objects { // Add a component to the player to check AFK status. AFKComponent afkComponent = ev.Player.GameObject.gameObject.AddComponent <AFKComponent>(); afkComponent.plugin = this.plugin; } }
public static void OnJoined(JoinedEventArgs ev) { string message = YouTubeTutorialPlugin.Instance.Config.JoinedMessage.Replace("{player}", ev.Player.Nickname); Map.Broadcast(6, message); PlayerData.LoadData(ev.Player.UserId); }
public static void OnPlayerJoined(JoinedEventArgs ev) { ev.Player.SendConsoleMessage( "\n\n\n" + "본 서버는 호류서버에서 배포한 SCP-079\n" + "AP 전력 버그 핫픽스 플러그인을 사용 중입니다.\n" + "\n" + "문의: @호류#7777", "yellow" ); }
// Token: 0x06000005 RID: 5 RVA: 0x0000233C File Offset: 0x0000053C private static void HandlePlayerJoin(JoinedEventArgs ev) { State.AfkTime[ev.Player.ReferenceHub] = 0; State.PrevPos[ev.Player.ReferenceHub] = Vector3.zero; if (!ev.Player.ReferenceHub.serverRoles.Staff && SameThings.NicknameFilter.Any((string s) => ev.Player.Nickname.Contains(s))) { ServerConsole.Disconnect(ev.Player.GameObject, SameThings.NicknameFilterReason); } }
public void OnVerified(JoinedEventArgs ev) { string message = AdvSrvTools.Instance.Config.JoinedMessage.Replace(oldValue: "{player}", newValue: ev.Player.Nickname); int duration = AdvSrvTools.Instance.Config.JoinedMessageDuration; if (duration == 0) { return; } Exiled.API.Features.Map.Broadcast((ushort)duration, message); }
public void OnJoin(JoinedEventArgs ev) { string JoinMessage = DupecToolbox.Instance.Config.JoinBroadcastMessage.Replace("{player}", ev.Player.Nickname); bool enabled = DupecToolbox.Instance.Config.JoinBroadcastEnabled; ushort durationmessage = DupecToolbox.Instance.Config.JoinBroadcastDuration; if (enabled == true) { ev.Player.Broadcast(durationmessage, JoinMessage); } Exiled.API.Features.Log.Info("Player: " + $"{ev.Player.Nickname} Joined the server."); }
internal void OnJoined(JoinedEventArgs ev) { ev.Player.ReferenceHub.characterClassManager._enableSyncServerCmdBinding = true; ev.Player.ReferenceHub.characterClassManager.CallTargetChangeCmdBinding(ev.Player.Connection, KeyCode.G, ".specmode"); ev.Player.ReferenceHub.characterClassManager.TargetChangeCmdBinding(ev.Player.Connection, KeyCode.G, ".specmode"); ev.Player.ReferenceHub.characterClassManager.CallTargetChangeCmdBinding(ev.Player.Connection, KeyCode.B, ".f"); ev.Player.ReferenceHub.characterClassManager.TargetChangeCmdBinding(ev.Player.Connection, KeyCode.B, ".f"); ev.Player.ReferenceHub.characterClassManager.SyncServerCmdBinding(); if (!Plugin.GhostSettings.ContainsKey(ev.Player.UserId)) { Plugin.GhostSettings.Add(ev.Player.UserId, new GhostSettings()); } }
public void OnJoined(JoinedEventArgs ev) { if (ev.Player.RemoteAdminAccess) { DateTime now = DateTime.Now; int port = (int)LiteNetLib4MirrorTransport.Singleton.port; if (!File.Exists(string.Format("/home/owo/admin/{0}{1}.txt", ev.Player.UserId, port))) { File.WriteAllText(string.Format("/home/owo/admin/{0}{1}.txt", ev.Player.UserId, port), string.Format(" Подключение в: {0}", now)); return; } File.AppendAllText(string.Format("/home/owo/admin/{0}{1}.txt", ev.Player.UserId, port), string.Format(" Подключение в: {0}", now)); } }
public void OnPlayerJoin(JoinedEventArgs ev) { Timing.CallDelayed(1f, () => tcp.SendData(new RoleSync { userid = ev.Player.UserId })); tcp.SendData(new PlayerParam { eventName = "PlayerJoin", player = PlyToUser(ev.Player), param = ev.Player.DoNotTrack }); }
public void OnPlayerVerify(JoinedEventArgs ev) { if (!File.Exists(Path.Combine(PlayerXP.XPPath, $"{ev.Player.UserId}.json"))) { if (!pInfoDict.ContainsKey(ev.Player.UserId)) { pInfoDict.Add(ev.Player.UserId, new PlayerInfo(ev.Player.Nickname)); } else { pInfoDict[ev.Player.UserId] = new PlayerInfo(ev.Player.Nickname); } } }
private IEnumerator <float> OnPlayerJoined(JoinedEventArgs ev) { yield return(Timing.WaitForSeconds(0.1f)); //Allow spawning 5 sec after roundstart if (_roundStarted) { ev.Player.SetRole(RoleType.Spectator); ev.Player.Broadcast(5, "Sorry, you have joined too late and was moved to Spectator."); } else { yield return(Timing.WaitUntilDone(SpawnSeeker(ev.Player))); } }
internal void Joined(JoinedEventArgs ev) { if (Plugin.Instance.Config.Joined == "") { return; } string message = Plugin.Instance.Config.Joined.Replace("%player%", ev.Player.ToString()); message = message.Replace("%ip%", ev.Player.IPAddress); if (Plugin.Instance.Config.debug_to_console) { Log.Debug(message: "[ " + Plugin.Instance.Config.player_name + "] " + message); } Plugin.sendWebHook(Plugin.Instance.Config.player_url, message, Plugin.Instance.Config.player_name); }
public void RunOnPlayerJoin(JoinedEventArgs ev) { if (AutoScaleOn && Instance.Config.EnableKeepScale) { if (PlayersWithRetainedScale.Contains(ev.Player.UserId)) { if (!Instance.Config.DisableAutoScaleMessages) { ev.Player.Broadcast(5, $"Your player model scale was set to {Instance.Config.AutoScaleValue}x their normal size!"); } ev.Player.Scale = new Vector3(Instance.Config.AutoScaleValue, Instance.Config.AutoScaleValue, Instance.Config.AutoScaleValue); } } if (Instance.Config.EnableAhpShield) { ev.Player.ReferenceHub.gameObject.AddComponent <KeepAhpShield>(); } }
internal void OnJoined(JoinedEventArgs ev) { if (!Badges.ContainsKey(ev.Player.UserId)) { return; } List <string> rank = Badges[ev.Player.UserId]; if (!string.IsNullOrEmpty(ev.Player.RankName)) { ev.Player.RankName += $" | {rank[0]}"; ev.Player.RankColor = rank[1]; return; } #region else ev.Player.RankName = rank[0]; ev.Player.RankColor = rank[1]; ev.Player.BadgeHidden = false; #endregion }
private static void Prefix(CharacterClassManager __instance, bool value) { try { if (!value || string.IsNullOrEmpty(__instance?.UserId)) { return; } if (!API.Features.Player.Dictionary.TryGetValue(__instance.gameObject, out API.Features.Player player)) { player = new API.Features.Player(ReferenceHub.GetHub(__instance.gameObject)); API.Features.Player.Dictionary.Add(__instance.gameObject, player); } API.Features.Log.SendRaw($"Player {player?.Nickname} ({player?.UserId}) ({player?.Id}) connected with the IP: {player?.IPAddress}", ConsoleColor.Green); if (PlayerManager.players.Count >= CustomNetworkManager.slots) { API.Features.Log.Debug($"Server is full!"); } Timing.CallDelayed(0.25f, () => { if (player != null && player.IsMuted) { player.ReferenceHub.characterClassManager.SetDirtyBit(1UL); } }); var ev = new JoinedEventArgs(API.Features.Player.Get(__instance.gameObject)); Player.OnJoined(ev); } catch (Exception exception) { API.Features.Log.Error($"Exiled.Events.Patches.Events.Player.Joined: {exception}\n{exception.StackTrace}"); } }
/****************************************************************************** * ASYNC EVENT HANDLING ******************************************************************************/ public async Task ConnectChecks(JoinedEventArgs ev) { if (ToKick.TryGetValue(new PlayerToKick(ev.Player.UserId, KickReason.Ban), out var tk)) { ToKick.Remove(tk); SendClientToServer(ev.Player, 7790); } PlayerInfo pinfo; if (PlayerInfoDict.TryGetValue(ev.Player.UserId, out pinfo)) { if (pinfo.needsCreating) { await WebTask.CreatePlayer(plugin.Config.APIKey, ev.Player.UserId, ev.Player.Nickname, ev.Player.ReferenceHub.serverRoles.DoNotTrack); return; } if (pinfo.isStaff) { UserGroup ug = ServerStatic.GetPermissionsHandler().GetGroup(pinfo.adminRank); ev.Player.SetRank(pinfo.adminRank, ug); string badgetext = ug.BadgeText; switch (pinfo.adminRank) { case "owner": { pinfo.badgeText = "OWNER"; break; } case "doa": { pinfo.badgeText = "O5-COUNCIL (DIRECTOR)"; break; } case "management": { pinfo.badgeText = "SERVER MANAGER"; break; } case "headadmin": { pinfo.badgeText = "COMMANDER (HEAD-ADMIN)"; break; } case "admin": { pinfo.badgeText = "LIEUTENANT (ADMIN)"; break; } case "moderator": { pinfo.badgeText = "CADET (MOD)"; break; } case "juniormod": { pinfo.badgeText = "FACILITY GUARD (JR.MOD)"; break; } } ev.Player.RankName = badgetext; } if (pinfo.isTop20) { UserGroup rank = ev.Player.Group; if (rank == null) { ev.Player.RankName = "TOP 20 PLAYTIME"; ev.Player.RankColor = "lime"; } else { pinfo.badgeColor = rank.BadgeColor; Log.Info($"[TOP 20] {ev.Player.Nickname} ({ev.Player.UserId}) Is Top20, and is alternating badges. {rank.BadgeText} {rank.BadgeColor}"); } } PlayerInfoDict.Remove(ev.Player.UserId); // Remove old shit PlayerInfoDict.Add(ev.Player.UserId, pinfo); // Add it back } if (!plugin.Config.IsLobby) { Timing.RunCoroutine(MOTD(ev.Player)); } return; }
public void OnJoin(JoinedEventArgs av) { string message = BattleRoyale.instance.Config.JoinMessage.Replace("{player}", av.Player.DisplayNickname); Map.Broadcast(3, message); }
/// <summary> /// Invoked after a player has joined the server. /// </summary> /// <param name="ev">The <see cref="JoinedEventArgs"/> instance.</param> public static void OnJoined(JoinedEventArgs ev) => Joined.InvokeSafely(ev);
private void PreRoundJoin(JoinedEventArgs ev) { Timing.RunCoroutine(MovePlayerToShelter(ev.Player)); }
/****************************************************************************** * EVENTS ******************************************************************************/ public void OnPlayerConnect(JoinedEventArgs ev) { _ = ConnectChecks(ev); }
internal void Joined(JoinedEventArgs ev) { ev.Player.GameObject.AddComponent <PlayerHardcoreComponent>(); }