Selection Circle Not Disappearing
I'm trying to make an RTS game, like Age of Mythology. When I run my code, however, it doesn't give me any error messages, but the Select Circle doesn't disappear. Here's my code:
public class RTSObject : MonoBehaviour
{
public int maxHitPoints = 1000, raakiteCost = 100, powerCost = 100, damage = 10, lineOfSight = 10;
public string objectName;
public ResourceManager.DamageType damageType = ResourceManager.DamageType.hack;
public float hackArmor, pierceArmor, necroticArmor, crushArmor;
public bool Resurrectable = false;
public RTSPlayer player;
public Mesh objectMesh;
//public int ownIndex;
public bool selected = false;
public bool mobile = false;
public Renderer selectCircleRenderer;
public GameObject selectCircleRef;
private int hitPoints;
// Start is called before the first frame update
public virtual void Start()
{
//replace this with the building stuff
hitPoints = maxHitPoints;
//but not this
selectCircleRef = gameObject.transform.GetChild(gameObject.transform.childCount - 1).gameObject;
selectCircleRenderer = selectCircleRef.GetComponent<Renderer>();
selectCircleRef.SetActive(false);
}
// Update is called once per frame
public virtual void Update()
{
selected = player.selects.Contains(this);
//should this object be dead?
if (hitPoints <= 0 || (selected && Input.GetKey("delete"))) Die();
selectCircleRef = gameObject.transform.GetChild(gameObject.transform.childCount - 1).gameObject;
selectCircleRenderer = selectCircleRef.GetComponent<Renderer>();
if (selected && !selectCircleRenderer.enabled)
{
selectCircleRenderer.enabled = false; ;
}
else if (!selected && selectCircleRenderer.enabled)
{
selectCircleRenderer.enabled = true;
}
}
public void MoveTo(Vector3 destination)
{
//AI Movement
}
protected virtual void Die()
{
player.selects.Remove(this);
selected = false;
if (Resurrectable == false)
{
Destroy(gameObject);
}
else
{
//"die" here
}
}
}
and a screenshot of my RTSObject prefab (though it isnt a prefab yet): 
screenshot-2020-09-30-135729.png
(41.0 kB)
Comment
(the SelectionCircle doesn't disappear when the RTSObject isn't selected, like it should)
Your answer