public void Despawn(RosemarySpawn spawn) { if (spawn) { spawn.gameObject.SetActive(false); } }
public void OnSpawnDisable(RosemarySpawn spawn) { if (spawn) { m_inactive.Add(spawn); m_active.Remove(spawn); } OnSpawnDisableExtra(spawn); }
public void OnSpawnDestroy(RosemarySpawn spawn) { if (spawn) { m_inactive.Remove(spawn); m_active.Remove(spawn); } OnSpawnDestoryExtra(spawn); }
private void PrepareSpawn() { if (!m_spawn) { m_spawn = GetComponent <RosemarySpawn>(); if (!m_spawn) { Debug.LogError($"{nameof(RosemarySpawn)} component not found on GameObject.", this); } } }
protected override void OnSpawnDisableExtra(RosemarySpawn spawn) { if (!spawn) { return; } var element = spawn.GetComponent <RosemaryResourceAmountPanel>(); if (!element) { return; } m_elements.Remove(element.resourceName); }
protected override void OnSpawnDisableExtra(RosemarySpawn spawn) { if (!spawn) { return; } var button = spawn.GetComponent <RosemaryProductButton>(); if (!button) { return; } if (button.product) { m_buttons.Remove(button.product); } }
private void PrepareSpawn() { if (!m_spawn) { m_spawn = GetComponent <RosemarySpawn>(); if (!m_spawn) { Debug.LogError($"{nameof(RosemarySpawn)} component not found on GameObject.", this); } else { spawner = spawn.spawner as RosemaryProjectileSpawner; if (!spawner) { Debug.LogError($"Spawner is not a {nameof(RosemaryProjectileSpawner)}", spawn.spawner); } } } }
public void OnSpawnAwake(RosemarySpawn spawn) { switch (spawnMode) { case SpawnMode.Reserving: { m_inactive.Add(spawn); spawn.gameObject.SetActive(false); } break; default: case SpawnMode.Spawning: case SpawnMode.PreExisting: { m_active.Add(spawn); } break; } OnSpawnAwakeExtra(spawn); }
protected virtual void OnSpawnDisableExtra(RosemarySpawn spawn) { }
protected virtual void OnSpawnAwakeExtra(RosemarySpawn spawn) { }
public void InternalSetPrefab(RosemarySpawn value) => m_prefab = value;
protected virtual void OnSpawnDestoryExtra(RosemarySpawn spawn) { }