- Home /
HighScore Table
Hi guys,
I am trying to do a highscore table so every time a ball makes a collision it adds 1 point to the score. Right now I have accomplish to make the ball fall and collied with the floor, but it does not add anything to the score text.
Hope you can help me.
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI;
public class ScoreKeeper : MonoBehaviour`enter code here`
{
int score = 0;
Text text;
void Awake()
{
text = GetComponent<Text>();
}
private void Update()
{
if (score == 1)
{
text.text = "We are awesome";
}
else
{
text.text = "Score:" + score.ToString();
}
}
public void ScorePoints(int points)
{
score += points;
}
void Reset()
{
score = 0;
}
}
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class BallScored : MonoBehaviour
{
int ballsWithHuman = 20;
public int scoreValue = 0;
public Text scoreText;
public Text winText;
// Use this for initialization
void Start()
{
}
// Update is called once per frame
private void OnCollisionEnter(Collision collision)
{
if (collision.gameObject.name == "Sphere")
{
ballsWithHuman++;
Destroy(collision.gameObject);
GameObject.Find("ScoreKeeper").GetComponent<ScoreKeeper>().ScorePoints(1);
}
}
}
Answer by thePeine · Feb 10, 2017 at 01:46 AM
It's hard to tell for sure from the code. Can you tell at what point things aren't working? If you add Debug.Log statements, are you getting into the CollisionEnter? Are you getting in the name == "Sphere" block?
I only see one thing that might be off. What object is your BallScored script attached to? Is it on the ball itself? Just curious, because if so, the OnCollision would only be fired when the ball collides with itself, which isn't going to happen.
Your answer
Follow this Question
Related Questions
Multiple Cars not working 1 Answer
Distribute terrain in zones 3 Answers
2D Tile Based collision problem 0 Answers
Align to grid in runtime problem 1 Answer