public void ChangeMode(ChargeMode chargeMode) { foreach (IMyBatteryBlock batteryBlock in _batteryBlocks) { batteryBlock.ChargeMode = chargeMode; } }
public Charge(IMyBatteryBlock battery, string description = "") : base(description) { Current = battery.CurrentStoredPower; Max = battery.MaxStoredPower; IsCharnging = battery.IsCharging; ChargeMode = battery.ChargeMode; DefaultUnit = "MWh"; }
public static bool ChargeModePatchMethod(MyBatteryBlock __instance, ChargeMode value) { if (!Enum.IsDefined(typeof(ChargeMode), value)) { return(false); } return(true); }
public CombinationChargeData SearchChargesByMengzhu(PayType[] payTypes, ChargeMode[] chargeModes, DateTime startTime, DateTime endTime , bool isTimeRangeRequired, long lastId) { var result = new CombinationChargeData(); using (var db = DbContextFactory.CreateDbContext()) { IQueryable<Charge> charges = db.Charges.Include(a => a.TargetXiake).Include(a=>a.Handler).OrderByDescending(a => a.Id); if (lastId != 0) { charges = charges.Where(a => a.Id < lastId); } charges = charges.Where(a => payTypes.Contains(a.PayType)); charges = charges.Where(a => chargeModes.Contains(a.ChargeMode)); if (isTimeRangeRequired) { charges = charges.Where(a => a.CreateTime >= startTime && a.CreateTime <= endTime); } if (lastId == 0) { result.TotalCount = charges.Count(); } charges = charges.Take(DomainDefinition.PAGE_SIZE); foreach (Charge dp in charges) { var x = new ChargeData() { ID = dp.Id, ChargeTime = dp.CreateTime, ChargeMode = dp.ChargeMode, Comments = dp.Comments, Handler = dp.Handler.XiakeName, PayType = dp.PayType, Value = dp.Value, }; result.Items .Add(x); } if (result.Items .Count < DomainDefinition.PAGE_SIZE) { result.IsLoadedAllData = true; } } return result; }
public CombinationChargeData SearchChargesByMengzhu (PayType[] payTypes, ChargeMode[] chargeModes, DateTime startTime, DateTime endTime, bool isTimeRangeRequired, long lastId) { lock (LockObject) { Init(); return mClient.Service.SearchChargesByMengzhu(payTypes, chargeModes,startTime,endTime,isTimeRangeRequired,lastId); } }
public bool setChargeMode(ChargeMode mode) { bool result = true; foreach (IMyBatteryBlock battery in m_blocks.blocks()) { if (battery.ChargeMode != mode) { battery.ChargeMode = mode; } result = result && battery.ChargeMode == mode; } return(result); }
private static bool SetChargeModePatch(ref ChargeMode value) { return(Enum.IsDefined(typeof(ChargeMode), value)); }
void drawSingleBattery(Vector2 position, float scale, float capacity, float load, bool onoff, ChargeMode chargeMode, AddSpriteDelegate addSprite) { float borderSize = 8f * scale; float capacityBorder = borderSize * 0.5f; Vector2 poleSize = new Vector2(batterySize_.X * 0.5f, 10f) * scale; Vector2 backgroundSize = new Vector2(batterySize_.X * scale, (batterySize_.Y * scale) - poleSize.Y); Vector2 InnerSectionSize = backgroundSize - borderSize; Color borderColor = onoff == false ? borderColors_[0] : (chargeMode == ChargeMode.Recharge ? borderColors_[3] : (chargeMode == ChargeMode.Discharge ? borderColors_[4] : (load <= 0f ? borderColors_[1] : borderColors_[2]))); // draw plus pole addSprite(new MySprite(SpriteType.TEXTURE, IconNameSquareSimple, new Vector2(position.X, position.Y - backgroundSize.Y * 0.5f), poleSize, borderColor)); // draw background addSprite(new MySprite(SpriteType.TEXTURE, IconNameSquareSimple, new Vector2(position.X, position.Y + poleSize.Y * 0.5f), backgroundSize, borderColor)); // draw inner section addSprite(new MySprite(SpriteType.TEXTURE, IconNameSquareSimple, new Vector2(position.X, position.Y + poleSize.Y * 0.5f), InnerSectionSize, Template.BackgroundColor)); // react on on/off state if (onoff == true) { // draw capacity marker Vector2 capacitySize = new Vector2(InnerSectionSize.X - capacityBorder * 2f, (InnerSectionSize.Y - (capacityBorder * (capacitySegments_ + 1f))) / capacitySegments_); float capacityYOffset = capacitySize.Y + capacityBorder; float capacityYPosition = position.Y + (poleSize.Y + InnerSectionSize.Y - capacitySize.Y) * 0.5f - capacityBorder; for (int s = 0; s < 6; s++) { float lerp = (1f / capacitySegments_) * s; if (capacity <= lerp) { break; } addSprite(new MySprite(SpriteType.TEXTURE, IconNameSquareSimple, new Vector2(position.X, capacityYPosition - (capacityYOffset * s)), capacitySize, Color.Lerp(barColors_[0], barColors_[1], lerp))); } if (chargeMode == ChargeMode.Recharge) { drawChargeModeIndicator(addSprite, new Vector2(position.X, position.Y + poleSize.Y * 0.5f), InnerSectionSize.X * 1.3f, (float)(Math.PI * 1.5), borderColor); } else if (chargeMode == ChargeMode.Discharge) { drawChargeModeIndicator(addSprite, new Vector2(position.X, position.Y + poleSize.Y * 0.5f), InnerSectionSize.X * 1.3f, (float)(Math.PI * 0.5), borderColor); } } else { addSprite(new MySprite(SpriteType.TEXTURE, "Cross", new Vector2(position.X, position.Y + poleSize.Y * 0.5f), new Vector2(InnerSectionSize.X, InnerSectionSize.X) * 0.9f, Color.Red)); } }