Ok so I finished out the character generation and I have a load of errors I'm seeing. Many of these over time I have corrected however right now my stats (e.g. Might and Con) have what looks like a "T" over the first number in each. My Skills are showing something similar but it looks like a 27 and a 55 have been placed on top of each other. I've dug through the code but I can't seem to find where this error is occurring.
This is rather hard to tell considering the above however I don't believe the bonuses as I'm increasing stats (e.g. con) are applying to health correctly.
Unity Version is 3.3
I'm dropping the character generator code I have so far below.
public class CharacterGenerator : MonoBehaviour {
private PlayerCharacter _toon;
private const int STARTING_POINTS= 350;
private const int MIN_STARTING_ATTRIBUTE_VALUE = 10;
private const int STARTING_VALUE = 50;
private int pointsLeft;
// Use this for initialization
void Start () {
_toon = new PlayerCharacter();
_toon.Awake();
pointsLeft = STARTING_POINTS;
for(int cnt = 0; cnt < Enum.GetValues(typeof(AttributeName)).Length; cnt++) {
_toon.GetPrimaryAttribute(cnt).BaseValue = STARTING_VALUE;
pointsLeft -= (STARTING_VALUE - MIN_STARTING_ATTRIBUTE_VALUE);
}
_toon.StatUpdate();
}
// Update is called once per frame
void Update () {
}
void OnGUI() {
DisplayName();
DisplayPointsLeft();
DisplayAttributes();
DisplayVitals();
DisplaySkills();
}
private void DisplayName() {
GUI.Label(new Rect(10, 10, 50, 25 ), "Name: ");
_toon.Name = GUI.TextArea(new Rect(65, 10, 100, 25), _toon.Name);
}
private void DisplayAttributes() {
for(int cnt = 0; cnt < Enum.GetValues(typeof(AttributeName)).Length; cnt++) {
GUI.Label(new Rect(10, 40+ (cnt * 25), 100, 25), ((AttributeName)cnt).ToString());
GUI.Label(new Rect(115, 40+ (cnt * 25), 30, 25), _toon.GetPrimaryAttribute(cnt).AdjustedBaseValue.ToString());
if(GUI.Button(new Rect(150, 40 + (cnt * 25), 25, 25), "-")) {
if(_toon.GetPrimaryAttribute(cnt).BaseValue > MIN_STARTING_ATTRIBUTE_VALUE) {
_toon.GetPrimaryAttribute(cnt).BaseValue--;
pointsLeft++;
_toon.StatUpdate();
}
}
if(GUI.Button(new Rect(180, 40 + (cnt * 25), 25, 25), "+")) {
if(pointsLeft > 0) {
_toon.GetPrimaryAttribute(cnt).BaseValue++;
pointsLeft--;
_toon.StatUpdate();
}
}
}
}
private void DisplayVitals() {
for(int cnt = 0; cnt < Enum.GetValues(typeof(VitalName)).Length; cnt++) {
GUI.Label(new Rect(10, 40+ ((cnt + 7) * 25), 100, 25), ((VitalName)cnt).ToString());
GUI.Label(new Rect(115, 40+ ((cnt + 7) * 25), 30, 25), _toon.GetVital(cnt).AdjustedBaseValue.ToString());
}
}
private void DisplaySkills() {
for(int cnt = 0; cnt < Enum.GetValues(typeof(SkillName)).Length; cnt++) {
GUI.Label(new Rect(250, 40+ (cnt * 25), 100, 25), ((SkillName)cnt).ToString());
GUI.Label(new Rect(355, 40+ (cnt * 25), 30, 25), _toon.GetSkill(cnt).AdjustedBaseValue.ToString());
}
}
private void DisplayPointsLeft() {
GUI.Label(new Rect(250, 10, 100, 25 ), "Points Left: " + pointsLeft.ToString());
}
}
I'm unsure what is causing the problem here however if you see something that doesn't look right please let me know.






