Skip to content
Extraits de code Groupes Projets
Valider fd99c115 rédigé par Pavel Krisys Verbel's avatar Pavel Krisys Verbel
Parcourir les fichiers

Correction

parent a831dea9
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
Affichage de
avec 312 ajouts et 0 suppression
Fichier ajouté
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);
}
}
fileFormatVersion: 2
guid: 7913e1dd17c5cfc4bad3f69ca7ef9303
timeCreated: 1506697926
licenseType: Free
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
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);
}
}
}
fileFormatVersion: 2
guid: 14909d483ee1e8d429bfb870b7febd68
timeCreated: 1506695515
licenseType: Free
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
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;
}
}
}
}
fileFormatVersion: 2
guid: e44532f6e72b5cf44bb0679c315aecdc
timeCreated: 1506849147
licenseType: Free
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
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();
}
}
fileFormatVersion: 2
guid: b91979c541b86ac4eb4449822adb4066
timeCreated: 1506699747
licenseType: Free
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
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);
}
}
fileFormatVersion: 2
guid: 5f705cd2e636cd74fa6ec347d53f9c03
timeCreated: 1506853422
licenseType: Free
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
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;
}
}
fileFormatVersion: 2
guid: 6de4dc28e17febb48a153a50eb97b18a
timeCreated: 1506848776
licenseType: Free
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
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;
}
}
}
fileFormatVersion: 2
guid: cab4c7344649eee47925c411aa5a56b9
timeCreated: 1506854568
licenseType: Free
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter