Added rules for check condition, isInCheck() method and players cannot put themselves in check