Beispiel #1
0
        /// <summary>
        /// コンストラクタ
        /// </summary>
        public GLShogiElement(BoardModel boardModel)
        {
            AddPropertyChangedHandler("Board", BoardUpdated);
            AddPropertyChangedHandler("ViewSide", ViewSideUpdated);
            AddPropertyChangedHandler("EditMode", EditModeUpdated);

            BoardModel      = boardModel;
            ViewSide        = BWType.Black;
            EditMode        = EditMode.Normal;
            BlackPlayerName = "▲先手";
            WhitePlayerName = "△後手";
            BlackTime       = TimeSpan.Zero;
            WhiteTime       = TimeSpan.Zero;
            InManipulating  = false;

            InitializeDraw();

            if (boardModel != null)
            {
                boardModel.Shogi         = this;
                boardModel.BoardChanged += OnBoardChanged;

                this.AddDependModel(BoardModel);
            }
        }
Beispiel #2
0
 public filterTaskWindow(BoardModel board) //Constructor
 {
     InitializeComponent();
     filterVM         = new filterTaskViewModel(board);
     this.DataContext = filterVM;
     this.board       = board;
 }
        /// <summary>
        /// 指し手を一手だけ進めます。
        /// </summary>
        protected override bool DoMove()
        {
            if (!HasMove || BoardModel == null)
            {
                return(false);
            }

            switch (AutoPlayType)
            {
            case AutoPlayType.Normal:
                var move = this.moveList[this.moveIndex++];
                if (move != null)
                {
                    BoardModel.DoMove(move);
                }
                break;

            case AutoPlayType.Undo:
                this.moveIndex += 1;
                BoardModel.Undo();
                break;

            case AutoPlayType.Redo:
                this.moveIndex += 1;
                BoardModel.Redo();
                break;
            }

            return(HasMove);
        }
Beispiel #4
0
 public void Inject(EntityManager entityManager, SignalBus signalBus, DiContainer diContainer, GameStateModel gameStateModel, BoardModel boardModel)
 {
     this.gameStateModel = gameStateModel;
     this.entityManager  = entityManager;
     this.signalBus      = signalBus;
     this.boardModel     = boardModel;
 }
        public ActionResult EditBoard()
        {
            Association association = reposetory.GetAssociation(CurrentProfile.AssociationID);

            if (association == null)
            {
                return(HttpNotFound());
            }
            BoardModel Management = reposetory.GetBoard(association.AssociationID);

            Management.Active.Insert(0, new Person {
                FirstName = "-----"
            });
            Management.All.Insert(0, new Person {
                FirstName = "-----"
            });

            int AddMemeber = Management.minMember - Management.BoardMembers.Count();

            for (int i = 1; i <= AddMemeber; i++)
            {
                Management.BoardMembers.Add(Guid.Empty);
            }

            if (Management.Alternate == null || !Management.Alternate.Any())
            {
                Management.Alternate = new List <Guid> {
                    Guid.Empty
                };
            }

            return(View(Management));
        }
Beispiel #6
0
    private BoardModel CreateBoardModel(int index)
    {
        float      cellSize = boardRectSize / gridSize;
        BoardModel board    = new BoardModel(index, cellSize);

        return(board);
    }
Beispiel #7
0
        //Methods -------------------------------------------------------------------------------------------------------------

        public bool filterTasks(BoardModel board)
        {
            if (!string.IsNullOrWhiteSpace(Key)) //Filtering key cant be null or white spaces
            {
                //Removing all the tasks that doesnt contain Key in their title or description from the board
                foreach (ColumnModel column in board.Columns)
                {
                    ObservableCollection <TaskModel> copy = new ObservableCollection <TaskModel>();
                    foreach (TaskModel task in column.Tasks)
                    {
                        copy.Add(task);
                    }
                    foreach (TaskModel task in copy)
                    {
                        if (((!task.Title.Contains(Key)) & ((task.Description != null) && (!task.Description.Contains(Key)))) | (!task.Title.Contains(Key)) & (task.Description == null))
                        {
                            column.Tasks.Remove(task);
                        }
                    }
                }
                return(true);
            }
            //Key is null or whitespaces
            Message = "please enter text to filter"; //Raise error for input
            return(false);                           //Failed to filter
        }
Beispiel #8
0
    public void Setup(GameData data)
    {
        _data = data;

        _level = new LevelManager();

        _board = new BoardModel(Constants.WIDTH, Constants.HEIGHT);

        _activeBricks = new ActiveBricks();

        _UI = GameObject.FindObjectOfType <GameUI>();
        _UI.Setup(this);

        _display = _UI.brickDisplay;
        _display.Setup(_data.GetTileSet(_level.Level));

        _randomizer = new Randomizer(_data);
        _input      = new InputManager(this);

        _score       = 0;
        _rowsCleared = 0;

        NewShape();

        _display.UpdateDisplay(_board, _activeBricks);
    }
    void Loop()
    {
        int        nbLoop        = 0;
        int        blockToRemove = 0;
        BoardModel board         = new BoardModel();

        board.loopCompleted += (sender, ev) => { nbLoop++; };
        board.removeBlock   += (sender, ev) => { blockToRemove += ev.Blocks.Count; };

        List <BlockModel> blocks = new List <BlockModel>();

        blocks.Add(new BlockModel(4, 5, HexDirection.SW, HexDirection.E));
        blocks.Add(new BlockModel(5, 5, HexDirection.W, HexDirection.SE));
        blocks.Add(new BlockModel(4, 4, HexDirection.SE, HexDirection.NE));
        blocks.Add(new BlockModel(6, 4, HexDirection.SW, HexDirection.NW));
        blocks.Add(new BlockModel(4, 3, HexDirection.NW, HexDirection.E));
        board.Add(blocks);

        blocks = new List <BlockModel>();
        blocks.Add(new BlockModel(5, 3, HexDirection.NE, HexDirection.W));
        board.Add(blocks);

        blocks.Add(new BlockModel(4, 5, HexDirection.SW, HexDirection.E)); // should not crash here

        Debug.Assert(nbLoop == 1, "should detect one loop");
        Debug.Assert(blockToRemove == 6, "should delete 6 blocks");
    }
Beispiel #10
0
        public IActionResult Save(BoardModel input)
        {
            using (var db = new MySqlDapperHelper())
            {
                db.BeginTransaction();

                try
                {
                    //input.TITLE 및 input.CONTENTS 검증 필요
                    //특히 contents 는 xss와 같은 script태그나 img 태그 공격도 체크해야함....

                    input.REG_IP       = HttpContext.Connection.RemoteIpAddress.ToString();
                    input.REG_USER     = User.Identity.Name; //USER의 고유 ID를 Claim에 저장하고 가져오는 방법????
                    input.REG_USERNAME = User.Identity.Name;

                    input.Insert(db);

                    db.Commit();
                }
                catch (Exception ex)
                {
                    db.Rollback();

                    return(Json(new { msg = ex.Message }));
                }

                return(Json(new { msg = "OK" }));
            }
        }
Beispiel #11
0
        public void TestNoWinner()
        {
            var bm = new BoardModel();

            Assert.False(Game.CheckWin(bm));
            Assert.Null(Game.Winner);
        }
Beispiel #12
0
        public BoardModel GenerateBoard()
        {
            var cards = Enumerable.Range(1, 200)
                        .Select(i => new CardModel(i))
                        .ToList();

            var random = _rand.Random;

            cards.Shuffle(random);

            var storeDeck = new DeckModel("StoreDeck", cards);

            var player1 = new PlayerModel(
                number: 1,
                name: "Player 1",
                hand: new HandModel(
                    name: "Player 1 Hand",
                    cards: storeDeck.DrawMany(random.Next(3, 8))),
                deck: new DeckModel(
                    name: "Player 1 Deck",
                    cards: storeDeck.DrawMany(random.Next(1, 20))),
                discard: new DiscardModel(
                    name: "Player 1 Discard",
                    cards: storeDeck.DrawMany(random.Next(1, 20))),
                hero: new BoardObjectModel(storeDeck.Draw() !, "active"),
                boardObjects: storeDeck.DrawMany(random.Next(1, 8))
                .Select(card => new BoardObjectModel(card, "active")));

            var player2 = new PlayerModel(
                number: 2,
                name: "Player 2",
                hand: new HandModel(
                    name: "Player 2 Hand",
                    cards: storeDeck.DrawMany(random.Next(3, 8))),
                deck: new DeckModel(
                    name: "Player 2 Deck",
                    cards: storeDeck.DrawMany(random.Next(1, 20))),
                discard: new DiscardModel(
                    name: "Player 2 Discard",
                    cards: storeDeck.DrawMany(random.Next(1, 20))),
                hero: new BoardObjectModel(storeDeck.Draw() !, "active"),
                boardObjects: storeDeck.DrawMany(random.Next(1, 8))
                .Select(card => new BoardObjectModel(card, "active")));

            var storeObjects = storeDeck.DrawMany(5)
                               .Select(card => new BoardObjectModel(card, "active"))
                               .ToList();

            var board = new BoardModel(
                storeDeck,
                storeObjects,
                new List <PlayerModel>
            {
                player1,
                player2
            });

            return(board);
        }
Beispiel #13
0
 public void Restart()
 {
     _state = State.BlackGo;
     _model = new BoardModel();
     _ai    = new AI();
     //_ai.AlphaBetaInit();
     _board.Reset();
 }
 public static BoardModel DownloadColumnAndTaskModels(this BoardModel boardModel, IHttpClientProvider httpClientProvider)
 {
     boardModel.ColumnModels = new ObservableCollection <ColumnModel>(httpClientProvider.GetDatabaseColumnReader().GetFromBoard(boardModel.Id)
                                                                      .ToModels(httpClientProvider, boardModel).OrderBy(columnModel => columnModel.Index));
     boardModel.ColumnModels.ForEach(columnModel => columnModel.DownloadTaskModels(httpClientProvider));
     boardModel.TaskModels = new ObservableCollection <TaskModel>(boardModel.ColumnModels.SelectMany(columnModel => columnModel.TaskModels));
     return(boardModel);
 }
        public int AddBoard(BoardModel board)
        {
            int id = NextId;

            Boards[id] = board;
            NextId++;
            return(id);
        }
Beispiel #16
0
    /*
     * Make a move
     * @param position Board coordinates
     */
    private void play(Coordinates position)
    {
        model.setPositionTo(position, turn);
        viewer.setPositionTo(position, turn);

        turn = BoardModel.swapType(turn);
        checkEndGame();
    }
Beispiel #17
0
        public void TestSetCharOccupiedCell()
        {
            var bm = new BoardModel();

            bm.SetPlayer1("a1");

            Assert.False(bm.SetPlayer1("a1"));
        }
 public addColumnWindow(BoardModel board, BoardModel BackupBoard) //Constructor
 {
     InitializeComponent();
     addColumnVM      = new addColumnViewModel(board);
     this.DataContext = addColumnVM;
     this.board       = board;
     this.BackupBoard = BackupBoard;
 }
Beispiel #19
0
 private void Start()
 {
     UIViewScript               = UIView.GetComponent <UIView>();
     storageControllerScript    = storageController.GetComponent <StorageController>();
     scoreControllerScript      = scoreController.GetComponent <ScoreController>();
     playerTurnControllerScript = playerTurnController.GetComponent <PlayerTurnController>();
     boardModelScript           = boardModel.GetComponent <BoardModel>();
 }
        public IActionResult BoardRegister(BoardModel board)
        {
            var  identity = (ClaimsIdentity)User.Identity;
            bool isSaved  = boardDal.SendtBoardRegister(board, identity.Name).Result;

            //if (isSaved)
            return(RedirectToAction("Index", "Board"));
        }
Beispiel #21
0
        /// <summary>
        /// Příkaz ke změně přezdívky uživatele
        /// </summary>
        public async Task ChangeUsername(string changedUsername, string groupName)
        {
            BoardModel board = _boardRepository.FindBoardById(groupName);
            UserModel  user  = _boardRepository.FindUserByConnectionId(board, Context.ConnectionId);

            user.Username = changedUsername;
            await Clients.Group(groupName).SendAsync("changeUsername", user.Username, user.UserId);
        }
        public UserControlBasic()
        {
            InitializeComponent();
            _boardModel     = new BoardModel();
            _boardViewModel = new BoardViewModel(_boardModel, "1234");

            SerialNumLbl.DataContext = _boardViewModel;
        }
Beispiel #23
0
        internal static void CreateBoard(BoardModel model, string id)
        {
            Board board = new Board(id);

            board.Initialize(model);

            boards.Add(board);
        }
Beispiel #24
0
        public void TestNoWinner()
        {
            var bm = new BoardModel();

            Assert.IsFalse(Game.CheckWin(bm));
            Assert.AreEqual(null, Game.Winner);
            Game.Winner = null;
        }
Beispiel #25
0
        public void TestSetX2()
        {
            var boardModel = new BoardModel();

            boardModel.Fill("c3", 2);
            var i = boardModel.GetSquare(8);

            Assert.AreEqual(2, i);
        }
Beispiel #26
0
        public void TestSetX()
        {
            var boardModel = new BoardModel();

            boardModel.Fill("b2", 1);
            var i = boardModel.GetSquare(4);

            Assert.AreEqual(1, i);
        }
Beispiel #27
0
        private static BoardModel GetTestBoard(int cell1, int cell2, int cell3)
        {
            var bm = new BoardModel();

            bm.Cells[cell1].SetSymbol(CellOwner.Player1);
            bm.Cells[cell2].SetSymbol(CellOwner.Player1);
            bm.Cells[cell3].SetSymbol(CellOwner.Player1);
            return(bm);
        }
Beispiel #28
0
        public void GetSymbolTest(int cell, CellOwner owner)
        {
            var bm = new BoardModel();

            bm.SetSymbol(cell, owner);
            var symbol = BoardView.GetSymbol(bm, cell);

            Assert.Equal(BoardView.PlayerSymbols[(int)owner], symbol);
        }
 public int?CreateBoard(int userId, BoardModel board)
 {
     using IDbConnection db = new SqlConnection(_connectionString);
     return(db.Query <int?>(
                @"INSERT INTO BoardTable (Name, UserId, Position) 
         OUTPUT INSERTED.Id VALUES
         (@boardName, @userId, @position);",
                new { boardName = board.Name, userId, position = GetBoardsCount(db, userId) }).FirstOrDefault());
 }
Beispiel #30
0
 void Start()
 {
     //
     board = new BoardModel();
     createBoard();
     //
     placePieces();
     //
 }
 public override void Initialize()
 {
     m_boardModel = new BoardModel(ReferencesHolder.Instance.GameConfigurationHolder.GetGameConfiguration().BoardConfiguration);
     base.Initialize();
 }