diff --git a/Assets/Scripts/DestroyByContact.cs b/Assets/Scripts/DestroyByContact.cs
index dfcbcbf8389ffb8b635a11e3a0979e709f12109f..71030115a92d4a8e682628523ce719c90dd78d5b 100644
--- a/Assets/Scripts/DestroyByContact.cs
+++ b/Assets/Scripts/DestroyByContact.cs
@@ -31,7 +31,7 @@ public class DestroyByContact : MonoBehaviour
         if (other.tag == "Player")
         {
             Instantiate(playerExplosion, other.transform.position, other.transform.rotation);
-            //gameController.GameOver ();
+            gameController.GameOver ();
         }
         gameController.AddScore (scoreValue);
         Destroy(other.gameObject);
diff --git a/Assets/Scripts/GameController.cs b/Assets/Scripts/GameController.cs
index 53966854a59a2f93b2928e6db9f12a189c598f27..1277f35ad188dde93638c32720fbb7e9968ad1df 100644
--- a/Assets/Scripts/GameController.cs
+++ b/Assets/Scripts/GameController.cs
@@ -11,14 +11,34 @@ public class GameController : MonoBehaviour
     public float waveWait;
     public GUIText scoreText;
     private int score;
+    public GUIText restartText;
+    public GUIText gameOverText;
+
+    private bool gameOver;
+    private bool restart;
 
     void Start ()
     {
-    		score = 0;
+    		gameOver = false;
+        restart = false;
+        restartText.text = "";
+        gameOverText.text = "";
+        score = 0;
         UpdateScore ();
         StartCoroutine (SpawnWaves ());
     }
 
+    void Update ()
+    {
+        if (restart)
+        {
+            if (Input.GetKeyDown (KeyCode.R))
+            {
+                Application.LoadLevel (Application.loadedLevel);
+            }
+        }
+    }
+
     IEnumerator SpawnWaves ()
     {
         yield return new WaitForSeconds (startWait);
@@ -32,6 +52,12 @@ public class GameController : MonoBehaviour
                 yield return new WaitForSeconds (spawnWait);
             }
             yield return new WaitForSeconds (waveWait);
+            if (gameOver)
+            {
+                restartText.text = "Press 'R' for Restart";
+                restart = true;
+                break;
+            }
         }
     }
 
@@ -45,4 +71,10 @@ public class GameController : MonoBehaviour
     {
         scoreText.text = "Score: " + score;
     }
+
+    public void GameOver ()
+    {
+        gameOverText.text = "Game Over!";
+        gameOver = true;
+    }
 }
\ No newline at end of file
diff --git a/Assets/_Scenes/Main.unity b/Assets/_Scenes/Main.unity
index 27dca43cd6045163e5b3993d3cd863dda5e5582d..43bd85c896a898f9370898cbc223f07703e9c605 100644
Binary files a/Assets/_Scenes/Main.unity and b/Assets/_Scenes/Main.unity differ
diff --git a/Library/ScriptAssemblies/Assembly-CSharp-Editor.dll b/Library/ScriptAssemblies/Assembly-CSharp-Editor.dll
index 87f768d1e049ff3c92c911c1c1a720357081de90..b61a006efb9f2af495e11fbba7e1187b995a3a1b 100644
Binary files a/Library/ScriptAssemblies/Assembly-CSharp-Editor.dll and b/Library/ScriptAssemblies/Assembly-CSharp-Editor.dll differ
diff --git a/Library/ScriptAssemblies/Assembly-CSharp.dll b/Library/ScriptAssemblies/Assembly-CSharp.dll
index 1cb3a101c6a182ae765b440e6ce0fc73a6268e7e..fe9f4ed42472afda15a9ea81885606d6d12d9707 100644
Binary files a/Library/ScriptAssemblies/Assembly-CSharp.dll and b/Library/ScriptAssemblies/Assembly-CSharp.dll differ
diff --git a/Library/ScriptAssemblies/Assembly-CSharp.pdb b/Library/ScriptAssemblies/Assembly-CSharp.pdb
index 6b4fc26b53c7c32b7a58bb379e072f786ae3ca2b..180f66823adb3e6530dd5434ab510a88da8d1ce8 100644
Binary files a/Library/ScriptAssemblies/Assembly-CSharp.pdb and b/Library/ScriptAssemblies/Assembly-CSharp.pdb differ
diff --git a/Library/StateCache/Hierarchy/e13ca3-mainStage.json b/Library/StateCache/Hierarchy/e13ca3-mainStage.json
index 1413e859c4b57be311a0cc88bceb8da04175ec6e..779a2be03bb5047f3b11a66966f848001ebcb67c 100644
--- a/Library/StateCache/Hierarchy/e13ca3-mainStage.json
+++ b/Library/StateCache/Hierarchy/e13ca3-mainStage.json
@@ -1 +1 @@
-{"m_ExpandedPrefabGameObjectFileIDs":[],"m_ExpandedSceneGameObjectInstanceIDs":[-1086],"m_ScrollY":0.0,"m_LastClickedFileID":0,"m_LastClickedInstanceID":10556}
\ No newline at end of file
+{"m_ExpandedPrefabGameObjectFileIDs":[],"m_ExpandedSceneGameObjectInstanceIDs":[-4810,-1086],"m_ScrollY":0.0,"m_LastClickedFileID":0,"m_LastClickedInstanceID":-5058}
\ No newline at end of file
diff --git a/Library/assetDatabase3 b/Library/assetDatabase3
index ad23b5c6015454e4db8481333259f0fb81c94df6..6502eb2377bb1b20998fcdfed0bb5a37cc295402 100644
Binary files a/Library/assetDatabase3 and b/Library/assetDatabase3 differ
diff --git a/Library/metadata/2e/2e09832c6ef66fe419c6f1fe019a7034 b/Library/metadata/2e/2e09832c6ef66fe419c6f1fe019a7034
index f49b684bcf9cf2c5d9ef4bb18afadfb33b7e07f0..55aa4aed10e87f12791cb50fb830487a9c5f5736 100644
Binary files a/Library/metadata/2e/2e09832c6ef66fe419c6f1fe019a7034 and b/Library/metadata/2e/2e09832c6ef66fe419c6f1fe019a7034 differ
diff --git a/Library/metadata/fa/fa576266ab8c86549be2c284a9391a30 b/Library/metadata/fa/fa576266ab8c86549be2c284a9391a30
index 77c009845914cef22d35e72b37e34d1f79bb54f7..19742cb3239400feaf38a56bbda6a5258e75870d 100644
Binary files a/Library/metadata/fa/fa576266ab8c86549be2c284a9391a30 and b/Library/metadata/fa/fa576266ab8c86549be2c284a9391a30 differ