public override void render(Display display, RenderTarget rt, AddSpriteDelegate addSprite) { base.render(display, rt, addSprite); RenderDataBattery renderData = RenderData as RenderDataBattery; float positionX = renderData.Position.X + rt.DisplayOffset.X - (renderData.InnerSize.X * 0.5f) + (renderData.Size.X * 0.5f); float positionY = renderData.Position.Y + rt.DisplayOffset.Y - (renderData.InnerSize.Y * 0.5f) + (renderData.Size.Y * 0.5f); float offsetX = renderData.Size.X; float offsetY = renderData.Size.Y; // draw batteries for (int r = 0; r < renderData.Rows; r++) { for (int c = 0; c < renderData.Cols; c++) { int index = (renderData.Cols * r) + c; if (index >= renderData.Batteries.Count) { break; } IMyBatteryBlock battery = renderData.Batteries[index]; Vector2 position = new Vector2(positionX + (offsetX * c), positionY + (offsetY * r)); drawSingleBattery(position, renderData.Scale, battery.CurrentStoredPower / battery.MaxStoredPower, (battery.CurrentInput / battery.MaxInput) - (battery.CurrentOutput / battery.MaxOutput), DataCollectorBase <IMyBatteryBlock> .isOn(battery), battery.ChargeMode, addSprite); } } }
public DAOff(DataCollectorBase <T> dc) { dc_ = dc; }
public DAFunctional(DataCollectorBase <T> dc) { dc_ = dc; }