Пример #1
0
Файл: UI.cs Проект: Timtam/ggj19
    public void SetActive(UIPart part, bool active)
    {
        if (active)
        {
            activeParts |= part;
        }
        else
        {
            activeParts &= ~part;
        }

        if (activeParts == UIPart.None)
        {
            this.GetTree().Paused = false;
            Input.SetMouseMode(Input.MouseMode.Captured);
        }
        else
        {
            this.GetTree().Paused = true;
            Input.SetMouseMode(Input.MouseMode.Visible);
        }

        if (IsActive(UIPart.Pause))
        {
            this.PauseMode = PauseModeEnum.Stop;
        }
        else
        {
            this.PauseMode = PauseModeEnum.Process;
        }

        ActiveUIPartsChanged?.Invoke();
    }
Пример #2
0
        /// <summary>
        /// This is general task method, here is described logic of types behavior.
        /// </summary>
        /// <param name="view">Type of class, which response for input/output information in program.</param>
        public void Run(IInformation view)
        {
            UIPart.Writer = view;
            List <IDrawable>   drawFigures      = new List <IDrawable>();
            IDrawable          coordinateSystem = new CoordinateSystem(view);
            List <IChangeable> objects          = new List <IChangeable>()
            {
                new Circle(view, 5),
                new Rectangle(view, 12, 10, new Point(1, 3)),
            };

            ObjectController.ObjectCount = objects.Count;
            foreach (var obj in objects)
            {
                drawFigures.Add(obj);
            }

            UIPart.DrawLine();
            coordinateSystem.Draw();
            do
            {
                foreach (var obj in drawFigures)
                {
                    obj.Draw();
                }

                var keyInfo = view.ReadKey(true);
                view.Clear(CoordinateSystem.EndOfUserUI);

                foreach (var obj in drawFigures)
                {
                    obj.Draw(' ');
                }

                try
                {
                    ObjectController.ObjectAction(objects[ObjectController.CurrentObject], keyInfo);
                }
                catch (NullReferenceException e)
                {
                    UIPart.PrintString(e.Message);
                }

                UIPart.PrintStats(objects[ObjectController.CurrentObject]);
            }while (true);
        }
Пример #3
0
 public SCCDetail(UIPart uip, int num) : base("SCCDetail", UIGroup.Dialog, UIPreset.BackVisible | UIPreset.BackTouchable)
 {
     gameManager = GameObject.Find("GameManager").GetComponent <GameManager>();
     m_uip       = uip;
     this.num    = num;
 }
Пример #4
0
Файл: UI.cs Проект: Timtam/ggj19
 public bool IsActive(UIPart part) => (activeParts & part) != 0;