public void ExplodeAmmo(MyAmmoBase ammo)
 {
     // Explode only my missiles to prevent circullar SEND/RECEIVE
     if (IsControlledByMe(ammo))
     {
         var msg = new MyEventAmmoExplosion();
         msg.AmmoBaseEntityId = ammo.EntityId.Value.NumericValue;
         msg.Position         = new MyMwcPositionAndOrientation(ammo.WorldMatrix);
         Peers.SendToAll(ref msg, NetDeliveryMethod.ReliableUnordered);
     }
 }
        void OnAmmoExplosion(ref MyEventAmmoExplosion msg)
        {
            MyEntity ammoBase;

            if (MyEntities.TryGetEntityById(new MyEntityIdentifier(msg.AmmoBaseEntityId), out ammoBase) && ammoBase is MyAmmoBase)
            {
                var ammo = (MyAmmoBase)ammoBase;
                ammo.WorldMatrix = msg.Position.GetMatrix();
                ammo.IsDummy     = false;
                ammo.Explode();
            }
        }