3 errors do not know how to fix...

My script is this:
using UnityEngine;
using System.Collections;

[RequireComponent (typeof(BoxCollider))]
public class Playerphysics : MonoBehaviour {

public LayerMask collisionMask;
private BoxCollider collider;
private Vector3 s;
private Vector3 c;

private float skin = .005f;

[HideInInspector]
public bool grounded;

Ray ray;
RaycastHit hit;

void Start() {
	collider = GetComponent<BoxCollider> ();
	s = collider.size;
	c = collider.center;
}

public void Move(Vector2 amountToMove) {

	float deltaY = amountToMove.y;
	float deltaX = amountToMove.x;
	Vector2 p = transform.position;

	for (int i = 0; i <=3; i ++) {
		float dir = Mathf.Sign(deltaY);
		float x = (p.x + c.x -s.x/2) + s.x/2 * i;//left, centre and then rightmost point of collider
		float y = p.y + c.y + s.y/2 * dir;//bottome of collider

		ray = new Ray(new Vector2(x,y), new Vector2(0,dir));

		if (Physics.Raycast(Ray,out hit,Mathf.Abs(deltaY),collisionMask)) {
			// Get Distance beetween player and gorund
			float dst = Vector3.Distance (ray.origin, hit.point);

			//Stop player's downwards movement after coming within skin with of a collider
			if (dst > skin) {
			}
				else {
				deltaY = 0;
	}
			grounded = true;
			break;

			}

			}

	Vector2 finalTransform = new Vector2(deltaX,deltaY);

	transform.Translate(finalTransform);
}

}

The errors say:

  1. Argument 1 cannot convert “object” expression to type “UnityEngine.Vector3”
    2)The best overloaded mthed match for"UnityEngine.Physics.Raycast(UnityEngine.Vector3, Unity Engine.Vecotr 3, float, int)" has some invalid arguments.
  2. Expression dentoes a “type”, where a “variable”, “value” or “method group” was expected

The problem is with this code (your posted line 31):

ray = new Ray(new Vector2(x,y), new Vector2(0,dir));
 
if (Physics.Raycast(Ray,out hit,Mathf.Abs(deltaY),collisionMask)) {

You are passing Ray (note the capital R) as a parameter to the Raycast method, however you really wanted to pass ray (small case r).