Ejemplo n.º 1
0
        public UseItem(Player player, Monster monster)
        {
            var factory = new DbContextFactory();
            var context = factory.CreateDbContext(null);

            this.Monster = monster;
            this.Player  = context.Players.First(p => p.Id == player.Id);
            this.Items   = Player.GetItems();

            foreach (Item item in Items)
            {
                options.Add(new Option(item.Name, () =>
                {
                    Player.UseItem(item);
                    options.Clear();
                    Console.Read();
                    new Fight(this.Player, this.Monster, false);
                }));
            }

            options.Add(new Option("Annuler", () =>
            {
                options.Clear();
                Console.Clear();
                new Fight(Player, Monster, true);
            }));

            var selector = new OptionSelector(options);
        }
Ejemplo n.º 2
0
        public ChooseWeapon(Player player, Monster monster)
        {
            var factory = new DbContextFactory();
            var context = factory.CreateDbContext(null);

            this.Player  = player;
            this.Monster = monster;
            Weapons      = Player.GetWeapons();

            foreach (Weapon weapon in Weapons)
            {
                options.Add(new Option(weapon.Name, () =>
                {
                    options.Clear();
                    Console.Clear();
                    new Attack(Player, weapon, Monster);
                    this.Monster = context.Monsters.First(m => m.Id == Monster.Id);
                    new Fight(Player, Monster, false);
                }));
            }

            options.Add(new Option("Annuler", () =>
            {
                options.Clear();
                Console.Clear();
                new Fight(Player, Monster, true);
            }));

            var selector = new OptionSelector(options);
        }
        public void Setup()
        {
            _mockPrompt = Fixture.Mock <IPrompt>();
            _mockParser = Fixture.Mock <IOptionParser>();
            GivenSuccessfulParseOnFirstTry();

            _selector = Fixture.Create <OptionSelector>();
        }
    private void OnEnable()
    {
        //default elements to draw first
        loopback          = serializedObject.FindProperty("loopback");
        dataType          = serializedObject.FindProperty("dataType");
        fitText           = serializedObject.FindProperty("fitText");
        includeObjectType = serializedObject.FindProperty("includeType");

        OptionSelector options = target as OptionSelector;

        dt = options.dataType;
    }
Ejemplo n.º 5
0
        public Home()
        {
            // Define Options
            options = new List <Option>
            {
                new Option("1 - Créer une partie", () => new CreateGame()),
                new Option("2 - Charger une partie", () => new LoadGame()),
                new Option("3 - A propos", () => new About()),
                new Option("4 - Quitter", () => Environment.Exit(0)),
            };

            var selector = new OptionSelector(options);
        }
Ejemplo n.º 6
0
 /// <summary>
 /// Create Instance or Destroy script if one already exists
 /// Set Unused sets
 /// </summary>
 void Awake()
 {
     if (PanelSwitcher.Instance == null)
     {
         Instance       = this;
         optionSelector = GetComponent <OptionSelector>();
     }
     else
     {
         Debug.Log("A Panel Switcher already exists in the scene, this script will destroy itself", this.gameObject);
         Destroy(this);
     }
 }
Ejemplo n.º 7
0
 /// <summary>
 /// Create Instance or Destroy script if one already exists
 /// Set Unused sets
 /// </summary>
 void Awake()
 {
     if (OptionSelector.Instance == null)
     {
         Instance      = this;
         unusedLetters = letters;
         unusedNumbers = numbers;
     }
     else
     {
         Debug.Log("An Option Selector already exists in the scene, this script will destroy itself", this.gameObject);
         Destroy(this);
     }
 }
Ejemplo n.º 8
0
        private void InitMenuUI()
        {
            menu = new PenMenuControl()
            {
                Width = 325, Height = 325, RenderTransform = new TranslateTransform(), Visibility = Visibility.Hidden, IsEnabled = false
            };
            menu.MenuCommandFireEvent += menu_PenMenuCommandFireEvent;
            menuLayer.Children.Add(menu);

            selector = new OptionSelector();
            selector.SetVisible(false);
            selector.SelectedEvent += selector_SelectedEvent;
            menuLayer.Children.Add(selector);
        }
Ejemplo n.º 9
0
        public override void HandleInput()
        {
            if (_selectedOption != null)
            {
                _selectedOption.Update();

                if (_selectedOption.Exit)
                {
                    _selector.visible = true;

                    _selectedOption.Enabled = false;
                    _selectedOption.Exit    = false;
                    _selectedOption         = null;
                    _state = _lastState;
                    SetSelectorPos();
                }
            }
            else
            {
                if (KeyInput.JustPressedRebindableKey(KeyFunctions.Up))
                {
                    if (_state == ConfigState.KeybindsLabel)
                    {
                        return;
                    }

                    _state--;
                }
                else if (KeyInput.JustPressedRebindableKey(KeyFunctions.Down))
                {
                    if (_state >= ConfigState.LanguageLabel)
                    {
                        return;
                    }

                    _state++;
                }
                else if (KeyInput.JustPressedRebindableKey(KeyFunctions.Accept))
                {
                    SetSettingsState();
                }
                else
                {
                    base.HandleInput();
                }
            }
        }
Ejemplo n.º 10
0
    private void UpdateWidget(GameObject widget_go, ChoreGroup chore_group, IPersonalPriorityManager priority_mgr)
    {
        int  fgIndex = 0;
        int  value   = 0;
        bool flag    = priority_mgr.IsChoreGroupDisabled(chore_group);

        if (!flag)
        {
            value = priority_mgr.GetPersonalPriority(chore_group);
        }
        value = Mathf.Clamp(value, 0, 5);
        for (int i = 0; i < JobsTableScreen.priorityInfo.Count - 1; i++)
        {
            PriorityInfo priorityInfo = JobsTableScreen.priorityInfo[i];
            if (priorityInfo.priority == value)
            {
                fgIndex = i;
                break;
            }
        }
        OptionSelector component  = widget_go.GetComponent <OptionSelector>();
        int            num        = priority_mgr?.GetAssociatedSkillLevel(chore_group) ?? 0;
        Color32        fillColour = new Color32(byte.MaxValue, byte.MaxValue, byte.MaxValue, 128);

        if (num > 0)
        {
            float num2 = (float)(num - skillLevelLow);
            num2      /= (float)(skillLevelHigh - skillLevelLow);
            fillColour = Color32.Lerp(skillOutlineColourLow, skillOutlineColourHigh, num2);
        }
        component.ConfigureItem(flag, new OptionSelector.DisplayOptionInfo
        {
            bgOptions  = null,
            fgOptions  = prioritySprites,
            bgIndex    = 0,
            fgIndex    = fgIndex,
            fillColour = fillColour
        });
        ToolTip componentInChildren = widget_go.transform.GetComponentInChildren <ToolTip>();

        if ((UnityEngine.Object)componentInChildren != (UnityEngine.Object)null)
        {
            componentInChildren.toolTip      = HoverPersonalPriority(widget_go);
            componentInChildren.forceRefresh = true;
        }
    }
Ejemplo n.º 11
0
        private void SetSettingsState()
        {
            switch (_state)
            {
            //case ConfigState.KeybindsLabel:
            //    _state = ConfigState.SettingKeyBinds;
            //break;
            case ConfigState.SetBgmLabel:
                _selectedOption = _musicSlider;
                break;

            case ConfigState.SetSfxLabel:
                _selectedOption = _sfxSlider;
                break;

            case ConfigState.AutosaveLabel:
                _selectedOption = _autosaveSetter;
                break;

            //case ConfigState.ResolutionLabel:
            //    _state = ConfigState.SettingResolution;
            //    break;
            //case ConfigState.ScalingLabel:
            //    _state = ConfigState.SettingScale;
            //    break;
            case ConfigState.LanguageLabel:
                _selectedOption = _languageSetter;
                break;

            default:
                _state          = ConfigState.KeybindsLabel;
                _selectedOption = null;
                break;
            }

            if (_selectedOption != null)
            {
                _selector.visible       = false;
                _selectedOption.Enabled = true;
            }

            SoundManager.PlaySoundEffect("menu_select");

            SetSelectorPos();
        }
    public override void OnInspectorGUI()
    {
        serializedObject.Update();
        DrawDefaultElements();

        OptionSelector options = target as OptionSelector;

        if (dt != options.dataType && Application.isPlaying)
        {
            options.FireEvent(); dt = options.dataType;
        }

        if (options.dataType == OptionSelector.DataType.Numeric)
        {
            options.minInt = EditorGUILayout.IntField("Min", options.minInt);
            options.maxInt = EditorGUILayout.IntField("Max", options.maxInt);
        }
        else if (options.dataType == OptionSelector.DataType.Decimal)
        {
            options.minFloat  = EditorGUILayout.FloatField("Min", options.minFloat);
            options.maxFloat  = EditorGUILayout.FloatField("Max", options.maxFloat);
            options.increment = EditorGUILayout.FloatField("Increment", options.increment);
        }
        else if (options.dataType == OptionSelector.DataType.String)
        {
            EditorGUILayout.PropertyField(serializedObject.FindProperty("stringValues"), true);
        }
        else if (options.dataType == OptionSelector.DataType.Enum)
        {
            EditorGUILayout.LabelField("Set Enum by script: OptionSelector.SetEnumType(Enum);");
        }
        else if (options.dataType == OptionSelector.DataType.Object)
        {
            EditorGUILayout.PropertyField(serializedObject.FindProperty("objectValues"), true);
            EditorGUILayout.PropertyField(includeObjectType);
        }
        else if (options.dataType == OptionSelector.DataType.Custom)
        {
            EditorGUILayout.LabelField("Set custom data by script: OptionSelector.SetCustomType(object);");
        }

        EditorGUILayout.Space();
        serializedObject.ApplyModifiedProperties();
    }
Ejemplo n.º 13
0
    private GameObject GetWidget(GameObject parent)
    {
        GameObject     widget_go = Util.KInstantiateUI(Assets.UIPrefabs.TableScreenWidgets.PriorityGroupSelector, parent, true);
        OptionSelector component = widget_go.GetComponent <OptionSelector>();

        component.Initialize(widget_go);
        component.OnChangePriority = delegate(object widget, int delta)
        {
            onChangePriority(widget, delta);
        };
        ToolTip[] componentsInChildren = widget_go.transform.GetComponentsInChildren <ToolTip>();
        if (componentsInChildren != null)
        {
            ToolTip[] array = componentsInChildren;
            foreach (ToolTip toolTip in array)
            {
                toolTip.OnToolTip = (() => onHoverWidget(widget_go));
            }
        }
        return(widget_go);
    }
Ejemplo n.º 14
0
        private static void Main(string[] args)
        {
            var options   = OptionSelector.ReadOptions();
            var mineField = MineFiedlBuilder.GenerateRandom(options.MinesCount, options.Size);
            var gameState = Game.Start(mineField);


            using (var graphics = Graphics.Init(options.Size))
            {
                Title.Draw(graphics, "SPACE-falg  ENTER-open  Q-quit  U-undo");
                Grid.Draw(graphics);

                GameResult result;
                do
                {
                    Board.Draw(graphics, mineField, gameState.Covers());
                    Cursor.Draw(graphics, gameState.CursorPosition);
                    var key     = Console.ReadKey(true).Key;
                    var command = key.ToCommand();
                    gameState = command.Invoke(gameState, mineField);
                    result    = gameState.Evaluate(mineField);
                } while (!result.IsGameOver());

                var allMinesUncovered = gameState
                                        .Covers()
                                        .UncoverRange(
                    mineField.Mines());

                Board.Draw(graphics, mineField, allMinesUncovered);
                Title.Draw(
                    graphics,
                    result.HasFailed
                        ? "Sorry, you lost this game. Better luck next time!"
                        : "Congratulations, you won the game!",
                    "Press any key to EXIT ..."
                    );
                Console.ReadKey(true);
            }
        }
Ejemplo n.º 15
0
        public LoadGame()
        {
            var factory = new DbContextFactory();
            var context = factory.CreateDbContext(null);

            Saves = context.Saves.ToList();
            if (Saves.Count > 0)
            {
                foreach (Save save in Saves)
                {
                    options.Add(new Option(save.Name, () => new Gameplay(save)));
                }
            }
            else
            {
                Console.Clear();
                Console.WriteLine("Il n'y a aucune partie en cours actuellement");
                Console.ReadLine();
                new Home();
            }


            var selector = new OptionSelector(options);
        }
Ejemplo n.º 16
0
 // Use this for initialization
 void Start()
 {
     originalScale = transform.localScale;
     Popover = GameObject.FindGameObjectWithTag("Popover");
     Selector = Popover.GetComponent<OptionSelector>();
     popoverHeight = Popover.GetComponent<Renderer>().bounds.size.y;
     listenForInput = false;
     popoverIsShown = false;
     selected = -1;
 }
Ejemplo n.º 17
0
 internal static string ProcessOptionSelector(string argument, string match, OptionSelector optionSelector)
 {
     return(argument.Replace(match, optionSelector.SelectedOptionValue));
 }
Ejemplo n.º 18
0
        public Move(Player player)
        {
            var factory = new DbContextFactory();
            var context = factory.CreateDbContext(null);

            this.Player = player;
            Player toUpdatePlayer = context.Players.First(player => player.Name == Player.Name);

            Save = context.Saves.First(save => save.Name == Player.Name);

            // Determine Player Possibilities
            if (!(Player.Longitude - 1 < 0))
            {
                options.Add(new Option("Aller au Nord", () =>
                {
                    toUpdatePlayer.Longitude -= 1;
                    context.SaveChanges();
                    Console.Clear();
                    options.Clear();
                    new Gameplay(Save);
                }));
            }

            if (!(Player.Longitude + 1 > 9))
            {
                options.Add(new Option("Aller au Sud", () =>
                {
                    toUpdatePlayer.Longitude += 1;
                    context.SaveChanges();
                    Console.Clear();
                    options.Clear();
                    new Gameplay(Save);
                }));
            }

            if (!(Player.Latitude - 1 < 0))
            {
                options.Add(new Option("Aller à l'Ouest", () =>
                {
                    toUpdatePlayer.Latitude -= 1;
                    context.SaveChanges();
                    Console.Clear();
                    options.Clear();
                    new Gameplay(Save);
                }));
            }

            if (!(Player.Latitude + 1 > 9))
            {
                options.Add(new Option("Aller à l'Est", () =>
                {
                    toUpdatePlayer.Latitude += 1;
                    context.SaveChanges();
                    Console.Clear();
                    options.Clear();
                    new Gameplay(Save);
                }));
            }

            options.Add(new Option("Annuler", () =>
            {
                Console.Clear();
                options.Clear();
                new Gameplay(Save);
            }));

            var selector = new OptionSelector(options);
        }