public float GetGroupPriority(int frameCountWithoutSync, MyClientInfo forClient) { ProfilerShort.Begin("MyStreamingEntityStateGroup::GetGroupPriority"); StreamClientData clientData = m_clientStreamData[forClient.EndpointId.Value]; if (forClient.IsReplicableReady(Instance as IMyReplicable)) { clientData.CurrentPart = 0; clientData.ForceSend = false; clientData.ObjectData = null; clientData.FailedIncompletePackets.Clear(); clientData.SendPackets.Clear(); ProfilerShort.End(); return(0.0f); } float priority = forClient.HasReplicable(Instance as IMyReplicable) && clientData.Dirty ? Instance.GetPriority(forClient, false) * Instance.PriorityScale() : 0.0f; if (priority < 0.01f && (clientData.ForceSend || clientData.FailedIncompletePackets.Count > 0)) { priority = Instance.PriorityScale(); } ProfilerShort.End(); return(priority); }