public override void ApplyOverlayUpdate(OverlayStatusUpdate OSU)
        {
            base.ApplyOverlayUpdate(OSU);

            string arbString = OSU.WidgetAppData?.TryGetPropertyPath <string>(PropertyPath);

            if (!string.IsNullOrEmpty(arbString))
            {
                try
                {
                    switch (TargetedObject)
                    {
                    case ObjectToTarget.Image:
                        m_image.material.color = YUR_Formatter.ConvertToColor(arbString);
                        break;

                    case ObjectToTarget.Text:
                        m_text.fontMaterial.color = YUR_Formatter.ConvertToColor(arbString);
                        break;

                    case ObjectToTarget.Renderer:
                        m_rend.material.SetColor("_Color", YUR_Formatter.ConvertToColor(arbString));
                        break;

                    default:
                        break;
                    }
                }
                catch (Exception e)
                {
                    YUR_Manager.Instance.Log($"Could not get update because {e.Message}");
                    YUR_Manager.Instance.OnYURUpdate.RemoveListener(ApplyOverlayUpdate);
                }
            }
        }
Beispiel #2
0
        public override void ApplyOverlayUpdate(OverlayStatusUpdate OSU)
        {
            base.ApplyOverlayUpdate(OSU);

            if (SFC == null)
            {
                SFC = transform.parent.transform.parent.GetChild(0).gameObject.GetComponent <SetFillColor>();
            }

            if (SFC != null && SFC.enabled)
            {
                SFC.enabled = false;
            }

            if (m_rend == null)
            {
                m_rend = transform.parent.transform.parent.GetChild(0).gameObject.GetComponent <Renderer>();
            }

            string arbText = OSU.WidgetAppData?.TryGetPropertyPath <string>(m_arbDataPath);

            try
            {
                if (!string.IsNullOrEmpty(arbText))
                {
                    m_rend.material.color = YUR_Formatter.ConvertToColor(arbText);
                }
            } catch (Exception e)
            {
                YUR_Manager.Instance.Log($"Could not get update because {e.Message}");
                YUR_Manager.Instance.OnYURUpdate.RemoveListener(ApplyOverlayUpdate);
            }
        }
Beispiel #3
0
        public override void ApplyOverlayUpdate(OverlayStatusUpdate OSU)
        {
            base.ApplyOverlayUpdate(OSU);

            float[] arbArray = OSU.WidgetAppData?.TryGetPropertyPath <float[]>(PropertyPath);

            try
            {
                m_transform.localPosition = YUR_Formatter.ConvertAs(arbArray, YurFormat.Vector3);
            }
            catch (Exception e)
            {
                YUR_Manager.Instance.Log($"Could not get update because {e.Message}");
                YUR_Manager.Instance.OnYURUpdate.RemoveListener(ApplyOverlayUpdate);
            }
        }
Beispiel #4
0
        protected override string DefaultDataTag => "emission"; //lol, emission

        public override void ApplyOverlayUpdate(OverlayStatusUpdate OSU)
        {
            base.ApplyOverlayUpdate(OSU);

            string[] arbArray = OSU.WidgetAppData?.TryGetPropertyPath <string[]>(PropertyPath);

            if (arbArray != null)
            {
                string[] arr = arbArray.ToArray();

                try
                {
                    m_rend.material.SetColor("_EmissionColor", YUR_Formatter.ConvertToColor(arr[0]));
                    m_rend.material.SetFloat("_Emission", float.Parse(arr[1]));
                }
                catch (Exception e)
                {
                    YUR_Manager.Instance.Log($"Could not get update because {e.Message}");
                    YUR_Manager.Instance.OnYURUpdate.RemoveListener(ApplyOverlayUpdate);
                }
            }
        }
        public override void ApplyOverlayUpdate(OverlayStatusUpdate OSU)
        {
            base.ApplyOverlayUpdate(OSU);

            object appObj = OSU.WidgetAppData?.TryGetPropertyPath <object>(PropertyPath);

            NewtonsoftSerializer s = new NewtonsoftSerializer();

            print(s.SerializeObject(OSU.WidgetAppData));

            print(appObj.GetType());

            if (appObj != null)
            {
                print(appObj.GetType());

                string formatted = "";
                if (appObj != null)
                {
                    if (appObj.GetType() == typeof(string))
                    {
                        m_text.SetText((string)appObj);
                    }
                    else
                    {
                        float convertedFloat = (float)Convert.ChangeType(appObj, typeof(float));

                        try
                        {
                            m_text.SetText(YUR_Formatter.ConvertAs(convertedFloat, format));
                        }
                        catch
                        {
                            formatted = "";
                        }
                    }
                }
            }
        }
Beispiel #6
0
        public static string GetTextTagValue(OverlayStatusUpdate info, YurDataValues tag)
        {
            string value = null;

            switch (tag)
            {
            case YurDataValues.TodaySquatCount:
                value = YUR_Formatter.ConvertAs(info.TodaySquatCount, YurFormat.NoSigValues);
                break;

            case YurDataValues.SquatCount:
                value = YUR_Formatter.ConvertAs(info.SquatCount, YurFormat.NoSigValues);
                break;

            case YurDataValues.EstOrHeartRate:
                value = YUR_Formatter.ConvertAs((info.HeartRate ?? 0) > 0? info.HeartRate.Value : info.CalculationMetrics.EstHeartRate, YurFormat.NoSigValues);
                break;

            case YurDataValues.HeartRate:
                value = YUR_Formatter.ConvertAs((info.HeartRate ?? 0), YurFormat.NoSigValues);
                break;

            case YurDataValues.TotalXP:
                value = YUR_Formatter.ConvertAs(info.TotalXP, YurFormat.NoSigValues);
                break;

            case YurDataValues.NextLevelXP:
                value = YUR_Formatter.ConvertAs((info.RankNextRequiredXP <= info.RankCurrentRequiredXP)? info.RankCurrentRequiredXP : info.RankNextRequiredXP, YurFormat.ShortK);
                break;

            case YurDataValues.CurrentLevelXP:
                value = YUR_Formatter.ConvertAs(info.RankCurrentRequiredXP, YurFormat.ShortK);
                break;

            case YurDataValues.EstRate:
                value = YUR_Formatter.ConvertAs(info.CalculationMetrics.EstHeartRate, YurFormat.NoSigValues);
                break;

            case YurDataValues.BurnRate:
                value = YUR_Formatter.ConvertAs(info.CalculationMetrics.BurnRate, YurFormat.OneSigValue);
                break;

            case YurDataValues.TodayCalories:
                value = YUR_Formatter.ConvertAs(info.TodayCalories, YurFormat.NoSigValues);
                break;

            case YurDataValues.TodayTime:
                value = YUR_Formatter.ConvertAs(info.SecondsToday, YurFormat.Time);
                break;

            case YurDataValues.TodayTimeNoSeconds:
                value = YUR_Formatter.ConvertAs(info.SecondsToday, YurFormat.TimeNoSeconds);
                break;

            case YurDataValues.WorkoutTime:
                value = YUR_Formatter.ConvertAs(info.SecondsInWorkout, YurFormat.Time);
                break;

            case YurDataValues.WorkoutTimeNoSeconds:
                value = YUR_Formatter.ConvertAs(info.SecondsInWorkout, YurFormat.TimeNoSeconds);
                break;

            case YurDataValues.WorkoutCalories:
                value = YUR_Formatter.ConvertAs(info.CurrentCalories, YurFormat.NoSigValues);
                break;

            case YurDataValues.UserRank:
                value = YUR_Formatter.ConvertAs(info.Rank, YurFormat.NoSigValues);
                break;

            case YurDataValues.ClockTime:
                value = YUR_Formatter.ConvertAs(DateTime.Now.ToString(), YurFormat.FormattedTime);
                break;

            case YurDataValues.ClockTimeSuffix:
                value = YUR_Formatter.ConvertAs(DateTime.Now.ToString(), YurFormat.TimeOfDaySignifier);
                break;

            case YurDataValues.XPCompletionPercentage:
                float nrankDiff  = info.RankNextRequiredXP - info.RankCurrentRequiredXP;
                float caltonrank = info.RankNextRequiredXP - info.TotalXP;
                value = YUR_Formatter.ConvertAs((1 - (caltonrank / nrankDiff)), YurFormat.TwoSigValues);
                break;

            default:
                //unknown
                value = null;
                break;
            }

            return(value);
        }