コード例 #1
0
        public async Task <string> BruteForceLight(Light light)
        {
            Random       random    = new Random();
            HueConnector connector = room.getConnector();

            while (bruteForce)
            {
                light.state.on = !light.state.on;
                light.updateAll("state");

                if (random.Next(10) >= 5)
                {
                    light.name = getRandomName();
                    await connector.changename(light);

                    light.updateAll("name");
                }
                light.state.hue = random.Next(65535);
                light.state.sat = random.Next(254);
                light.state.bri = random.Next(154) + 100;
                light.updateAll("color");
                string response = await connector.changestate(light, false);

                if (response == null)
                {
                    return("");
                }
            }
            return("");
        }
コード例 #2
0
        private void RandomNames(object sender, RoutedEventArgs e)
        {
            Random random     = new Random();
            var    collection = getRandomNames();

            foreach (var light in lights)
            {
                light.name = collection.ElementAt(random.Next(collection.Count)).name;
                connector.changename(light);
                light.updateAll("name");
            }
        }
コード例 #3
0
        private void ButtonBase_OnClick(object sender, RoutedEventArgs e)
        {
            if (lights.Count == 1 && NameBox.Text != lights.ElementAt(0).name)
            {
                lights.ElementAt(0).name = NameBox.Text;
                connector.changename(lights.ElementAt(0));
                lights.ElementAt(0).updateAll("name");
            }
            if (ComboBox.SelectedItem != null && ComboBox.SelectedIndex > 0)
            {
                executeAnimations();
            }

            Hide();
        }