コード例 #1
0
ファイル: SkillTree.cs プロジェクト: confuseded/TreeForge
        public void Update(GameTime g, Camera2D cam)
        {
            Vector2 worldMousePos = cam.GetWorldMousePos();
            Vector2 noReq = new Vector2(-1, -1);

            for (int i = 0; i < tiers.Count; i++)
            {
                for (int j = 0; j < tiers[i].Length; j++)
                {
                    TreeNode tn = tiers[i][j];
                    bool requirementsMet = true;
                    if (tn == null)
                    {
                        continue;
                    }
                    //check requirements
                    if (tn.Req != noReq)
                    {
                        if (tiers[(int)tn.Req.X][(int)tn.Req.Y].points != tiers[(int)tn.Req.X][(int)tn.Req.Y].GetMaximumPointsAllowed())
                        {
                            requirementsMet = false;
                        }
                    }

                    if (tn.CheckMouseClick(worldMousePos) & InputHandler.MouseState.LeftButton == ButtonState.Pressed & InputHandler.LastMouseState.LeftButton == ButtonState.Released & GetPoints() != MaxTotalPoints & requirementsMet)
                        tn.AddPoint();
                    tn.Update(g, GetPoints(), requirementsMet);
                }
            }
        }
コード例 #2
0
ファイル: TreePanel.cs プロジェクト: confuseded/TreeForge
 public TreePanel(Vector2 upLeft, Vector2 botRight)
     : base(upLeft, botRight)
 {
     cam = new Camera2D(Vector2.Zero, this);
     tree = new MercenarySkillTree();
 }