object oriented programming was a mistake

ok get this, if you want to change the color of a Unity particle system, you get a reference to ParticleSystem.main, then set the startColor of that to whatever you want. then you do nothing else.

ParticleSystem.main is a struct.

ParticleSystem.main is also read only.

let me reiterate. you ASSIGN A VALUE TO A PROPERTY OF A READ-ONLY STRUCT TO CHANGE AN ACTIVE PARTICLE SYSTEM.

@cai_tan
Sounds like a typical day of using unity.