I actually have a lot of problem over here. I'm quite sure I'm doing this right:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class Targetting : MonoBehaviour {
public List targets;
public Transform selectedTarget;
private Transform myTransform;
// Use this for initialization
void Start () {
targets = new List ();
selectedTarget = null;
myTransform = transform;
AddAllEnemies ();
}
public void AddAllEnemies()
{
GameObject[] go = GameObject.FindGameObjectsWithTag ("Enemy");
foreach (GameObject enemy in go)
AddTarget (enemy.transform);
}
public void AddTarget (Transform enemy)
{
targets.Add (enemy);
}
private void SortTargetsByDistance()
{
targets.Sort(delegate(Transform t1, Transform t2) {
return Vector3.Distance(t1.position, myTransform.position).CompareTo(Vector3.Distance(t2.position, myTransform.position))
});
}
private void TargetEnemy()
{
if(selectedTarget == null)
{
SortTargetsByDistance();
selectedTarget = targets[0];
}
}
// Update is called once per frame
void Update () {
if (Input.GetKeyDown (KeyCode.Tab))
{
TargetEnemy ();
}
}
}
But these errors keep showing up:
Assets/Scripts/Targetting.cs(38,17): error CS1525: Unexpected symbol `}', expecting `;'
Assets/Scripts/Targetting.cs(42,15): error CS1525: Unexpected symbol `private', expecting `;'
Assets/Scripts/Targetting.cs(52,14): error CS0116: A namespace can only contain types and
namespace declarations
Assets/Scripts/Targetting.cs(58,1): error CS8025: Parsing error
I've been looking for the failiures for more than a day, and I couldn't find it. Does anyone have any idea what's wrong with it?
**Note:
I'm no pro, so sorry.**
↧