Refactorisation
This commit is contained in:
@@ -17,6 +17,8 @@ public class PlayerManager : MonoBehaviour
|
||||
public float BeamDamages = 50f;
|
||||
public float BeamFrequency = 5f;
|
||||
public float BeamLife = 0.5f;
|
||||
public float HorizontalBeam = 0f;
|
||||
public float VerticalBeam = 0f;
|
||||
|
||||
public float SwordsHaloRadius = 1f;
|
||||
public float SwordsDamages = 25f;
|
||||
@@ -26,9 +28,6 @@ public class PlayerManager : MonoBehaviour
|
||||
public float ArrowFrequency = 2f;
|
||||
public float ArrowRange = 5f;
|
||||
|
||||
public float laserOnX = 0f;
|
||||
public float laserOnY = 0f;
|
||||
|
||||
[SerializeField]
|
||||
private GameObject pauseMenu;
|
||||
[SerializeField]
|
||||
|
||||
@@ -7,7 +7,7 @@ public class PlayerMovements : MonoBehaviour
|
||||
private Animator _animator;
|
||||
private PlayerManager _pm;
|
||||
|
||||
public bool lookOnRight = true;
|
||||
public bool LookOnRight = true;
|
||||
|
||||
private void Start()
|
||||
{
|
||||
@@ -28,11 +28,11 @@ public class PlayerMovements : MonoBehaviour
|
||||
if (moveH < 0)
|
||||
{
|
||||
_sr.flipX = true;
|
||||
lookOnRight = false;
|
||||
LookOnRight = false;
|
||||
} else if (moveH > 0)
|
||||
{
|
||||
_sr.flipX = false;
|
||||
lookOnRight = true;
|
||||
LookOnRight = true;
|
||||
}
|
||||
|
||||
/** --- update animator -------------------------------------------*/
|
||||
|
||||
@@ -4,28 +4,27 @@ using UnityEngine;
|
||||
[RequireComponent (typeof(PlayerMovements))]
|
||||
public class PlayerWeapons : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private GameObject laser;
|
||||
[SerializeField] private GameObject _beam;
|
||||
|
||||
[SerializeField] private GameObject arrow;
|
||||
[SerializeField] private GameObject _arrow;
|
||||
|
||||
private PlayerMovements _pm;
|
||||
private PlayerManager _manager;
|
||||
|
||||
private float oldBeamFrequency;
|
||||
private bool oldBeamX;
|
||||
private bool oldBeamY;
|
||||
private float _oldBeamFrequency;
|
||||
private bool _oldHorizontalBeam;
|
||||
private bool _oldVerticalBeam;
|
||||
|
||||
private float oldArrowFrequency;
|
||||
private float _oldArrowFrequency;
|
||||
|
||||
private void Start()
|
||||
{
|
||||
_pm = GetComponent<PlayerMovements>();
|
||||
_manager = GetComponent<PlayerManager>();
|
||||
|
||||
oldBeamFrequency = _manager.BeamFrequency;
|
||||
oldBeamX = Convert.ToBoolean(_manager.laserOnX);
|
||||
oldBeamY = Convert.ToBoolean(_manager.laserOnY);
|
||||
oldArrowFrequency = _manager.ArrowFrequency;
|
||||
_oldArrowFrequency = _manager.BeamFrequency;
|
||||
_oldHorizontalBeam = Convert.ToBoolean(_manager.HorizontalBeam);
|
||||
_oldVerticalBeam = Convert.ToBoolean(_manager.VerticalBeam);
|
||||
|
||||
InvokeRepeating(nameof(ShootBeam), _manager.BeamFrequency, _manager.BeamFrequency);
|
||||
InvokeRepeating(nameof(ShootArrow), _manager.ArrowFrequency, _manager.ArrowFrequency);
|
||||
@@ -33,7 +32,7 @@ public class PlayerWeapons : MonoBehaviour
|
||||
|
||||
private void FixedUpdate()
|
||||
{
|
||||
if (_manager.BeamFrequency != oldBeamFrequency)
|
||||
if (_manager.BeamFrequency != _oldBeamFrequency)
|
||||
{
|
||||
if (_manager.BeamFrequency > 0f)
|
||||
{
|
||||
@@ -45,24 +44,24 @@ public class PlayerWeapons : MonoBehaviour
|
||||
CancelInvoke(nameof(ShootBeam));
|
||||
ShootBeam();
|
||||
}
|
||||
oldBeamFrequency = _manager.BeamFrequency;
|
||||
_oldBeamFrequency = _manager.BeamFrequency;
|
||||
}
|
||||
|
||||
if (_manager.BeamFrequency == 0)
|
||||
{
|
||||
if (oldBeamX != Convert.ToBoolean(_manager.laserOnX) || oldBeamY != Convert.ToBoolean(_manager.laserOnY))
|
||||
if (_oldHorizontalBeam != Convert.ToBoolean(_manager.HorizontalBeam) || _oldVerticalBeam != Convert.ToBoolean(_manager.VerticalBeam))
|
||||
{
|
||||
foreach (var beam in GameObject.FindGameObjectsWithTag("Beam"))
|
||||
{
|
||||
Destroy(beam);
|
||||
}
|
||||
oldBeamX = Convert.ToBoolean(_manager.laserOnX);
|
||||
oldBeamY = Convert.ToBoolean(_manager.laserOnY);
|
||||
_oldVerticalBeam = Convert.ToBoolean(_manager.VerticalBeam);
|
||||
_oldVerticalBeam = Convert.ToBoolean(_manager.VerticalBeam);
|
||||
ShootBeam();
|
||||
}
|
||||
}
|
||||
|
||||
if (_manager.ArrowFrequency != oldArrowFrequency)
|
||||
if (_manager.ArrowFrequency != _oldBeamFrequency)
|
||||
{
|
||||
CancelInvoke(nameof(ShootArrow));
|
||||
InvokeRepeating(nameof(ShootArrow), _manager.ArrowFrequency, _manager.ArrowFrequency);
|
||||
@@ -71,17 +70,17 @@ public class PlayerWeapons : MonoBehaviour
|
||||
|
||||
private void ShootBeam()
|
||||
{
|
||||
Instantiate(laser, transform.position, Quaternion.identity, transform);
|
||||
Instantiate(_beam, transform.position, Quaternion.identity, transform);
|
||||
|
||||
if (_manager.laserOnX > 0)
|
||||
if (_manager.HorizontalBeam > 0)
|
||||
{
|
||||
Instantiate(laser, transform.position, Quaternion.Euler(0, 0, 180), transform);
|
||||
Instantiate(_beam, transform.position, Quaternion.Euler(0, 0, 180), transform);
|
||||
}
|
||||
|
||||
if (_manager.laserOnY > 0)
|
||||
if (_manager.VerticalBeam > 0)
|
||||
{
|
||||
Instantiate(laser, transform.position, Quaternion.Euler(0, 0, 90), transform);
|
||||
Instantiate(laser, transform.position, Quaternion.Euler(0, 0, 270), transform);
|
||||
Instantiate(_beam, transform.position, Quaternion.Euler(0, 0, 90), transform);
|
||||
Instantiate(_beam, transform.position, Quaternion.Euler(0, 0, 270), transform);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -112,8 +111,8 @@ public class PlayerWeapons : MonoBehaviour
|
||||
// Shoot arrow
|
||||
if (target != null)
|
||||
{
|
||||
GameObject spawnedArrow = Instantiate(arrow, transform.position, Quaternion.identity);
|
||||
spawnedArrow.GetComponent<Arrow>().target = target;
|
||||
GameObject spawnedArrow = Instantiate(_arrow, transform.position, Quaternion.identity);
|
||||
spawnedArrow.GetComponent<Arrow>().Target = target;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,13 +10,13 @@ public class Spawner : MonoBehaviour
|
||||
|
||||
private float _radius = 5f;
|
||||
|
||||
[SerializeField] private int spawnedMayors = 0;
|
||||
[SerializeField] private int spawnedMinautor = 0;
|
||||
[SerializeField] private int spawnedBringerOfDeath = 0;
|
||||
private int _spawnedMayors = 0;
|
||||
private int _spawnedMinautor = 0;
|
||||
private int _spawnedBringerOfDeath = 0;
|
||||
|
||||
private readonly int mayorsLimit = 300;
|
||||
private readonly int minautorsLimit = 15;
|
||||
private readonly int bringerOfDeathLimit = 5;
|
||||
private readonly int _mayorsLimit = 300;
|
||||
private readonly int _minautorsLimit = 15;
|
||||
private readonly int _bringerOfDeathLimit = 5;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
@@ -36,9 +36,9 @@ public class Spawner : MonoBehaviour
|
||||
|
||||
private void Update()
|
||||
{
|
||||
spawnedMayors = Array.FindAll(GameObject.FindGameObjectsWithTag("Ennemy"), (value) => value.name.Contains("Mayor")).Length;
|
||||
spawnedMinautor = Array.FindAll(GameObject.FindGameObjectsWithTag("Ennemy"), (value) => value.name.Contains("Minautor")).Length;
|
||||
spawnedBringerOfDeath = Array.FindAll(GameObject.FindGameObjectsWithTag("Ennemy"), (value) => value.name.Contains("Bringer of Death")).Length;
|
||||
_spawnedMayors = Array.FindAll(GameObject.FindGameObjectsWithTag("Ennemy"), (value) => value.name.Contains("Mayor")).Length;
|
||||
_spawnedMinautor = Array.FindAll(GameObject.FindGameObjectsWithTag("Ennemy"), (value) => value.name.Contains("Minautor")).Length;
|
||||
_spawnedBringerOfDeath = Array.FindAll(GameObject.FindGameObjectsWithTag("Ennemy"), (value) => value.name.Contains("Bringer of Death")).Length;
|
||||
}
|
||||
|
||||
private void SpawnWave()
|
||||
@@ -54,9 +54,9 @@ public class Spawner : MonoBehaviour
|
||||
int retries = 0;
|
||||
|
||||
while (
|
||||
(enemyName == "Mayor" && spawnedMayors >= mayorsLimit) ||
|
||||
(enemyName == "Minautor" && spawnedMinautor >= minautorsLimit) ||
|
||||
(enemyName == "Bringer of Death" && spawnedBringerOfDeath >= bringerOfDeathLimit)
|
||||
(enemyName == "Mayor" && _spawnedMayors >= _mayorsLimit) ||
|
||||
(enemyName == "Minautor" && _spawnedMinautor >= _minautorsLimit) ||
|
||||
(enemyName == "Bringer of Death" && _spawnedBringerOfDeath >= _bringerOfDeathLimit)
|
||||
)
|
||||
{
|
||||
enemyToSpawn = ChooseEnemy();
|
||||
@@ -72,13 +72,13 @@ public class Spawner : MonoBehaviour
|
||||
switch (enemyName)
|
||||
{
|
||||
case "Mayor":
|
||||
spawnedMayors++;
|
||||
_spawnedMayors++;
|
||||
break;
|
||||
case "Minautor":
|
||||
spawnedMinautor++;
|
||||
_spawnedMinautor++;
|
||||
break;
|
||||
case "Bringer":
|
||||
spawnedBringerOfDeath++;
|
||||
_spawnedBringerOfDeath++;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user