public void Execute(IClient initiator, GroupInvitationRequest command) { PlayerController target = GameManager.Players.Select(x => x.Value).FirstOrDefault(x => x.Username == command.name); if (target == null || target.ID == initiator.Controller.ID) { initiator.Send(PacketBuilder.Group.PlayerDoesNotExist()); } else if (target.PlayerGroupAssembly.Group != null) { initiator.Send(PacketBuilder.Group.PlayerAlreadyInGroup()); } else if (!target.PlayerGroupAssembly.AcceptInvitations) { initiator.Send(PacketBuilder.Group.InviationBlocked()); } else { GroupController.EnqueueInvitation(initiator.Controller, target); } }