private void Broadcast(Shared.Entity.ChatMessage message) { foreach (var p in new PlayerList()) { Send(p, message); } }
protected void Broadcast(Shared.Entity.ChatMessage data) { foreach (var p in new PlayerList()) { Send(p, data); } }
private async void OnAddMessage(Shared.Entity.ChatMessage message) { if (message.Position == Vector3.Zero || message.Position.DistanceToSquared(CitizenFX.Core.Game.Player.Character.Position) < 1200) { API.SendNuiMessage(JsonConvert.SerializeObject(new { component = "chat", type = "ON_MESSAGE", message = message.Message })); } }
private void ExecuteCommand(Player player, Shared.Entity.ChatMessage command) { var parts = command.Message.Substring(1).Split(' ').ToList(); var cmd = parts[0].ToLower(); if (!Actions.ContainsKey(cmd)) { command.Message = $"[color=red]Unknown command: {cmd}[/color]"; Send(player, command); return; } Actions[cmd](player, command); }
private void OnMessageSend([FromSource] Player player, Shared.Entity.Character arg1, string arg2, Vector3 arg3) { if (arg2.Length == 0) { return; } var message = new Shared.Entity.ChatMessage() { Character = arg1, Message = arg2, Position = arg3 }; if (arg2.Substring(0, 1) == "/") { ExecuteCommand(player, message); // each command will deal with sending it back to the client return; } message.Message = $"{arg1.FirstName} {arg1.LastName}: {arg2}"; Broadcast(message); }
protected void Send(Player player, Shared.Entity.ChatMessage data) { player.TriggerEvent("fivelife.chat.addMessage", JsonConvert.SerializeObject(data)); }
public abstract void Handle(Player source, Shared.Entity.ChatMessage data);
private async void CommandFallback(Shared.Entity.ChatMessage raw) { FireServerEvent("fivelife.chat.message", CitizenFX.Core.Game.Player.ServerId, Game.Data.Character, "/" + raw.Message, CitizenFX.Core.Game.Player.Character.Position); }