It's definitely a compelling initial setup, but I found the control of the ball frustrating only because I really felt helpless. *Maybe* you wanted the player to feel that way, or feel like the odds were stacked against them. But, if you didn't, then I'd suggest giving the player's movement a bit more "oomph" because the purple balls would knock me way out of the way and then it would take me a long time to get my ball back up to speed and then I'd get hit by another ball. The aspect that is super successful is just the feeling of chaos that you see as soon as you start the game. Mayhem indeed! It's also great to see that you added a timer and UI, even though we hadn't really covered those aspects yet.
One suggestion on the scripting - I noticed that you use `Find` in the `OnTriggerEnter` method in the `winbox` script. It's best to avoid using `Find` outside of the `Start` or `Awake` methods because it's a lot of work for Unity. Especially when the object you're finding, the "sphere", is always in the scene. A better approach would be to create a variable to store the GameObject and use `Find` like this:
public class winbox : MonoBehaviour
{
private GameObject playerSphere;
private void Start()
{
playerSphere = GameObject.Find("sphere").SendMessage("Finnish");
}
private void OnTriggerEnter(Collider other)
{
playerSphere.SendMessage("Finnish");
}
}
OR, avoid using `Find` entirely and just assign the `playerSphere` variable through the Unity inspector by making it public instead of private:
public class winbox : MonoBehaviour
{
public GameObject playerSphere;
private void OnTriggerEnter(Collider other)
{
playerSphere.SendMessage("Finnish");
}
}