Script Errors!


Player Physics

using UnityEngine;
using System.Collections;

public class PlayerPhysics : MonoBehaviour {

public LayerMask collisionMask;

private BoxCollider collider;
private Vector3 size;
private Vector3 center;

private float skin = .005f;

[HideInInspector]
public bool grounded;

Ray ray;
RaycastHit hit;


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

public void Move(Vector2 moveAmount) {
	
	float deltaX = moveAmount.x;
	float deltaY = moveAmount.y;
	Vector2 p = transform.position;
	
	grounded = false
	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; // Bottom 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 between player and ground!
			float dst = Vector3.Distance (ray.origin, hit.point);
			
			// Stop player's downwards movement after coming within skin width of a collider.
			if (dst > skin) {
				deltaY = -dst + skin;
			}
			else {
				deltaY = 0;
			}
			grounded = true;
			break;
			
		}
	
	}



	Vector2 finalTransform = new Vector2(deltaX,deltaY);

	transform.Translate(finalTransform);
}

}


Player Controller

using UnityEngine;
using System.Collections;

[RequireComponent(typeof(PlayerPhysics))]
public class PlayerController : MonoBehaviour {

// Player Handling
public float gravity = 20;
public float speed = 8;
public float acceleration = 12; 

private float currentSpeed;
private float targetSpeed;
private Vector2 amountToMove;

private PlayerPhysics playerPhysics;

void Start () {
	playerPhysics = GetComponent<PlayerPhysics>();
}

void Update () {
	targetSpeed = Input.GetAxisRaw("Horizontal") * speed;
	currentSpeed = IncrementTowards(currentSpeed, targetSpeed,acceleration);
	
	if (playerPhysics.grounded) {
		amountToMove.y = 0;
		
		// Jump
		if (Input.GetButtonDown("Jump")) {
			amountToMove.y = jumpHeight;
	amountToMove.x = currentSpeed;
	amountToMove.y -= gravity * UnityEngine.Time.deltaTime;
	playerPhysics.Move(amountToMove * UnityEngine.Time.deltaTime);
}

//Increase n towards target by speed
private float IncrementTowards(float n, float target, float a) {
	if (n == target) {
		return n;
	}
	else {
		float dir = Mathf.Sign(target - n); // Must n be increased or decreased to get closer to target
		n += a * UnityEngine.Time.deltaTime * dir;
		return (dir == Mathf.Sign(target-n))? n: target; // If n has passed target then return target, otherwise return n
	}
}

}

Is there any errors you can see and/or match these?
Assets/Scripts/PlayerController.cs(39,15): error CS1525: Unexpected symbol private' Assets/Scripts/PlayerPhysics.cs(34,19): error CS1525: Unexpected symbol for’
Assets/Scripts/PlayerPhysics.cs(34,37): error CS0201: Only assignment, call, increment, decrement, and new object expressions can be used as a statement
Assets/Scripts/PlayerPhysics.cs(34,43): error CS1525: Unexpected symbol )', expecting ;’
Assets/Scripts/PlayerPhysics.cs(63,36): error CS1519: Unexpected symbol (' in class, struct, or interface member declaration Assets/Scripts/PlayerPhysics.cs(63,51): error CS1519: Unexpected symbol )’ in class, struct, or interface member declaration
Assets/Scripts/PlayerPhysics.cs(65,1): error CS8025: Parsing error

I’ve been through the code multiple times and cant find a solution to what’s wrong and how to fix it.

You are missing the closing of the update:

void Update () {
    targetSpeed = Input.GetAxisRaw("Horizontal") * speed;
    currentSpeed = IncrementTowards(currentSpeed, targetSpeed,acceleration);
 
    if (playerPhysics.grounded) { //this one opens
       amountToMove.y = 0;
 
       // Jump
       if (Input.GetButtonDown("Jump")) {// this one opens
         amountToMove.y = jumpHeight;
    amountToMove.x = currentSpeed;
    amountToMove.y -= gravity * UnityEngine.Time.deltaTime;
    playerPhysics.Move(amountToMove * UnityEngine.Time.deltaTime);
   // no closing to both

}

Your missing 2 } after your “void Update()” in PlayerController.

Your missing an ; after “grounded = false” in PlayerPhysics.

The following code is wrong.

s = gameObject.collider.size;  //  s is not properly defined. size does not exist as a member of collider.
c = gameObject.collider.center;  //  c is not properly defined. center does not exist as a member of collider.

Fixing these will remove your errors.