public override void Init(MyObjectBuilder_EntityBase objectBuilder) { this.objectBuilder = objectBuilder; generator = Entity as IMyGravityGeneratorSphere; generator.NeedsUpdate |= MyEntityUpdateEnum.EACH_10TH_FRAME; added = false; }
bool FuncTest(IMyGravityGeneratorSphere block) { //Spherical Gravity Generator //Interface name: IMyGravityGeneratorSphere //Parent: IMyGravityGeneratorBase //Parent: IMyFunctionalBlock //Fields: float Radius = block.Radius; float Gravity = block.Gravity; return(true); }
/* public Gravity(IMyCubeGrid grid) { if(grid == null) throw new Exception("grid can not be null!"); List<IMySlimBlock> blocks = new List<IMySlimBlock>(); grid.GetBlocks(blocks, b => b.FatBlock != null && b.FatBlock is IMyGravityGeneratorSphere); if(blocks.Count == 0 || blocks[0] == null) throw new Exception("grid does not contain a spherical gravity generator!"); CreateFromGG(blocks[0].FatBlock as IMyGravityGeneratorSphere); } */ public Gravity(IMyGravityGeneratorSphere generator) { CreateFromGG(generator); }
private void CreateFromGG(IMyGravityGeneratorSphere generator) { if (generator == null) throw new Exception("generator can not be null!"); this.generator = generator; center = (generator.CubeGrid as IMyCubeGrid).GridIntegerToWorld(generator.Position); }
public static void RemoveGravityPoint(IMyGravityGeneratorSphere generator) { gravityPoints.RemoveAll(gravity => gravity.generator == generator); }