- Home /
Base Character error
I am having trouble with my base character script it says that at the line 12 and 83 The type or namespace name `Skill' could not be found.Im pretty shure thats a stupid error and im too dumb to see it. so please help me find my error smart unity people :)
code here:
using UnityEngine;
using System.Collections;
using System; //added to acces the enum class
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;
_primaryAttribut = new Attribute[Enum.GetValues(typeof(AttributeName)).Length];
_vital = new Vital [Enum.GetValues(typeof(VitalName)).Length];
_skill = new Skill [Enum.GetValues(typeof(VitalName)).Length];
SetupPrimaryAttribute();
SetupVitals();
SetupSkills();
}
public string Name {
get{ return _name;}
set{name = value;}
}
public int Levvel {
get{return _level;}
set{_level = value;}
}
public uint FreeExp{
get{return _freeExp;}
set{_freeExp = value;}
}
public void AddExp (uint exp){
_freeExp += exp;
CalculateLevel();
}
//take the avg of all the players skill and assign that as the player level
public void CalculateLevel(){
}
private void SetupPrimaryAttribute() {
for(int cnt = 0; cnt < _primaryAttribute.Length; cnt++){
_primaryAttribute[cnt] = new Attribute();
}
}
private void SetupVitals(){
for(int cnt = 0; cnt < _vital.Length; cnt++){
_vital[cnt] = new Vital();
}
}
private void SetupSkills(){
for(int cnt = 0; cnt < _skill.Length; cnt++){
_skill[cnt] = new Skill();
}
}
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 SetupVitalMofifiers(){
//healh
GetVital((int)VitalName.Health).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Constitution), .5f));
//energy mana
GetVital((int)VitalName.Energy).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Constitution), 1));
//mana
GetVital((int)VitalName.Mana).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Willpower), 1));
}
private void SetupSkillModifiers(){
//melee Offence
GetSkill((int)SkillName,Melee_Offence).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Might),33f));
GetSkill((int)SkillName,Melee_Offence).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Nimbleness),33f));
//melee Defence
GetSkill((int)SkillName,Melee_Defence).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Speed),33f));
GetSkill((int)SkillName,Melee_Defence).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Constitution),33f));
//magic Offence
GetSkill((int)SkillName,Magic_Offence).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Concentration),33f));
GetSkill((int)SkillName,Magic_Offence).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.WillPower),33f));
//Magic Defence
GetSkill((int)SkillName,Magic_Defence).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Concentration),33f));
GetSkill((int)SkillName,Magic_Defence).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Willpower),33f));
//Ranged Offence
GetSkill((int)SkillName,Ranged_Offence).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Concentration),33f));
GetSkill((int)SkillName,Ranged_Offence).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Speed),33f));
//Ranged Defence
GetSkill((int)SkillName,Ranged_Defence).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Speed),33f));
GetSkill((int)SkillName,Ranged_Defence).AddModifier(new ModifyingAttribute(GetPrimaryAttribute((int)AttributeName.Nimbleness),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();
}
}
How did you set up your Skill class (in Skill.cs)?
Also, where you're defining your getters and setters you'll want to change:
public int Levvel
to
public int Level
Answer by Waz · Aug 08, 2011 at 04:32 PM
Yes, you are correct that you've no idea what you're doing if you don't understand that error message. It is saying that you haven't defined the "Skill" type (looks like it is an enum). Or more likely, you didn't copy it from wherever you also copied this code that you're passing off as your own.
The code is from http://www.burgzergarcade.com/hack-slash-rpg-unity3d-game-engine-tutorial, somewhere in setting up player characteristics.
It's also a frequent error - http://www.burgzergarcade.com/forums/tutorials/hack-and-slash-rpg-basic/errors-basecharacter