示例#1
0
        public static void HandleThermometerThresholdReached(object sender, TemperatureThresholdEventArgs temperatureThresholdEventArgs)
        {
            TemperatureThreshold temperatureThreshold = temperatureThresholdEventArgs.TemperatureThreshold;
            string               name        = temperatureThreshold.Name;
            Temperature          temperature = temperatureThreshold.Temperature;
            TemperatureDirection direction   = temperatureThreshold.Direction;
            string               message     = $"Reached temperature threshold: {name}, temperature = {temperature:F1}, Direction = {direction}";

            WriteLine(message);
        }
        private void HandleTemperatureThresholdReached(object sender, TemperatureThresholdEventArgs e)
        {
            TemperatureThreshold temperatureThreshold = e.TemperatureThreshold;

            _name        = temperatureThreshold.Name;
            _temperature = temperatureThreshold.Temperature;
            _tolerance   = temperatureThreshold.Tolerance;
            _direction   = temperatureThreshold.Direction;

            _eventHandlerCalledCount++;
        }
    protected override void ApplyChanges()
    {
        float newTarget = (BaseMaxValue / 2) - ((OptimalValue - TargetValue) / Insulation);

//		print ("Target Value " + newTarget);
        CurrentValue = Mathf.Clamp(Mathf.Lerp(CurrentValue, newTarget, CurrentChangeRate * PlayerNeedManagerTarget.GlobalChangeRate), BaseMinValue, BaseMaxValue);
        foreach (TemperatureThreshold threshold in Thresholds)
        {
            if (CurrentValue <= threshold.Temperature)
            {
                CurrentThreshold = threshold;
                break;
            }
        }
    }
示例#4
0
        private void LinkedListInsertSorted(TemperatureThreshold item)
        {
            var node = thresholds.First;

            while (node != null)
            {
                if (item.UpThreshold <= node.Value.UpThreshold)
                {
                    thresholds.AddBefore(node, item);
                    return;
                }

                node = node.Next;
            }

            thresholds.AddLast(item);
        }