Esempio n. 1
0
        mPawn PawnPre; //stan pionka przed

        #endregion Fields

        #region Constructors

        public mMove(int idGame, int idPlayer, mPawn Pawn, int postColumn, int postRow)
        {
            this.idGame = idGame;
            this.idPlayer = idPlayer;
            PawnPre=Pawn;
            PawnPost=new mPawn(PawnPre.getId(),postColumn,postRow,PawnPre.getColor());
        }
Esempio n. 2
0
 private void addChecker(mPawn pawn)
 {
     checkers.Add(pawn.getId(), pawn);
 }
Esempio n. 3
0
        //still working on it
        public static mMove movePawn(String sessionToken, int idGame,int preX, int preY, int postX, int postY)
        {
            //dodac logowanie ruchu
            int idUser = -1;
            int idPawnOut=-2;
            idUser = (int)Uta.SessionUserId(sessionToken);
            DataTable pawns= Cta.FindPawnIdByPossition(preX, preY, idGame);
            mPawn Pawn = null;
            if (pawns.Rows.Count > 0)
            {
                var row = pawns.Rows[pawns.Rows.Count - 1];
                Pawn = new mPawn(Int16.Parse(row["IdPawn"].ToString()), Int16.Parse(row["PawnColumn"].ToString()), Int16.Parse(row["PawnRow"].ToString()), Int16.Parse(row["IdColor_"].ToString()), Int16.Parse(row["IdChecker"].ToString()));
            }
                if (postY == 8 && Pawn.getColor() == 1 || postY == 1 && Pawn.getColor() == 2) Pawn.advanceToQueen();

            if(Math.Abs(postY-preY)==2){
                DataTable pawns2= Cta.FindPawnIdByPossition((preX+postX), (preY+postY), idGame);
                if (pawns.Rows.Count > 0)
                {
                    var row2 = pawns2.Rows[pawns.Rows.Count - 1];
                    idPawnOut = Int16.Parse(row2["IdPawn"].ToString());
                    Cta.PawnOut(Pawn.getidChecker(), idPawnOut);
                }
            }
            if (Pawn == null) return null;
            Cta.PawnMove(postX,postY,Pawn.getidChecker(),Pawn.getId()); //move Pawn
            Lta.Insert(Pawn.getidChecker(), Pawn.getId(), idPawnOut, preX, postX, preY, postY); //log move
            int idMove = (int)Lta.GetLastIdMove(Pawn.getidChecker());
            return new mMove(idMove,idGame, idUser, new mPawn(Pawn.getId(), Pawn.getRow(), Pawn.getColumn(), Pawn.getColor()), postX, postY);
        }