예제 #1
0
        public TestScene(JackApp app) : base(app)
        {
            int width  = JackApp.WindowWidth;
            int height = JackApp.WindowHeight;

            Camera.Origin = new Vector2(width / 2, height / 2);

            _font = new SpriteFont("Terminus (TTF)", 37);

            Random rand = new Random();

            for (int i = 0; i < 10; i++)
            {
                Vector2 pos = new Vector2(
                    rand.Next(width / 2 - 500, width / 2 + 500),
                    rand.Next(height / 2 - 500, height / 2 + 500)
                    );
                Vector2 size  = new Vector2(rand.Next(40, 150));
                Color   color = Color.FromArgb(
                    rand.Next(0, 255),
                    rand.Next(0, 255),
                    rand.Next(0, 255)
                    );
                int dir = rand.Next(100) < 50 ? -1 : 1;
                Root.AddChild(new QuadNode(pos, size, color, dir, 1.0f));
            }

            Root.AddChild(new PlayerNode());
        }
예제 #2
0
        public Timeline(int width, int height)
        {
            InitializeComponent();
            DefaultRenderQuality = RenderQuality.LowQuality;
            this.Size            = new Size(width, height);

            TimeLineView = this.Layer;
            Camera.AddLayer(TimeLineView);
            TimeLineView.MoveToBack();
            TimeLineView.Pickable = false;
            TimeLineView.Brush    = new SolidBrush(Color.FromArgb(92, 92, 92));
            //BackColor = Color.FromArgb(60, 60, 60);

            GroupList        = new InterpData();
            GroupList.Bounds = new RectangleF(0, 0, ListWidth, Camera.Bounds.Bottom - InfoHeight);
            GroupList.Brush  = new SolidBrush(Color.FromArgb(60, 60, 60));
            Root.AddChild(GroupList);
            this.Camera.AddChild(GroupList);

            TimeLineInfo        = new PNode();
            TimeLineInfo.Bounds = new RectangleF(0, Camera.Bounds.Bottom - InfoHeight, ListWidth, InfoHeight);
            TimeLineInfo.Brush  = Brushes.Black;
            Root.AddChild(TimeLineInfo);
            this.Camera.AddChild(TimeLineInfo);

            RemoveInputEventListener(PanEventHandler);
            RemoveInputEventListener(ZoomEventHandler);
            setupDone = true;
        }
예제 #3
0
        public void MessageBox(String message)
        {
            Form f = new Form
            {
                Anchor    = Orientation.Center,
                Size      = new Vector2(200, 150),
                Clickable = true
            };
            Label t = new Label
            {
                Text       = message,
                TextAnchor = Orientation.Center,
                Anchor     = Orientation.Top,
                Size       = new Vector2(200, 100),
                Background = null,
                Position   = new Vector2(0, 10),
            };

            f.AddChild(t);
            Button b = new Button
            {
                Text     = "Ok",
                Anchor   = Orientation.Bottom,
                Position = new Vector2(0, 10),
                Size     = new Vector2(100, 20)
            };

            b.MouseClick += new System.Windows.Forms.MouseEventHandler((e, o) => f.Remove());
            f.AddChild(b);
            Root.AddChild(f);
        }
 internal override void AddChild(ConfigurationElement child)
 {
     if (Schema?.CollectionSchema == null)
     {
         base.AddChild(child);
     }
     else if (Schema.CollectionSchema.ContainsAddElement(child.ElementTagName))
     {
         Root.AddChild(child);
     }
     else if (child.ElementTagName == Schema.CollectionSchema.ClearElementName)
     {
         // TODO: test this
         Root.AddChild(child);
     }
     else if (child.ElementTagName == Schema.CollectionSchema.RemoveElementName)
     {
         // TODO: test this
         Root.AddChild(child);
     }
     else
     {
         base.AddChild(child);
     }
 }
예제 #5
0
 /// <summary>Constructs the tree</summary>
 /// <param name="value">the value of the root node</param>
 /// <param name="children">the children of the root
 /// node</param>
 public Tree(T value, params Tree <T>[] children) : this(value)
 {
     foreach (var child in children)
     {
         Root.AddChild(child.Root);
     }
 }
예제 #6
0
    private void PopOut()
    {
        if (LogsWindow == null)
        {
            return;
        }

        LogsControl.Orphan();
        LogsWindow.Dispose();
        LogsWindow = null;

        var monitor = _clyde.EnumerateMonitors().First();

        ClydeWindow = _clyde.CreateWindow(new WindowCreateParameters
        {
            Maximized = false,
            Title     = "Admin Logs",
            Monitor   = monitor,
            Width     = 1000,
            Height    = 400
        });

        ClydeWindow.RequestClosed += OnRequestClosed;
        ClydeWindow.DisposeOnClose = true;

        Root = _uiManager.CreateWindowRoot(ClydeWindow);
        Root.AddChild(LogsControl);

        LogsControl.PopOutButton.Disabled = true;
        LogsControl.PopOutButton.Visible  = false;
    }
예제 #7
0
 private void DrawText(string text)
 {
     Root.AddChild(new MenuSpriteElement(null,
                                         new Rectangle(Convert.ToInt32(0.3125 * GameManager.Width),
                                                       Convert.ToInt32(0.08 * GameManager.Height),
                                                       Convert.ToInt32(0.3125 * GameManager.Width),
                                                       Convert.ToInt32(0.097 * GameManager.Height)), text));
 }
예제 #8
0
 /// <summary>
 /// Add an entity to screen.
 /// </summary>
 /// <param name="entity">Entity to add.</param>
 public Entity AddEntity(Entity entity)
 {
     //if (GameUI != null)
     //{
     //    entity = GameUI.AddEntity(entity);
     //}
     return(Root.AddChild(entity));
 }
예제 #9
0
        /// <summary>
        /// Add an item to the tree.
        /// </summary>
        /// <param name="rootItem">The item to add. Must not already be in a tree.</param>
        /// <exception cref="InvalidHierarchyException">Thrown when <paramref name="rootItem"/>is already in a tree.</exception>
        public void AddItem(TreeViewItem rootItem)
        {
            if (rootItem.Parent != null)
            {
                throw new InvalidHierarchyException(string.Format("Cannot add {0} as a root tree item. It already has a parent: {1}",
                                                                  rootItem.Name, rootItem.Parent.Name));
            }

            Root.AddChild(rootItem);
        }
예제 #10
0
        public GraphEditor(int width, int height)
        {
            // This call is required by the Windows.Forms Form Designer.
            InitializeComponent();

            this.Size = new Size(width, height);
            int numNodes = 50;
            int numEdges = 50;

            // Initialize, and create a layer for the edges (always underneath the nodes)
            PLayer nodeLayer = this.Layer;
            PLayer edgeLayer = new PLayer();

            Root.AddChild(edgeLayer);
            this.Camera.AddLayer(0, edgeLayer);
            Random rnd = new Random();

            // Create some random nodes
            // Each node's Tag has an ArrayList used to store associated edges
            for (int i = 0; i < numNodes; i++)
            {
                float x    = (float)(this.ClientSize.Width * rnd.NextDouble());
                float y    = (float)(this.ClientSize.Height * rnd.NextDouble());
                PPath path = PPath.CreateEllipse(x, y, 20, 20);
                path.Tag = new ArrayList();
                nodeLayer.AddChild(path);
            }

            // Create some random edges
            // Each edge's Tag has an ArrayList used to store associated nodes
            for (int i = 0; i < numEdges; i++)
            {
                int n1 = rnd.Next(numNodes);
                int n2 = n1;
                while (n2 == n1)
                {
                    n2 = rnd.Next(numNodes);                      // Make sure we have two distinct nodes.
                }

                PNode node1 = nodeLayer[n1];
                PNode node2 = nodeLayer[n2];
                PPath edge  = new PPath();
                ((ArrayList)node1.Tag).Add(edge);
                ((ArrayList)node2.Tag).Add(edge);
                edge.Tag = new ArrayList();
                ((ArrayList)edge.Tag).Add(node1);
                ((ArrayList)edge.Tag).Add(node2);
                edgeLayer.AddChild(edge);
                UpdateEdge(edge);
            }

            // Create event handler to move nodes and update edges
            nodeLayer.AddInputEventListener(new NodeDragHandler());
        }
예제 #11
0
 public void Explode()
 {
     if (rnd.NextDouble() > 0.95)
     {
         PowerUp pup = new PowerUp();
         pup.Center = Center;
         Root.AddChild(pup);
     }
     Explosion.Burst(Parent, Center);
     Delete();
 }
예제 #12
0
        protected override void InitData()
        {
            base.InitData();

            if (Meta.Count > 0)
            {
                return;
            }

            if (XTrace.Debug)
            {
                XTrace.WriteLine("开始初始化{0}菜单数据……", typeof(TEntity).Name);
            }

            Meta.BeginTrans();
            try
            {
                Int32   sort   = 1000;
                TEntity top    = Root.AddChild("管理平台", null, sort -= 10, null);
                TEntity entity = top.AddChild("系统管理", null, sort -= 10, "System");
                entity.AddChild("菜单管理", "/Admin/SystemSet/Menu.aspx", sort     -= 10, "菜单管理");
                entity.AddChild("管理员管理", "/Admin/SystemSet/Admin.aspx", sort   -= 10, "管理员管理");
                entity.AddChild("角色管理", "/Admin/SystemSet/Role.aspx", sort     -= 10, "角色管理");
                entity.AddChild("权限管理", "/Admin/SystemSet/RoleMenu.aspx", sort -= 10, "权限管理");
                entity.AddChild("日志查看", "/Admin/SystemSet/Log.aspx", sort      -= 10, "日志查看");

                // 准备增加Admin目录下的所有页面
                //ScanAndAdd("Admin", top);

                // 根据设置增加菜单
                //String str = Config.GetConfig<String>("NewLife.CommonEntity.AppDirs");
                //if (!String.IsNullOrEmpty(str))
                //{
                //    String[] AppDirs = str.Split(new Char[] { ',', ';' }, StringSplitOptions.RemoveEmptyEntries);
                //    if (AppDirs != null && AppDirs.Length > 0)
                //    {
                //        foreach (String item in AppDirs)
                //        {
                //            if (String.Equals(item, "Admin")) continue;

                //            top = Root.AddChild(item, null, sort -= 10, null);
                //            ScanAndAdd(item, top);
                //        }
                //    }
                //}

                Meta.Commit();
                if (XTrace.Debug)
                {
                    XTrace.WriteLine("完成初始化{0}菜单数据!", typeof(TEntity).Name);
                }
            }
            catch { Meta.Rollback(); throw; }
        }
예제 #13
0
파일: WordTree.cs 프로젝트: Timorem/OCR-TW
 // construit l'arbre
 public void Populate(DictionaryWord word)
 {
     if (Root == null)
     {
         Root = new TreeNode(this, word);
     }
     else
     {
         Root.AddChild(word);
     }
 }
예제 #14
0
 protected void Add(IBaseNode node)
 {
     ++TotalNodeCount;
     if (_stack.Count == 0)
     {
         Root.AddChild(node);
     }
     else
     {
         Top.AddChild(node);
     }
 }
예제 #15
0
 public GraphEditor(int width, int height)
 {
     InitializeComponent();
     this.Size = new Size(width, height);
     nodeLayer = this.Layer;
     edgeLayer = new PLayer();
     Root.AddChild(edgeLayer);
     this.Camera.AddLayer(0, edgeLayer);
     backLayer = new PLayer();
     Root.AddChild(backLayer);
     backLayer.MoveToBack();
     this.Camera.AddLayer(1, backLayer);
     nodeLayer.AddInputEventListener(new NodeDragHandler());
 }
예제 #16
0
        public void Shoot()
        {
            int now = Environment.TickCount;

            if (Math.Abs(now - lastShoot) > shotInterval)
            {
                lastShoot = now;

                Projectile projectile = new Projectile();
                projectile.Center = Center;
                projectile.Left   = Right;
                Root.AddChild(projectile);
                Play(Properties.Resources.laser);
            }
        }
예제 #17
0
 public override void AddChild(ITreePath path, ITreeNode node)
 {
     if (path.IsPathToCurrent)
     {
         AddChild(node);
     }
     else if (path.IsAbsolute)
     {
         Root.AddChild(path.StepDown(), node);
     }
     else
     {
         var nextNode = path.Nodes.First();
         var child    = GetChildByName(nextNode);
         if (child == null)
         {
             AddChild(new PlcMetaDataTreeNode(nextNode));
             child = GetChildByName(nextNode);
         }
         child.AddChild(path.StepDown(), node);
     }
 }
예제 #18
0
        public void LoadContent()
        {
            Debuging.UITesting.AddUI(this);

            Color color = Color.Black;

            color *= 0.25f;

            ConsoleWindow = new ConsoleWindow(new PanelProps {
                Size = new Vector2(0, p_ScreenHeight / 3), EntityAnchor = Anchor.TopLeft, Backgroundtexture = SpritesData.B_BGSprite, OverlayColor = color
            });

            Root.AddChild(ConsoleWindow);

            ConsoleTextWriter = new ConsoleTextWriter();

            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");
            LogHelper.Log(LogTarget.Console, LogLevel.Info, this + ": Initialize");

            drawUtils  = new DrawUtils();
            debugUtils = new DebugUtils();

            p_testform = new PropertiesPanel();

            p_testform.Init();

            p_testform.FormClosed += P_testform_FormClosed;

            p_Cursors[0] = p_ContentManager.Load <Texture2D>("Textures/Cursors/Default_Cursor");
            p_Cursors[1] = p_ContentManager.Load <Texture2D>("Textures/Cursors/Default_S_BL");
            p_Cursors[2] = p_ContentManager.Load <Texture2D>("Textures/Cursors/Default_S_BR");
            p_Cursors[3] = p_ContentManager.Load <Texture2D>("Textures/Cursors/Default_S_Horz");
            p_Cursors[4] = p_ContentManager.Load <Texture2D>("Textures/Cursors/Default_S_Vert");
            p_Cursors[5] = p_ContentManager.Load <Texture2D>("Textures/Cursors/Default_S_Dragging");

            p_CursorTexture = p_Cursors[0];

            p_Cursor = p_Cursors[0];

            p_testform.Hide();
        }
예제 #19
0
        public override void DrawMenu()
        {
            MenuSpriteElement bg = new MenuSpriteElement("GUI/newgame_menu.jpg", new Rectangle(0, 0, GameManager.Width, GameManager.Height));

            Root.AddChild(bg);

            // exit button
            {
                Rectangle exitRect = new Rectangle(GameManager.Width - 152, 1, 151, 71);
                MenuButtonElement exitButton = new MenuButtonElement(exitRect, delegate()
                {
                    Menu.GoToScene(MainMenu.Instance);
                });
                exitButton.AddChild(new MenuSpriteElement("GUI/button_bg", exitRect, "BACK"));
                bg.AddChild(exitButton);
            }

            // music settings
            {
                musicRect = new Rectangle(GameManager.Width - 500, 1, 151, 71);
                MenuButtonElement musicButton = new MenuButtonElement(musicRect, delegate()
                {
                    if (!music)
                    {
                        music     = true;
                        musicText = "MUSIC: ON";
                    }
                    else
                    {
                        music     = false;
                        musicText = "MUSIC: OFF";
                    }
                    musicSpriteElement.Text = musicText;
                });
                musicSpriteElement = new MenuSpriteElement("GUI/button_bg", musicRect, musicText);
                musicButton.AddChild(musicSpriteElement);
                bg.AddChild(musicButton);
            }

            //vibration settings
            {
                vibRect = new Rectangle(GameManager.Width - 345, 1, 190, 71);
                MenuButtonElement vibButton = new MenuButtonElement(vibRect, delegate()
                {
                    if (!vibration)
                    {
                        vibration = true;
                        vibText   = "VIBRATION: ON";
                    }
                    else
                    {
                        vibration = false;
                        vibText   = "VIBRATION: OFF";
                    }
                    vibrationSpriteElement.Text = vibText;
                });
                vibrationSpriteElement = new MenuSpriteElement("GUI/button_bg", vibRect, vibText);
                vibButton.AddChild(vibrationSpriteElement);
                bg.AddChild(vibButton);
            }

            // difficulty selector
            {
                difficultySelector = new MainMenuPlainSelector <Difficulty>(Difficulty.NORMAL);
                bg.AddChild(difficultySelector);

                difficultySelector.BaseX  = Convert.ToInt32(0.279 * GameManager.Width);
                difficultySelector.BaseY  = Convert.ToInt32(0.359 * GameManager.Height);
                difficultySelector.YDiff  = Convert.ToInt32(0.085 * GameManager.Height);
                difficultySelector.Width  = Convert.ToInt32(0.12 * GameManager.Width);
                difficultySelector.Height = Convert.ToInt32(0.077 * GameManager.Height);


                difficultySelector.AddElement("EASY", Difficulty.EASY);
                difficultySelector.AddElement("NORMAL", Difficulty.NORMAL);
                difficultySelector.AddElement("HARD", Difficulty.HARD);
            }

            //gamemode selector
            {
                gamemodeSelector = new MainMenuPlainSelector <GameMode>(GameMode.NORMAL);
                bg.AddChild(gamemodeSelector);

                gamemodeSelector.BaseX  = Convert.ToInt32(0.077 * GameManager.Width);
                gamemodeSelector.BaseY  = Convert.ToInt32(0.359 * GameManager.Height);
                gamemodeSelector.YDiff  = Convert.ToInt32(0.085 * GameManager.Height);
                gamemodeSelector.Width  = Convert.ToInt32(0.15 * GameManager.Width);
                gamemodeSelector.Height = Convert.ToInt32(0.077 * GameManager.Height);

                if (SinglePlayer)
                {
                    gamemodeSelector.AddElement("NORMAL", GameMode.NORMAL);
                    gamemodeSelector.AddElement("ENDLESS", GameMode.ENDLESS);
                    gamemodeSelector.AddElement("TIME", GameMode.TIME);
                    gamemodeSelector.Selected = GameMode.NORMAL;
                }
                else
                {
                    gamemodeSelector.AddElement("FIGHT", GameMode.FIGHT);
                    gamemodeSelector.AddElement("TIMER", GameMode.TIMER);
                    gamemodeSelector.Selected = GameMode.FIGHT;
                }
            }

            //play button
            {
                playRect = new Rectangle(Convert.ToInt32(0.78125 * GameManager.Width), Convert.ToInt32(0.444 * GameManager.Height), Convert.ToInt32(0.114 * GameManager.Width), Convert.ToInt32(0.0583 * GameManager.Height));
                MenuButtonElement playButton = new MenuButtonElement(playRect,
                                                                     delegate()
                {
                    if (gamemodeSelector.Selected == GameMode.FIGHT || gamemodeSelector.Selected == GameMode.TIMER)
                    {
                        return;                                                                                                 //nincs megvalósítva a multiplayer :(
                    }
                    gameModel = new Game.GameModel(MainMenu.imageDatabase, gamemodeSelector.Selected, difficultySelector.Selected, music, vibration, null, null);
                    NewGame(gamemodeSelector.Selected, difficultySelector.Selected, music, vibration);
                    GameManager.Instance.SwitchScene(gameModel);
                }
                                                                     );
                bg.AddChild(playButton);
                playButton.AddChild(new MenuSpriteElement("GUI/button_play.png", playRect));
            }

            if (NewGameMenu.Tutorial)
            {
                //tutorial
                tutorial = new TutorialElement();

                bg.AddChild(tutorial);

                tutorial.AddRectangle(new Point((GameManager.Width / 2) + 50, GameManager.Height / 3), new Point((GameManager.Width / 2) + 50, GameManager.Height / 3),
                                      "This is the first place you see when you want to play.");
                tutorial.AddRectangle(new Point(gamemodeSelector.BaseX, gamemodeSelector.BaseY), new Point(gamemodeSelector.BaseX + gamemodeSelector.Width, gamemodeSelector.BaseY + gamemodeSelector.GetHeight()),
                                      "Here you can select the gamemode you want");
                tutorial.AddRectangle(new Point(gamemodeSelector.BaseX, gamemodeSelector.BaseY), new Point(gamemodeSelector.BaseX + gamemodeSelector.Width, gamemodeSelector.BaseY + gamemodeSelector.GetHeightOfElement(1)),
                                      "In Normal mode you have a fixed number of images \nand you need to find them fast for higher scores");
                tutorial.AddRectangle(new Point(gamemodeSelector.BaseX, gamemodeSelector.BaseY + gamemodeSelector.GetHeightOfElement(1)), new Point(gamemodeSelector.BaseX + gamemodeSelector.Width, gamemodeSelector.BaseY + gamemodeSelector.GetHeightOfElement(2)),
                                      "In Endless mode you have infinite number of images for training");
                tutorial.AddRectangle(new Point(gamemodeSelector.BaseX, gamemodeSelector.BaseY + gamemodeSelector.GetHeightOfElement(2)), new Point(gamemodeSelector.BaseX + gamemodeSelector.Width, gamemodeSelector.BaseY + gamemodeSelector.GetHeightOfElement(3)),
                                      "In Time mode you have a fixed number of images \nbut only half minutes. Your score will be multiplied\nwith the seconds remaining");
                tutorial.AddRectangle(new Point(gamemodeSelector.BaseX, gamemodeSelector.BaseY), new Point(gamemodeSelector.BaseX + gamemodeSelector.Width, gamemodeSelector.BaseY + gamemodeSelector.GetHeight()),
                                      "Please select a gamemode!");

                tutorial.AddRectangle(new Point(difficultySelector.BaseX, difficultySelector.BaseY), new Point(difficultySelector.BaseX + difficultySelector.Width, difficultySelector.BaseY + difficultySelector.GetHeight()),
                                      "You can choose from difficulties, we have three here");
                tutorial.AddRectangle(new Point(difficultySelector.BaseX, difficultySelector.BaseY), new Point(difficultySelector.BaseX + difficultySelector.Width, difficultySelector.BaseY + gamemodeSelector.GetHeightOfElement(1)),
                                      "In easy mode you get less tasks and pure images");
                tutorial.AddRectangle(new Point(difficultySelector.BaseX, difficultySelector.BaseY + difficultySelector.GetHeightOfElement(1)), new Point(difficultySelector.BaseX + difficultySelector.Width, difficultySelector.BaseY + difficultySelector.GetHeightOfElement(2)),
                                      "In normal mode you get average tasks and \nsome of the images are rotated, blurred or colored");
                tutorial.AddRectangle(new Point(difficultySelector.BaseX, difficultySelector.BaseY + difficultySelector.GetHeightOfElement(2)), new Point(difficultySelector.BaseX + difficultySelector.Width, difficultySelector.BaseY + difficultySelector.GetHeightOfElement(3)),
                                      "In hard mode you get a lot of tasks and \nall of the images are rotated, blurred or colored");
                tutorial.AddRectangle(new Point(difficultySelector.BaseX, difficultySelector.BaseY), new Point(difficultySelector.BaseX + difficultySelector.Width, difficultySelector.BaseY + difficultySelector.GetHeight()),
                                      "Please choose a mode if the selected is not good for you");

                tutorial.AddRectangle(new Point(musicRect.Left, musicRect.Top), new Point(musicRect.Right, musicRect.Bottom),
                                      "You can set the music here, if you want");
                tutorial.AddRectangle(new Point(vibRect.Left, vibRect.Top), new Point(vibRect.Right, vibRect.Bottom),
                                      "And the vibration too");

                tutorial.AddRectangle(new Point(playRect.Left - 10, playRect.Top - 10), new Point(playRect.Right + 10, playRect.Bottom + 10),
                                      "If all set, please click on the Play button now");
                tutorial.ShowNextTutorial();
            }
        }
예제 #20
0
 public void Add(Entity entity)
 {
     Root.AddChild(entity);
 }
예제 #21
0
        public override void DrawMenu()
        {
            MenuSpriteElement bg = new MenuSpriteElement("GUI/scoreboard_bg.jpg", new Rectangle(0, 0, GameManager.Width, GameManager.Height));

            Root.AddChild(bg);

            // exit button
            {
                Rectangle exitRect = new Rectangle(GameManager.Width - 152, 1, 151, 71);
                MenuButtonElement exitButton = new MenuButtonElement(exitRect, delegate()
                {
                    difficultySelector.SelectedChange -= DifficultyGamemodeSelector_SelectedChange;
                    gamemodeSelector.SelectedChange   -= DifficultyGamemodeSelector_SelectedChange;
                    Menu.GoToScene(MainMenu.Instance);
                });
                exitButton.AddChild(new MenuSpriteElement("GUI/button_bg", exitRect, "BACK"));
                bg.AddChild(exitButton);
            }
            // difficulty selector
            {
                difficultySelector = new MainMenuPlainSelector <Difficulty>(Difficulty.NORMAL);
                bg.AddChild(difficultySelector);

                difficultySelector.BaseX  = Convert.ToInt32(0.279 * GameManager.Width);
                difficultySelector.BaseY  = Convert.ToInt32(0.359 * GameManager.Height);
                difficultySelector.YDiff  = Convert.ToInt32(0.085 * GameManager.Height);
                difficultySelector.Width  = Convert.ToInt32(0.12 * GameManager.Width);
                difficultySelector.Height = Convert.ToInt32(0.077 * GameManager.Height);

                difficultySelector.AddElement("EASY", Difficulty.EASY);
                difficultySelector.AddElement("NORMAL", Difficulty.NORMAL);
                difficultySelector.AddElement("HARD", Difficulty.HARD);

                difficultySelector.SelectedChange += DifficultyGamemodeSelector_SelectedChange;
            }

            //gamemode selector
            {
                gamemodeSelector = new MainMenuPlainSelector <GameMode>(GameMode.NORMAL);
                bg.AddChild(gamemodeSelector);

                gamemodeSelector.BaseX  = Convert.ToInt32(0.077 * GameManager.Width);
                gamemodeSelector.BaseY  = Convert.ToInt32(0.359 * GameManager.Height);
                gamemodeSelector.YDiff  = Convert.ToInt32(0.085 * GameManager.Height);
                gamemodeSelector.Width  = Convert.ToInt32(0.15 * GameManager.Width);
                gamemodeSelector.Height = Convert.ToInt32(0.077 * GameManager.Height);

                gamemodeSelector.AddElement("NORMAL", GameMode.NORMAL);
                gamemodeSelector.AddElement("TIME", GameMode.TIME);

                gamemodeSelector.SelectedChange += DifficultyGamemodeSelector_SelectedChange;
            }
            //scores
            {
                scoreboardElements = new ScoreboardElements();
                bg.AddChild(scoreboardElements);

                scoreboardElements.BaseX  = Convert.ToInt32(0.4 * GameManager.Width);
                scoreboardElements.BaseY  = Convert.ToInt32(0.2 * GameManager.Height);
                scoreboardElements.NameX  = Convert.ToInt32(0.5 * GameManager.Width);
                scoreboardElements.NameY  = Convert.ToInt32(0.2 * GameManager.Height);
                scoreboardElements.ScoreX = Convert.ToInt32(0.75 * GameManager.Width);
                scoreboardElements.ScoreY = Convert.ToInt32(0.2 * GameManager.Height);
                scoreboardElements.YDiff  = Convert.ToInt32(0.05 * GameManager.Height);
                scoreboardElements.Width  = Convert.ToInt32(0.12 * GameManager.Width);
                scoreboardElements.Height = Convert.ToInt32(0.077 * GameManager.Height);
            }
            //loading
            {
                Rectangle infoRect = new Rectangle(Convert.ToInt32(0.5 * GameManager.Width),
                                                   Convert.ToInt32(0.45 * GameManager.Height),
                                                   Convert.ToInt32(0.3125 * GameManager.Width),
                                                   Convert.ToInt32(0.07 * GameManager.Height));
                infoElement = new MenuSpriteElement(null, infoRect, "");
                Root.AddChild(infoElement);
            }


            difficultySelector.Selected = Difficulty.EASY;
            gamemodeSelector.Selected   = GameMode.NORMAL;
            DifficultyGamemodeSelector_SelectedChange(this, EventArgs.Empty);
        }
예제 #22
0
파일: MainMenu.cs 프로젝트: csatari/pixeek
        public override void DrawMenu()
        {
            MenuSpriteElement bg = new MenuSpriteElement("GUI/menu_bg.jpg", new Rectangle(0, 0, GameManager.Width, GameManager.Height));

            Root.AddChild(bg);

            {
                Rectangle exitRect = new Rectangle(1, 1, 151, 71);
                MenuButtonElement exitButton = new MenuButtonElement(exitRect, delegate()
                {
                    GameManager.Instance.Exit();
                });
                exitButton.AddChild(new MenuSpriteElement("GUI/button_bg", exitRect, "EXIT"));
                bg.AddChild(exitButton);
            }
            {
                Rectangle playRect = new Rectangle(Convert.ToInt32(0.64 * GameManager.Width), Convert.ToInt32(0.14 * GameManager.Height),
                                                   Convert.ToInt32(0.265 * GameManager.Width), Convert.ToInt32(0.104 * GameManager.Height));
                MenuButtonElement playButton = new MenuButtonElement(playRect,
                                                                     delegate()
                {
                    NewGameMenu.Tutorial     = false;
                    NewGameMenu.SinglePlayer = true;
                    Menu.GoToScene(NewGameMenu.Instance);
                }
                                                                     );
                bg.AddChild(playButton);
                playButton.AddChild(new MenuSpriteElement("GUI/singleplayer_button.png", playRect));
            }
            {
                Rectangle playRect = new Rectangle(Convert.ToInt32(0.635 * GameManager.Width), Convert.ToInt32(0.31 * GameManager.Height),
                                                   Convert.ToInt32(0.26 * GameManager.Width), Convert.ToInt32(0.09 * GameManager.Height));
                MenuButtonElement playButton = new MenuButtonElement(playRect,
                                                                     delegate()
                {
                    NewGameMenu.Tutorial     = false;
                    NewGameMenu.SinglePlayer = false;
                    Menu.GoToScene(NewGameMenu.Instance);
                }
                                                                     );
                bg.AddChild(playButton);
                playButton.AddChild(new MenuSpriteElement("GUI/multiplayer_button.png", playRect));
            }
            {
                Rectangle playRect = new Rectangle(Convert.ToInt32(0.63 * GameManager.Width), Convert.ToInt32(0.44 * GameManager.Height),
                                                   Convert.ToInt32(0.25 * GameManager.Width), Convert.ToInt32(0.08 * GameManager.Height));
                MenuButtonElement playButton = new MenuButtonElement(playRect,
                                                                     delegate()
                {
                    Menu.GoToScene(ScoreboardMenu.Instance);

                    // MultiPlayerGameCommunicator.Instance.NewFightGameListener(dele);
                }
                                                                     );
                bg.AddChild(playButton);
                playButton.AddChild(new MenuSpriteElement("GUI/scoreboard_button.png", playRect));
            }
            {
                Rectangle playRect = new Rectangle(Convert.ToInt32(0.63 * GameManager.Width), Convert.ToInt32(0.59 * GameManager.Height),
                                                   Convert.ToInt32(0.17 * GameManager.Width), Convert.ToInt32(0.08 * GameManager.Height));
                MenuButtonElement playButton = new MenuButtonElement(playRect,
                                                                     delegate()
                {
                    NewGameMenu.Tutorial     = true;
                    NewGameMenu.SinglePlayer = true;
                    Menu.GoToScene(NewGameMenu.Instance);

                    //MultiPlayerGameCommunicator.Instance.Registration("Albert", Game.GameMode.FIGHT, Game.Difficulty.EASY, new BoardShapes.BoardRectangle());
                    //MultiPlayerGameCommunicator.Instance.Registration("Geza", Game.GameMode.FIGHT, Game.Difficulty.EASY, new BoardShapes.BoardRectangle());
                }
                                                                     );
                bg.AddChild(playButton);
                playButton.AddChild(new MenuSpriteElement("GUI/tutorial_button.png", playRect));
            }
        }
예제 #23
0
 /// <summary>
 /// Add an entity to screen.
 /// </summary>
 /// <param name="entity">Entity to add.</param>
 public Entity AddEntity(Entity entity)
 {
     return(Root.AddChild(entity));
 }
예제 #24
0
 /// <summary>
 /// Add a coroutine as a child of the root node which waits for specified amount of time.
 /// </summary>
 /// <param name="seconds"></param>
 public void AddRootWait(float seconds)
 {
     Root.AddChild(UnityBridge.Instance.Wait(seconds));
 }
예제 #25
0
 /// <summary>
 /// Add a coroutine as a child of the root node.
 /// </summary>
 /// <param name="value">Coroutine to add.</param>
 public void AddRoot(IEnumerator value)
 {
     Root.AddChild(value);
 }
예제 #26
0
        public override void DrawMenu()
        {
            MenuSpriteElement bg = new MenuSpriteElement("GUI/menu_bg.jpg", new Rectangle(0, 0, GameManager.Width, GameManager.Height));

            if (Win)
            {
                if (Time != null)
                {
                    DrawText("YOU WON!\nYou gained " + Point + " points. Remaining time: " + Time);
                }
                else
                {
                    DrawText("YOU WON!\nYou gained " + Point + " points.");
                }
            }
            else
            {
                DrawText("GAME OVER!\nYou gained " + Point + " points.");
            }

            //Kilépés gomb
            Rectangle exitRect = new Rectangle(Convert.ToInt32(0.3125 * GameManager.Width),
                                               Convert.ToInt32(0.2167 * GameManager.Height),
                                               Convert.ToInt32(0.3125 * GameManager.Width),
                                               Convert.ToInt32(0.07 * GameManager.Height));
            MenuButtonElement exitButton = new MenuButtonElement(exitRect, delegate()
            {
                Menu.GoToScene(MainMenu.Instance);
            });

            exitButton.AddChild(new MenuSpriteElement("GUI/button_bg", exitRect, "BACK TO MAIN MENU"));
            Root.AddChild(exitButton);

            if (Win)
            {
                //Névbeírás
                Rectangle nameRect = new Rectangle(Convert.ToInt32(0.3125 * GameManager.Width),
                                                   Convert.ToInt32(0.3167 * GameManager.Height),
                                                   Convert.ToInt32(0.2125 * GameManager.Width),
                                                   Convert.ToInt32(0.07 * GameManager.Height));

                MenuTextElement menuText = new MenuTextElement(nameRect);
                Root.AddChild(menuText);

                //Küldő gomb
                Rectangle sendButtonArea = new Rectangle(Convert.ToInt32(0.525 * GameManager.Width),
                                                         Convert.ToInt32(0.3167 * GameManager.Height),
                                                         Convert.ToInt32(0.1 * GameManager.Width),
                                                         Convert.ToInt32(0.07 * GameManager.Height));
                MenuButtonElement sendButton = new MenuButtonElement(sendButtonArea, delegate()
                {
                    SendScores(Point, menuText.Text);
                });
                sendButton.AddChild(new MenuSpriteElement("GUI/button_bg", sendButtonArea, "Send"));
                Root.AddChild(sendButton);

                //Információs szöveg
                Rectangle infoRect = new Rectangle(Convert.ToInt32(0.3125 * GameManager.Width),
                                                   Convert.ToInt32(0.4167 * GameManager.Height),
                                                   Convert.ToInt32(0.3125 * GameManager.Width),
                                                   Convert.ToInt32(0.07 * GameManager.Height));
                infoElement = new MenuSpriteElement(null, infoRect, "");
                Root.AddChild(infoElement);
            }
        }
예제 #27
0
 public void AddChildToRoot(Entity child)
 {
     Root.AddChild(child);
 }