private void OnRoomEnter([FromSource] Player source, Shared.Entity.Room obj, Shared.Entity.Character character) { var room = Database.SqLite.Repository <Shared.Entity.Room> .GetById(obj.Id); if (room == null) { return; } if (!(room.Owner.Id == character.Id || room.Allowed.FirstOrDefault(x => x.Id == character.Id) != null)) { FireEvent(room.CurrentlyInside.ToArray(), "fivelife.room.enter", false, room); return; } room.CurrentlyInside.Add(Int32.Parse(source.Handle)); Database.SqLite.Repository <Shared.Entity.Room> .Update(room); FireEvent(source, "fivelife.room.enter", true, room); FireEvent("fivelife.room.joined", Int32.Parse(source.Handle), room); }
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); }