By and large, this would require replacing your same-grid check block.CubeGrid.EntityId == parent_program.Me.CubeGrid.EntityId with block.isSameConstructAs(parent_program.Me).
This will traverse subgrids but stop at connectors. For the most part, a block like an antenna or a cockpit being on a different subgrid has no bearing on what you do with it; aside from thrusters, of course, since they could be rotating.
My primary use case is using a rotor to use small grid PBs on a large grid ship in order to save on space, which should be fine by just replacing how you check for same-grid.
Side note, is your optional host script not on github?
By and large, this would require replacing your same-grid check
block.CubeGrid.EntityId == parent_program.Me.CubeGrid.EntityIdwithblock.isSameConstructAs(parent_program.Me).This will traverse subgrids but stop at connectors. For the most part, a block like an antenna or a cockpit being on a different subgrid has no bearing on what you do with it; aside from thrusters, of course, since they could be rotating.
My primary use case is using a rotor to use small grid PBs on a large grid ship in order to save on space, which should be fine by just replacing how you check for same-grid.
Side note, is your optional host script not on github?