Ejemplo n.º 1
0
 IEnumerator GetBatteryLevelCr(System.Action <Die, float?> outLevelAction)
 {
     yield return(StartCoroutine(SendMessageWithAckOrTimeoutCr(
                                     new DieMessageRequestBatteryLevel(),
                                     DieMessageType.BatteryLevel,
                                     5.0f,
                                     (msg) =>
     {
         var lvlMsg = (DieMessageBatteryLevel)msg;
         batteryLevel = lvlMsg.level;
         charging = lvlMsg.charging != 0;
         OnBatteryLevelChanged?.Invoke(this, lvlMsg.level, lvlMsg.charging != 0);
         outLevelAction?.Invoke(this, lvlMsg.level);
     },
                                     () =>
     {
         outLevelAction?.Invoke(this, null);
     },
                                     () =>
     {
         outLevelAction?.Invoke(this, null);
     })));
 }
 public void BatteryLevelChanged(double value)
 {
     OnBatteryLevelChanged?.Invoke(value);
 }