using UnityEngine; namespace Cielonos.MainGame.Inventory.Collections { public partial class Polychrome { private string _currentKatanaParticle; private ParticleSystem _katanaParticleStage0; private ParticleSystem _katanaParticleStage1; private void CacheKatanaParticles() { _katanaParticleStage0 = viewObjects["Katana"].functionalParts["ParticleStage0"].GetComponent(); _katanaParticleStage1 = viewObjects["Katana"].functionalParts["ParticleStage1"].GetComponent(); } private void ClearKatanaParticleCache() { _katanaParticleStage0 = null; _katanaParticleStage1 = null; } private void UpdateViewObjectVisuals() { int level = CombatManager.PassionSystem.LevelIndex; if (level < 3) { SwitchKatanaParticle(string.Empty); } else if (level <= 4) { SwitchKatanaParticle("ParticleStage0"); } else { SwitchKatanaParticle("ParticleStage1"); } } private void SwitchKatanaParticle(string particleName) { if (_currentKatanaParticle == particleName) return; if (_currentKatanaParticle != string.Empty) { GetKatanaParticle(_currentKatanaParticle).Stop(); } _currentKatanaParticle = particleName; if (_currentKatanaParticle != string.Empty) { GetKatanaParticle(_currentKatanaParticle).Play(); } } private ParticleSystem GetKatanaParticle(string particleName) { return particleName == "ParticleStage0" ? _katanaParticleStage0 : _katanaParticleStage1; } } }