i’m following 3d buzz’s tutorial on how to implament maya characters but this script has the following erors
Assets/TP Animator.cs(16,14): error CS1519: Unexpected symbol public' in class, struct, or interface member declaration Assets/TP Animator.cs(58,34): error CS1547: Keyword
void’ cannot be used in this context
Assets/TP Animator.cs(58,35): error CS1525: Unexpected symbol (', expecting
)‘, ,',
;’, [', or
=’
Assets/TP Animator.cs(74,37): error CS1525: Unexpected symbol State' Assets/TP Animator.cs(82,44): error CS1525: Unexpected symbol
case’
Assets/TP Animator.cs(103,14): error CS0116: A namespace can only contain types and namespace declarations
Assets/TP Animator.cs(137,1): error CS8025: Parsing error
and this is the script
using UnityEngine;
using System.Collections;
public class TPAnimator : MonoBehaviour
{
public enum Direction
{
Stationary, Forward, Bacward, Left, Right,
LeftForward, RightForward, LeftBackwards, RightBackward
}
public enum CharacterState
{
Idle, Running, RunningBackward, StrafingLeft, StrafingRight, Jumping,
Falling, Landing, Climbing, Sliding, Using, Dead, ActionLocked
public static TP_Animator Instance;
public Direction MoveDirection { get; set; }
public CharacterState State { get; set; }
void Awake ()
{
Instance = this;
}
void Update ()
{
DetermineCurrentState();
ProcessCurrentState();
Debug.Log("Current Character State: " + State.ToString());
}
public void DetermineCurrentMoveDirection()
{
var forward = false;
var backward = false;
var left = false;
var right = false;
if (TP_Motor.Instance.MoveVector.z > 0)
forward = true;
if (TP_Motor.Instance.MoveVector.z < 0)
backward = true;
if (Tp_Motor.Instance.MoveVector.x > 0)
right = true;
if (Tp_Motor.Instance.MoveVector.x < 0)
left = true;
if (forward)
{
if (left)
MoveDirection = Direction.LeftForward;
else if (right)
MoveDirection = Direction.RightForward;
void DetermineCurrentState()
{
if (State == CharacterState.Dead)
return;
if (!Tp_Controller.CharacterController.isGrounded)
{
if (State != CharacterState.Falling &&
State != CharacterState.Jumping &&
State != CharacterState.Landing)
{
//We Should be falling
}
if (State != CharacterState.Falling &&
State != CharacterState.Jumping &&
State != CharacterState.Landing
State != CharacterState.Using &&
State != CharacterState.Climbing &&
State != CharacterState.Sliding)
{
switch (MoveDirection)
{
case Direction.Stationary:
State = CharacterState.Idle;
case Direction.Forward:
State = CharacterState.Running;
case Direction.Bacward:
State = CharacterState.RunningBackward;
case Direction.Left:
State = CharacterState.StrafingLeft;
case Direction.Right:
State = CharacterState.StrafingRight;
case Direction.LeftForward:
State = CharacterState.Running;
case Direction.RightForward:
State = CharacterState.Running;
case Direction.LeftBackwards:
State = CharacterState.RunningBackward;
case Direction.RightBackward:
State = CharacterState.RunningBackward;
}
}
}
}
void ProcessCurrentState()
{
switch (State)
{
case CharacterState.Idel:
break;
case CharacterState.Running:
break;
case CharacterState.RunningBackwards:
break;
case CharacterState.Idel:
break;
case CharacterState.StrafingLeft:
break;
case CharacterState.StrafingRight:
break;
case CharacterState.Jumping:
break;
case CharacterState.Falling:
break;
case CharacterState.Landing:
break;
case CharacterState.Climbing:
break;
case CharacterState.Sliding:
break;
case CharacterState.Using:
break;
case CharacterState.Dead:
break;
case CharacterState.ActionLocked:
break;
}
}
}
any help on whats wrong???
by the way it’s a c# script