From fd99c1153a287c87f9c1f361ad7bb200fb963bd3 Mon Sep 17 00:00:00 2001
From: Pavel Krisys Verbel <p.verbel@free.fr>
Date: Sun, 1 Oct 2017 13:17:17 +0200
Subject: [PATCH] Correction

---
 .vs/Shoot'em up/v14/.suo                      | Bin 0 -> 117248 bytes
 Assets/Scripts/Game/EnemyDeathManager.cs      |  18 +++++
 Assets/Scripts/Game/EnemyDeathManager.cs.meta |  12 ++++
 Assets/Scripts/Game/EnemyFactory.cs           |  65 ++++++++++++++++++
 Assets/Scripts/Game/EnemyFactory.cs.meta      |  12 ++++
 Assets/Scripts/Game/ImmunityManager.cs        |  59 ++++++++++++++++
 Assets/Scripts/Game/ImmunityManager.cs.meta   |  12 ++++
 Assets/Scripts/Game/ScoreManager.cs           |  31 +++++++++
 Assets/Scripts/Game/ScoreManager.cs.meta      |  12 ++++
 Assets/Scripts/Game/ScoreMemory.cs            |  22 ++++++
 Assets/Scripts/Game/ScoreMemory.cs.meta       |  12 ++++
 Assets/Scripts/Game/ScorePrinter.cs           |  15 ++++
 Assets/Scripts/Game/ScorePrinter.cs.meta      |  12 ++++
 Assets/Scripts/Menus/GameOverScorePrinter.cs  |  18 +++++
 .../Menus/GameOverScorePrinter.cs.meta        |  12 ++++
 15 files changed, 312 insertions(+)
 create mode 100644 .vs/Shoot'em up/v14/.suo
 create mode 100644 Assets/Scripts/Game/EnemyDeathManager.cs
 create mode 100644 Assets/Scripts/Game/EnemyDeathManager.cs.meta
 create mode 100644 Assets/Scripts/Game/EnemyFactory.cs
 create mode 100644 Assets/Scripts/Game/EnemyFactory.cs.meta
 create mode 100644 Assets/Scripts/Game/ImmunityManager.cs
 create mode 100644 Assets/Scripts/Game/ImmunityManager.cs.meta
 create mode 100644 Assets/Scripts/Game/ScoreManager.cs
 create mode 100644 Assets/Scripts/Game/ScoreManager.cs.meta
 create mode 100644 Assets/Scripts/Game/ScoreMemory.cs
 create mode 100644 Assets/Scripts/Game/ScoreMemory.cs.meta
 create mode 100644 Assets/Scripts/Game/ScorePrinter.cs
 create mode 100644 Assets/Scripts/Game/ScorePrinter.cs.meta
 create mode 100644 Assets/Scripts/Menus/GameOverScorePrinter.cs
 create mode 100644 Assets/Scripts/Menus/GameOverScorePrinter.cs.meta

diff --git a/.vs/Shoot'em up/v14/.suo b/.vs/Shoot'em up/v14/.suo
new file mode 100644
index 0000000000000000000000000000000000000000..edcdda0a807d2e4a6717919b68a5ab505c4c5a4e
GIT binary patch
literal 117248
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

literal 0
HcmV?d00001

diff --git a/Assets/Scripts/Game/EnemyDeathManager.cs b/Assets/Scripts/Game/EnemyDeathManager.cs
new file mode 100644
index 0000000..1ff8e66
--- /dev/null
+++ b/Assets/Scripts/Game/EnemyDeathManager.cs
@@ -0,0 +1,18 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class EnemyDeathManager : DeathManager
+{
+    public EnemyFactory enemyFactory;
+
+    [SerializeField]
+    int enemyDeathScore;
+
+    public override void Die()
+    {
+        base.Die();
+        ScoreManager.Instance.IncreaseScore(enemyDeathScore);
+        enemyFactory.Release(this.gameObject);
+    }
+}
diff --git a/Assets/Scripts/Game/EnemyDeathManager.cs.meta b/Assets/Scripts/Game/EnemyDeathManager.cs.meta
new file mode 100644
index 0000000..2770f4f
--- /dev/null
+++ b/Assets/Scripts/Game/EnemyDeathManager.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 7913e1dd17c5cfc4bad3f69ca7ef9303
+timeCreated: 1506697926
+licenseType: Free
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/Scripts/Game/EnemyFactory.cs b/Assets/Scripts/Game/EnemyFactory.cs
new file mode 100644
index 0000000..fa285f2
--- /dev/null
+++ b/Assets/Scripts/Game/EnemyFactory.cs
@@ -0,0 +1,65 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class EnemyFactory : MonoBehaviour
+{
+    public enum EnemyType
+    {
+        normalEnemy = 0,
+        zigzagEnemy = 1
+    }
+
+    [SerializeField]
+    GameObject[] enemyPrefabs = new GameObject[2];
+
+    List<GameObject>[] enemyStock = new List<GameObject>[2];
+
+    private void Start()
+    {
+        enemyStock[0] = new List<GameObject>();
+        enemyStock[1] = new List<GameObject>();
+    }
+
+    public GameObject GetEnemy(EnemyType enemyType)
+    {
+        GameObject newEnemy;
+        if (enemyStock[(int)enemyType].Count == 0)
+        {
+            newEnemy = Instantiate(enemyPrefabs[(int)enemyType]);
+            BaseEnemyManager enemyManager = newEnemy.GetComponent<BaseEnemyManager>();
+            if(enemyManager)
+            {
+                enemyManager.enemyType = enemyType;
+                enemyManager.enemyFactory = this;
+            }
+            EnemyDeathManager enemyDeathManager = newEnemy.GetComponent<EnemyDeathManager>();
+            if(enemyDeathManager)
+            {
+                enemyDeathManager.enemyFactory = this;
+            }
+        }
+        else
+        {
+            newEnemy = enemyStock[(int)enemyType][0];
+            enemyStock[(int)enemyType].RemoveAt(0);
+            newEnemy.SetActive(true);
+        }
+        return newEnemy;
+    }
+
+    public void Release(GameObject enemy)
+    {
+        enemy.SetActive(false);
+        HealthManager healthManager = enemy.GetComponent<HealthManager>();
+        if (healthManager)
+        {
+            healthManager.currentHealth = healthManager.maxHealth;
+        }
+        BaseEnemyManager enemyManager = enemy.GetComponent<BaseEnemyManager>();
+        if (enemyManager)
+        {
+            enemyStock[(int)enemyManager.enemyType].Add(enemy);
+        }
+    }
+}
diff --git a/Assets/Scripts/Game/EnemyFactory.cs.meta b/Assets/Scripts/Game/EnemyFactory.cs.meta
new file mode 100644
index 0000000..0e13c52
--- /dev/null
+++ b/Assets/Scripts/Game/EnemyFactory.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 14909d483ee1e8d429bfb870b7febd68
+timeCreated: 1506695515
+licenseType: Free
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/Scripts/Game/ImmunityManager.cs b/Assets/Scripts/Game/ImmunityManager.cs
new file mode 100644
index 0000000..0ccf9ce
--- /dev/null
+++ b/Assets/Scripts/Game/ImmunityManager.cs
@@ -0,0 +1,59 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class ImmunityManager : MonoBehaviour
+{
+    static public ImmunityManager Instance { get; private set; }
+
+    public bool isImmune { get; private set; }
+
+    [SerializeField]
+    SpriteRenderer spriteRenderer;
+
+    [SerializeField]
+    float immunityTime = 0.5f;
+
+    Color standardColor;
+
+    [SerializeField]
+    Color immunityColor;
+
+    float immunityStart = float.NegativeInfinity;
+
+	// Use this for initialization
+	void Start ()
+    {
+        Instance = this;
+        if(spriteRenderer)
+        {
+            standardColor = spriteRenderer.color;
+        }
+    }
+
+    public void BecomeImmune()
+    {
+        if(!isImmune)
+        {
+            isImmune = true;
+            immunityStart = Time.time;
+            if(spriteRenderer)
+            {
+                spriteRenderer.color = immunityColor;
+            }
+        }
+    }
+	
+	// Update is called once per frame
+	void Update ()
+    {
+		if(isImmune && Time.time - immunityStart > immunityTime)
+        {
+            isImmune = false;
+            if(spriteRenderer)
+            {
+                spriteRenderer.color = standardColor;
+            }
+        }
+	}
+}
diff --git a/Assets/Scripts/Game/ImmunityManager.cs.meta b/Assets/Scripts/Game/ImmunityManager.cs.meta
new file mode 100644
index 0000000..61539a5
--- /dev/null
+++ b/Assets/Scripts/Game/ImmunityManager.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: e44532f6e72b5cf44bb0679c315aecdc
+timeCreated: 1506849147
+licenseType: Free
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/Scripts/Game/ScoreManager.cs b/Assets/Scripts/Game/ScoreManager.cs
new file mode 100644
index 0000000..e119401
--- /dev/null
+++ b/Assets/Scripts/Game/ScoreManager.cs
@@ -0,0 +1,31 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class ScoreManager : MonoBehaviour
+{
+    static public ScoreManager Instance { get; private set; }
+
+    int score = 0;
+
+    public int GetScore()
+    {
+        return score;
+    }
+	
+	void Start ()
+    {
+        Instance = this;
+        score = 0;
+	}
+	
+	public void IncreaseScore(int i)
+    {
+        score += i;
+    }
+
+    public override string ToString()
+    {
+        return score.ToString();
+    }
+}
diff --git a/Assets/Scripts/Game/ScoreManager.cs.meta b/Assets/Scripts/Game/ScoreManager.cs.meta
new file mode 100644
index 0000000..ea0a955
--- /dev/null
+++ b/Assets/Scripts/Game/ScoreManager.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: b91979c541b86ac4eb4449822adb4066
+timeCreated: 1506699747
+licenseType: Free
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/Scripts/Game/ScoreMemory.cs b/Assets/Scripts/Game/ScoreMemory.cs
new file mode 100644
index 0000000..4c60768
--- /dev/null
+++ b/Assets/Scripts/Game/ScoreMemory.cs
@@ -0,0 +1,22 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class ScoreMemory : MonoBehaviour
+{
+    public static ScoreMemory Instance { get; private set; }
+
+    public int savedScore = 0;
+
+	// Use this for initialization
+	void Start ()
+    {
+		if(Instance)
+        {
+            Destroy(this.gameObject);
+            return;
+        }
+        Instance = this;
+        DontDestroyOnLoad(this.gameObject);
+	}
+}
diff --git a/Assets/Scripts/Game/ScoreMemory.cs.meta b/Assets/Scripts/Game/ScoreMemory.cs.meta
new file mode 100644
index 0000000..3e0faf7
--- /dev/null
+++ b/Assets/Scripts/Game/ScoreMemory.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 5f705cd2e636cd74fa6ec347d53f9c03
+timeCreated: 1506853422
+licenseType: Free
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/Scripts/Game/ScorePrinter.cs b/Assets/Scripts/Game/ScorePrinter.cs
new file mode 100644
index 0000000..aec9330
--- /dev/null
+++ b/Assets/Scripts/Game/ScorePrinter.cs
@@ -0,0 +1,15 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class ScorePrinter : MonoBehaviour
+{
+    [SerializeField]
+    UnityEngine.UI.Text scoreText;
+	
+	// Update is called once per frame
+	void Update ()
+    {
+        scoreText.text = "Score : " + ScoreManager.Instance;
+	}
+}
diff --git a/Assets/Scripts/Game/ScorePrinter.cs.meta b/Assets/Scripts/Game/ScorePrinter.cs.meta
new file mode 100644
index 0000000..5d6b968
--- /dev/null
+++ b/Assets/Scripts/Game/ScorePrinter.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: 6de4dc28e17febb48a153a50eb97b18a
+timeCreated: 1506848776
+licenseType: Free
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Assets/Scripts/Menus/GameOverScorePrinter.cs b/Assets/Scripts/Menus/GameOverScorePrinter.cs
new file mode 100644
index 0000000..c354f74
--- /dev/null
+++ b/Assets/Scripts/Menus/GameOverScorePrinter.cs
@@ -0,0 +1,18 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class GameOverScorePrinter : MonoBehaviour
+{
+    [SerializeField]
+    UnityEngine.UI.Text scoreText;
+
+	// Use this for initialization
+	void Start ()
+    {
+        if(ScoreMemory.Instance)
+        {
+            scoreText.text = "Score : " + ScoreMemory.Instance.savedScore;
+        }
+	}
+}
diff --git a/Assets/Scripts/Menus/GameOverScorePrinter.cs.meta b/Assets/Scripts/Menus/GameOverScorePrinter.cs.meta
new file mode 100644
index 0000000..6f7f2b7
--- /dev/null
+++ b/Assets/Scripts/Menus/GameOverScorePrinter.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: cab4c7344649eee47925c411aa5a56b9
+timeCreated: 1506854568
+licenseType: Free
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
-- 
GitLab