Figured it out.
Getting compiler errors that I cannot seem to decipher.
In this script here, I am receiving compiler errors that I can't quite seem to decipher. I'll post the code and maybe somebody will see something that I didn't. Thanks so much
Compiler errors:
Assertion failed: Assertion failed on expression: 'm_CurrentEntriesPtr != NULL && m_IsGettingEntries'
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr) Assertion failed: Assertion failed on expression: 'm_CurrentEntriesPtr != NULL && m_IsGettingEntries'
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr) Assets/Scripts/Caller.cs(26,17): error CS1061: Type ScoreManager' does not contain a definition for EnableScoring' and no extension method EnableScoring' of type ScoreManager' could be found. Are you missing an assembly reference? Assets/Scripts/ScoreManager.cs(28,13): error CS0103: The name `scoreIncreasing' does not exist in the current context
Script:
using UnityEngine;
using UnityEngine.UI;
public class ScoreManager : MonoBehaviour
{
// SerializeField is a way to see the privae variable in the inspector.
// When coding it is a good idea to not let a variable be accessed by anything that
// it doesn't need to be. If it is only used in this class it should be private.
[SerializeField]
Text scoreText;
[SerializeField]
Text hiScoreText;
[SerializeField]
float scoreCount = 0;
[SerializeField]
float hiScoreCount = 0;
[SerializeField]
float pointsPerSecond = 2;
// Assign the player to this in the inspector.
[SerializeField]
SimplePlatformScript player;
const string sScore = "Score: ";
const string sHighScore = "High Score: ";
void Update()
{
if (scoreIncreasing)
scoreCount += pointsPerSecond * Time.deltaTime;
if (scoreCount > hiScoreCount)
{
hiScoreCount = scoreCount;
// The high score only needs to be updated when the score is higher. Not every frame.
UpdateHighScoreText();
}
UpdateScoreText();
}
public void ResetPlayerScore()
{
scoreCount = 0;
scoreText.text = "Score: 0";
}
void UpdateScoreText()
{
scoreText.text = string.Format("{0} {1}", sScore, Mathf.Round(scoreCount));
}
void UpdateHighScoreText()
{
hiScoreText.text = string.Format("{0} {1}", sHighScore, Mathf.Round(hiScoreCount));
}
}
public class SimplePlatformScript : MonoBehaviour
{
//[HideInInspector] public bool facingRight = true;
[HideInInspector] public bool jump = false;
//public float moveForce = 365f;
//public float maxSpeed = 5f;
public float jumpForce = 1000f;
public Transform groundCheck;
// Store the layer in this reference so it doesnt have to create a new reference
// every physics frame.
[SerializeField]
LayerMask whatIsGround;
// Changed this to a public so the ScoreManager can see it.
[SerializeField]
public bool grounded = false;
//private Animator anim;
private Rigidbody2D rb2d;
// Use const string anytime you are calling a string more than once.
// Everytime you call a literal string it puts a new one in memory.
// Doing it like this make it only create one.
const string sJump = "Jump";
// Use this for initialization
void Awake()
{
//anim = GetComponent<Animator>();
rb2d = GetComponent<Rigidbody2D>();
}
void Update()
{
if (Input.GetButtonDown(sJump) && grounded)
{
// This is ok to do in update as it feels better to the player.
// This is a physics action but doing an input actions
// feels off to the player if there is a delay.
rb2d.AddForce(new Vector2(0f, jumpForce));
}
}
void FixedUpdate()
{
// Any physics calculations are better done in the FixedUpdate.
grounded = Physics2D.Linecast(transform.position, groundCheck.position, whatIsGround);
}
}
Follow this Question
Related Questions
AndroidArchitecture' does not contain a definition for 'X86' 1 Answer
errors when compiling a project on Android 0 Answers
COMPILER ERROR NOT FOUND 1 Answer
compiler error - playmode 0 Answers