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.