public override bool OnRebuildObservers(HashSet<NetworkConnection> observers, bool initial)
{
if (this.forceHidden)
{
NetworkIdentity component = base.GetComponent<NetworkIdentity>();
if (component.connectionToClient != null)
{
observers.Add(component.connectionToClient);
}
return true;
}
CheckMethod checkMethod = this.checkMethod;
if (checkMethod != CheckMethod.Physics3D)
{
if (checkMethod != CheckMethod.Physics2D)
{
return false;
}
}
else
{
foreach (Collider collider in Physics.OverlapSphere(base.transform.position, (float) this.visRange))
{
NetworkIdentity identity2 = collider.GetComponent<NetworkIdentity>();
if ((identity2 != null) && (identity2.connectionToClient != null))
{
observers.Add(identity2.connectionToClient);
}
}
return true;
}
foreach (Collider2D colliderd in Physics2D.OverlapCircleAll(base.transform.position, (float) this.visRange))
{
NetworkIdentity identity3 = colliderd.GetComponent<NetworkIdentity>();
if ((identity3 != null) && (identity3.connectionToClient != null))
{
observers.Add(identity3.connectionToClient);
}
}
return true;
}