- Home /
Burg Zerg Arcade Tutorial Help
I am on number 6 tutorial for burgzerg arcade. and here is error: 31,22: A namespace can only contain types and namespace declarations. Here is the script.
using UnityEngine;
using System.Collections;
public class PlayerAttack : MonoBehaviour { public GameObject target; public float attackTimer; public float coolDown;
// Use this for initialization void Start () { attackTimer = 0; coolDown = 2.0f; }
// Update is called once per frame void Update () { if(attackTimer > 0) attackTimer -= Time.deltaTime;
if(attackTimer < 0) attackTimer = 0;
if(Input.GetKeyUp(KeyCode.F)) { if(attackTimer == 0) Attack(); attackTimer = coolDown; } }
}
private void Attack() { float distance = Vector3.Distance(target.transform.position, transform.position);
Vector3 dir = (target.transform.position - transform.position).normalized;
float direction = Vector3.Dot(dir, transform.forward);
Debug.Log(direction);
if(distance < 2) { if(direction > 0) { EnemyHealth eh = (EnemyHealth)target.GetComponent("EnemyHealth"); eh.AddjustCurrentHealth(-10); } }
}
Its on private void Attack() { I get the error. Any suggestions?
Answer by Julien-Lynge · Jul 20, 2012 at 08:42 PM
@RaysFan, I took your error (A namespace can only contain types and namespace declarations) and plugged it into google, and here's the very first result I saw:
http://answers.unity3d.com/questions/151609/a-namespace-can-only-contain-types-and-namespace-d.html
Next time, please try to do a bit of research before posting a question.
Ummm...my thing is inside the brackets...what did I do wrong?
so what did I do wrong? I don't know where to add brackets or what? And how can i fix it?
Answer by Doireth · Jul 20, 2012 at 08:47 PM
http://docs.unity3d.com/Documentation/ScriptReference/index.Writing_Scripts_in_Csharp_26_Boo.html
Mentions that Unity doesn't support the use of namespaces.
Answer by Doireth · Jul 20, 2012 at 10:07 PM
After the line:
if(Input.GetKeyUp(KeyCode.F)) { if(attackTimer == 0) Attack(); attackTimer = coolDown; } }
Remove one of the braces as there seems to be an extra.
Thanks..I think that fixed it! And I will research more before asking.
Sounds good. It's always a good idea to match up your brackets to make sure you don't have an extra one or are missing one. This can lead to all sorts of weird errors as Unity starts to see your code out of context (methods outside of a class or within another method, for instance).
Your answer
Follow this Question
Related Questions
Multiple Cars not working 1 Answer
Error CS1502 Help! 1 Answer
FPSPlayer script from FPS tutorial won't work... 0 Answers
Error CS1502 help! 1 Answer