Hello today i reinstalled my Computer and when it was done i took my project over to my computer at the desktop same place as before but when i start unity and debuged i got this error
NullReferenceException: Object reference not set to an instance of an object
CharacterGenerator.DisplayName () (at Assets/Scripts/CharacterClasses/CharacterGenerator.cs:70)
CharacterGenerator.OnGUI () (at Assets/Scripts/CharacterClasses/CharacterGenerator.cs:55)
And
NullReferenceException: Object reference not set to an instance of an object
CharacterGenerator.Start () (at Assets/Scripts/CharacterClasses/CharacterGenerator.cs:41)
So i dont know how to fix this my the main code is
using UnityEngine;
using System.Collections;
using System;
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;
private const int OFFSET = 5;
private const int LINE_HIGHT = 20;
private const int STAT_LABLE_WIDTH = 100;
private const int BASEVALUE_LABLE_WIDTH = 30;
private const int BUTTON_WIDTH = 20;
private const int BUTTON_HIGTH = 20;
private int statStartingPos = 40;
public GUISkin mySkin;
public GameObject playerPrefab;
// Use this for initialization
void Start () {
GameObject pc = Instantiate(playerPrefab, Vector3.zero, Quaternion.identity)as GameObject;
pc.name = "pc";
_toon = pc.GetComponent<PlayerCharacter>();
PointsLeft = STARTING_POINTS;
for(int cnt = 0; cnt < Enum.GetValues(typeof(AttributeName)).Length; cnt++) {
_toon.GetPrimaryAttribute(cnt).BaseValue = STARTING_VALUE;
//_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() {
GUI.skin = mySkin;
DisplayName();
DisplayPointsLeft();
DisplayAttributes();
DisplayVitals();
DisplaySkills();
if(_toon.Name == "" || PointsLeft > 0 )
DisplayCreateLabel();
else
DisplayCreateButton();
}
private void DisplayName(){
GUI.Label(new Rect(10, 10, 50, 25), "Name:");
_toon.Name = GUI.TextField(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(OFFSET, statStartingPos + (cnt * LINE_HIGHT), STAT_LABLE_WIDTH, LINE_HIGHT), ((AttributeName)cnt).ToString() );
GUI.Label(new Rect(STAT_LABLE_WIDTH + OFFSET, statStartingPos + (cnt * LINE_HIGHT), BASEVALUE_LABLE_WIDTH, LINE_HIGHT), _toon.GetPrimaryAttribute(cnt).AdjustedBaseValue.ToString());
if(GUI.Button (new Rect(OFFSET + STAT_LABLE_WIDTH + BASEVALUE_LABLE_WIDTH + BUTTON_WIDTH, statStartingPos + (cnt * BUTTON_HIGTH), BUTTON_WIDTH, BUTTON_HIGTH), "+")) {
if(PointsLeft > 0) {
_toon.GetPrimaryAttribute(cnt).BaseValue++;
PointsLeft--;
_toon.StatUpdate();
}
}
if(GUI.Button (new Rect(OFFSET + STAT_LABLE_WIDTH + BASEVALUE_LABLE_WIDTH, statStartingPos + (cnt * BUTTON_HIGTH), BUTTON_WIDTH, BUTTON_HIGTH), "-")) {
if(_toon.GetPrimaryAttribute(cnt).BaseValue > MIN_STARTING_ATTRIBUTE_VALUE) {
_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(OFFSET, statStartingPos + ((cnt + 7) * LINE_HIGHT), 100, LINE_HIGHT), ((VitalName)cnt).ToString());
GUI.Label(new Rect(OFFSET + STAT_LABLE_WIDTH, statStartingPos + ((cnt + 7) * LINE_HIGHT), BASEVALUE_LABLE_WIDTH, LINE_HIGHT), _toon.GetVital(cnt).AdjustedBaseValue.ToString());
}
}
private void DisplaySkills() {
for(int cnt = 0; cnt < Enum.GetValues(typeof(SkillName)).Length; cnt++) {
GUI.Label(new Rect(OFFSET + STAT_LABLE_WIDTH + BASEVALUE_LABLE_WIDTH + BUTTON_WIDTH * 2 + OFFSET * 2, statStartingPos + (cnt * LINE_HIGHT), STAT_LABLE_WIDTH, LINE_HIGHT), ((SkillName)cnt).ToString());
GUI.Label(new Rect(OFFSET + STAT_LABLE_WIDTH + BASEVALUE_LABLE_WIDTH + BUTTON_WIDTH * 2 + OFFSET * 2 + STAT_LABLE_WIDTH, statStartingPos + (cnt * LINE_HIGHT), BASEVALUE_LABLE_WIDTH, LINE_HIGHT), _toon.GetSkill(cnt).AdjustedBaseValue.ToString());
}
}
private void DisplayPointsLeft(){
GUI.Label(new Rect(250, 10, 100, 25), "Points Left: " + PointsLeft.ToString());
}
private void DisplayCreateLabel() {
GUI.Label (new Rect(Screen.width/2 - 50, statStartingPos + (10 * LINE_HIGHT), 100, LINE_HIGHT), "Creating...", "Button");
}
private void DisplayCreateButton() {
if(GUI.Button (new Rect(Screen.width/2 - 50, statStartingPos + (10 * LINE_HIGHT), 100, LINE_HIGHT), "Create")){
GameSettings gsScript = GameObject.Find("__GameSettings").GetComponent<GameSettings>();
//Change The Cur Value of the vital to the max modified value of that vital
UpdateCurVitalValues();
gsScript.SaveCharacterData();
Application.LoadLevel("Level1");
}
}
private void UpdateCurVitalValues(){
for(int cnt = 0; cnt < Enum.GetValues(typeof(VitalName)).Length; cnt++) {
_toon.GetVital(cnt).CurValue = _toon.GetVital(cnt).AdjustedBaseValue;
}
}
}