Files
Cielonos/Assets/Scripts/MainGame/Items/MainWeapons/Polychrome/Polychrome_Visuals.cs
SoulliesOfficial 39b43680a9 爆更
2026-07-18 03:16:20 -04:00

63 lines
1.8 KiB
C#

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<ParticleSystem>();
_katanaParticleStage1 = viewObjects["Katana"].functionalParts["ParticleStage1"].GetComponent<ParticleSystem>();
}
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;
}
}
}