Project
Roll-a-ball
Collecting, Scoring and Building the Game
Tutorial
Beginner
45 Mins
Unity Technologies
Overview
Summary
Creating and placing the "Pick Up" collectables.
Language
English
Recommended Unity Versions
5
1.
Creating Collectable Objects
Creating and placing the "Pick Up" collectables.

Rotator

using UnityEngine; using System.Collections; public class Rotator : MonoBehaviour { void Update () { transform.Rotate (new Vector3 (15, 30, 45) * Time.deltaTime); } }

2.
Collecting the Pick Up Objects
Collecting the pick-up objects; discussing physics, collisions and triggers.
This code reflects the current state of the script as of the end of this particular lesson. This script will continue to grow and mature as the series continues.

PlayerController

using UnityEngine; using System.Collections; public class PlayerController : MonoBehaviour { public float speed; private Rigidbody rb; void Start () { rb = GetComponent<Rigidbody>(); } void FixedUpdate () { float moveHorizontal = Input.GetAxis ("Horizontal"); float moveVertical = Input.GetAxis ("Vertical"); Vector3 movement = new Vector3 (moveHorizontal, 0.0f, moveVertical); rb.AddForce (movement * speed); } void OnTriggerEnter(Collider other) { if (other.gameObject.CompareTag ("Pick Up")) { other.gameObject.SetActive (false); } } }

3.
Displaying the Score and Text
Counting, displaying text and ending the game.

PlayerController

using UnityEngine; using UnityEngine.UI; using System.Collections; public class PlayerController : MonoBehaviour { public float speed; public Text countText; public Text winText; private Rigidbody rb; private int count; void Start () { rb = GetComponent<Rigidbody>(); count = 0; SetCountText (); winText.text = ""; } void FixedUpdate () { float moveHorizontal = Input.GetAxis ("Horizontal"); float moveVertical = Input.GetAxis ("Vertical"); Vector3 movement = new Vector3 (moveHorizontal, 0.0f, moveVertical); rb.AddForce (movement * speed); } void OnTriggerEnter(Collider other) { if (other.gameObject.CompareTag ( "Pick Up")) { other.gameObject.SetActive (false); count = count + 1; SetCountText (); } } void SetCountText () { countText.text = "Count: " + count.ToString (); if (count >= 12) { winText.text = "You Win!"; } } }

4.
Building the Game
Building the game as a Standalone application.