[Refactor] Reworked how OrbitalBehaviour behaves under the hood
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
using Random = UnityEngine.Random;
|
||||
using URandom = UnityEngine.Random;
|
||||
|
||||
public class PlayerModifier : OrbitalPositionBehaviour
|
||||
public class PlayerModifier : OrbitalBehaviour
|
||||
{
|
||||
public enum Modifiers
|
||||
{
|
||||
@@ -24,17 +24,24 @@ public class PlayerModifier : OrbitalPositionBehaviour
|
||||
return (Modifiers)possibilities.GetValue(s_RandomGenerator.Next(possibilities.Length));
|
||||
}
|
||||
|
||||
protected override void OnStart()
|
||||
private void Start()
|
||||
{
|
||||
RegisterObject(new OrbitalInitializer
|
||||
{
|
||||
DistanceAlongCircumference = URandom.Range(0f, Mathf.PI * 2f),
|
||||
ObjectRadius = 0.3f,
|
||||
SpinSpeed = 1.6f
|
||||
});
|
||||
|
||||
transform.position = new Vector3(0, 0, -100f);
|
||||
|
||||
m_OrbitalPosition.m_DistanceAlongRadius = Random.Range(0f, Mathf.PI * 2f);
|
||||
m_OrbitalPosition.m_ObjectRadius = 0.3f;
|
||||
m_OrbitalPosition.m_SpinSpeed = 1.6f;
|
||||
|
||||
Modifier = GetRandomModifier();
|
||||
}
|
||||
|
||||
public override void OnCollision(OrbitalPositionBehaviour other) => Destroy(gameObject);
|
||||
public override void OnReachCentre() => Destroy(gameObject);
|
||||
protected override void OnOrbitalCollision(OrbitalBehaviour other) => Destroy(gameObject);
|
||||
protected override void OnReachCentre() => Destroy(gameObject);
|
||||
|
||||
private void OnDestroy()
|
||||
{
|
||||
BehaviourManager.UnregisterOrbitalInstance(this);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user