public void Connect()
 {
     MiroPoissonInvoker[] ikrs =
         GetComponentsInChildren <MiroPoissonInvoker> ();
     foreach (MiroPoissonInvoker ikr in ikrs)
     {
         MiroRandImpluse imp = ikr.GetComponent <MiroRandImpluse> ();
         UnityAction     act = imp.RandImpluse;
         ikr._PoissonProcessEvent = new UnityEvent();
         ikr._PoissonProcessEvent.AddListener(act);
     }
     _Connected.Invoke();
 }
 public void AddMiroImpluse()
 {
     foreach (GameObject gb in _Objs)
     {
         MiroRandImpluse impluse =
             gb.GetComponent <MiroRandImpluse> ();
         if (impluse == null)
         {
             impluse = gb.AddComponent <MiroRandImpluse> ();
         }
         Rigidbody2D rb = gb.GetComponent <Rigidbody2D> ();
         if (rb == null)
         {
             rb = gb.AddComponent <Rigidbody2D> ();
         }
         rb.gravityScale = 0.0f;
         _AddImpluse.Invoke();
         if (_FixRotation)
         {
             rb.constraints = RigidbodyConstraints2D.FreezeRotation;
         }
     }
 }