public love() { this.InitializeComponent(); eventList = EventsManager.getLoveEvents(); eventList.CollectionChanged += EventList_CollectionChanged; CheckVisibility.CheckButtonGridVisibility(eventList, ButtonGrid); }
/// <summary> /// Here is handled object visibility processing and filtering /// </summary> protected override void OnUpdate() { var entityQuery = GetEntityQuery(typeof(GeometryDataModels.Target)); var planes = new NativeArray <Plane>(6, Allocator.TempJob); planes.CopyFrom(GeoVision.Planes); var job2 = new CheckVisibility() { targets = entityQuery.ToComponentDataArray <GeometryDataModels.Target>(Allocator.TempJob), planes = new NativeArray <Plane>(6, Allocator.TempJob), entities = entityQuery.ToEntityArray(Allocator.TempJob) }; job2.planes.CopyFrom(planes); Dependency = job2.Schedule(job2.targets.Length, 6); Dependency.Complete(); //Wait for job completion entityCommandBuffer.AddJobHandleForProducer(Dependency); entityQuery.CopyFromComponentDataArray <GeometryDataModels.Target>(job2.targets); lastCount = entityQuery.CalculateEntityCount(); job2.planes.Dispose(); job2.entities.Dispose(); job2.targets.Dispose(); planes.Dispose(); }
private void EventList_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) { if (ViewModel.EventList != null) { int eventsNum = ViewModel.EventList.Count; CheckVisibility.CheckButtonGridVisibility(eventsNum, ButtonGrid); EmptyEventBlock.Visibility = (eventsNum == 0) ? Visibility.Visible : Visibility.Collapsed; } }
private void Page_Loaded(object sender, RoutedEventArgs e) { ViewModel.EventList = EventsManager.GetEventsByFoldIndex(foldIndex); ViewModel.EventList.CollectionChanged += EventList_CollectionChanged; if (ViewModel.EventList != null) { int eventsNum = ViewModel.EventList.Count; CheckVisibility.CheckButtonGridVisibility(eventsNum, ButtonGrid); EmptyEventBlock.Visibility = (eventsNum == 0) ? Visibility.Visible : Visibility.Collapsed; } }
internal bool OnPlayerEnteredRoom(Player player) { //we already have the player added to the connections list, as it was set when we set the Owner. if (Owner == player) { return(true); } var vis = CheckVisibility?.Invoke(player) ?? true; if (vis) { ImplObservePlayer(player); _visibility.Add(player); } return(vis); }
internal void RebuildVisibility(NetMessage ccMsg) { var destMsg = Room.GetDestroyMessage(this, RandPRpcs.Hide); var hidePlayers = new List <Player>(); var showPlayers = new List <Player>(); foreach (var player in Room.Players) { if (player == null) { continue; } if (!player.IsValid) { continue; } if (player == Owner) { continue; } var vis = CheckVisibility?.Invoke(player) ?? true; if (vis && !_visibility.Contains(player)) { ImplObservePlayer(player); _visibility.Add(player); showPlayers.Add(player); } else if (!vis && _visibility.Contains(player)) { _visibility.Remove(player); ImplIgnorePlayer(player); hidePlayers.Add(player); } } Room.SendToPlayers(hidePlayers.ToArray(), destMsg, ReliabilityMode.Ordered); Room.SendToPlayers(showPlayers.ToArray(), ccMsg, ReliabilityMode.Ordered); }
private void EventList_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) { CheckVisibility.CheckButtonGridVisibility(eventList, ButtonGrid); }