- Home /
error CS0103: The name `AttributeName' does not exist in the current context
I have been following BurgZergArcade's tutorials and have been loving it but i have an error with the BaseCharacter Script Here is my error:
Assets/Scripts/Character Classes/BaseCharacter.cs(118,133): error CS0103: The name `AttributeName' does not exist in the current context
Here is my BaseChraracter Code:
using UnityEngine;
using System.Collections;
using System; //added to acess enum class
using System.Collections.Generic;
public class BaseCharacter : MonoBehaviour{
private string _name;
private int _level;
private uint _freeExp;
private Attribute[] _primaryAttribute;
private Vital[] _vital;
private Skill[] _skill;
public void Awake(){
_name = string.Empty;
_level = 0;
_freeExp = 0;
_primaryAttribute = new Attribute[Enum.GetValues(typeof(AttributeName)).Length];
_vital = new Vital[Enum.GetValues(typeof(VitalName)).Length];
_skill = new Skill[Enum.GetValues(typeof(SkillName)).Length];
SetupPrimaryAttributes();
SetupVitals();
SetupSkills();
}
public string Name {
get {return _name;}
set {_name = value;}
}
public int Level {
get {return _level;}
set {_level = value;}
}
public uint FreeExp {
get {return _freeExp;}
set {_freeExp = value;}
}
public void AddExp(uint exp){
_freeExp += exp;
CalculateLevel();
}
//take average of all players skills and assign that as player level
public void CalculateLevel(){
}
private void SetupPrimaryAttributes(){
for(int cnt = 0; cnt < _primaryAttribute.Length; cnt++){
_primaryAttribute[cnt] = new Attribute();
}
}
private void SetupVitals(){
for(int cnt = 0; cnt < _vital.Length; cnt++){
_primaryAttribute[cnt] = new Attribute();
}
}
private void SetupSkills(){
for(int cnt = 0; cnt <_skill.Length; cnt++){
_primaryAttribute[cnt] = new Attribute();
}
}
public Attribute GetPrimaryAttribute(int index){
return _primaryAttribute[index];
}
public Vital GetVital(int index){
return _vital[index];
}
public Skill GetSkill(int index){
return _skill[index];
}
private void SetupVitalModifiers(){
//health
GetVital((int) VitalName.Health).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Constitution), ratio = 0.5f });
//energy
GetVital((int) VitalName.Energy).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Constitution), ratio = 1 });
//mana
GetVital((int) VitalName.Mana).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Willpower), ratio = 0.5f });
}
private void SetupSkillModifiers(){
//melee_offence
GetSkill((int) SkillName.Melee_Offence).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Might), ratio = 0.33f });
GetSkill((int) SkillName.Melee_Offence).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Nimbleness), ratio = 0.33f });
//melee _defence
GetSkill((int) SkillName.Melee_Defence).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Speed), ratio = 0.33f });
GetSkill((int) SkillName.Melee_Defence).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Constitution), ratio = 0.33f });
//magic offence
GetSkill((int) SkillName.Magic_Offence).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Concentration), ratio = 0.33f });
GetSkill((int) SkillName.Magic_Offence).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Willpower), ratio = 0.33f });
//magic defence
GetSkill((int) SkillName.Magic_Defence).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Concentration), ratio = 0.33f });
GetSkill((int) SkillName.Magic_Defence).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Willpower), ratio = 0.33f });
//ranged offence
GetSkill((int) SkillName.Ranged_Offence).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Concentration), ratio = 0.33f });
GetSkill((int) SkillName.Ranged_Offence).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Speed), ratio = 0.33f });
//ranged defence
GetSkill((int) SkillName.Ranged_Defence).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.Speed), ratio = 0.33f });
GetSkill((int) SkillName.Ranged_Defence).AddModifier(new ModifyingAttribute { attribute = GetPrimaryAttribute((int) AttributeName.NimbleNess), ratio = 0.33f });
}
public void StatUpdate(){
for(int cnt = 0; cnt < _vital.Length; cnt++)
_vital[cnt].Update();
for(int cnt = 0; cnt < _skill.Length; cnt++)
_skill[cnt].Update();
}
}
Please Help With my error thank you.
Thanks for all the help everyone... now i cant continue burgzergarcade!!
oh and i am sorry the text wont format for some reason
Nobody is going to wade through a sea of improperly formatted, barely readable code. Get it formatted correctly, and specifically point out the code (in lines 118 and 133) that the compiler is complaining about.
And, just to reiterate the importance of proper formatting, the error code CS0103 usually points to incorrect scoping of a variable, probably due to a bracket.
@matteonite I have formatted your code for you - click the ? next to the text entry to see the various methods of formatting your post. Basically either indent it 4 spaces or 1 tab before you post it or highlight it and click the code button.
Your answer
Follow this Question
Related Questions
BurgZergArcade Unity tutorial 19-20 errors. 0 Answers
BurgZergArcade tutorial 20 errors? 0 Answers
Error CS1503, Error CS1502 1 Answer
How to code in coins 1 Answer
What does "The type or namespace name x could not be found" mean? 5 Answers