Particle system stop and play no longer works c#

Since the last update of unity my particle system has been rendered broken.

I used to start and stop the system in a collision detection. This would work perfectly.

But now it no longer starts or stops when the collision is detected. Everything else that happens when colliding still works fine. Only the play and stop function of the particle system refuses to work.

I’ve searched for over 2 hours and found several proposed “solutions” such as:

ParticleSystem.EmissionModule em = col.gameObject.GetComponent<ParticleSystem> ().emission;
em.enabled = false;

But this also does not work.
Here is my original code:

void OnTriggerStay (Collider col)
	{
		if(col.gameObject.CompareTag("PhysicsObject"))
		{
			col.gameObject.GetComponent<ParticleSystem> ().Play();

		}
		if(col.gameObject.CompareTag("PhysicsObjectReverse"))
		{
			col.gameObject.GetComponent<ParticleSystem> ().Play();
		}
	}

	void OnTriggerExit (Collider col)
	{
		if(col.gameObject.CompareTag("PhysicsObject"))
		{
			col.gameObject.GetComponent<ParticleSystem> ().Stop ();
		}
		if(col.gameObject.CompareTag("PhysicsObjectReverse"))
		{
			col.gameObject.GetComponent<ParticleSystem> ().Stop ();
		}
	}

Before you ask, you might think it keeps on constantly restarting using Play() as it is called in a collisionStay, but this is not the case as i’ve also tried calling the play in Enter and it doesn’t work either.

I had a very similar problem, and settled upon placing the particle system on its own GameObject.

Then I just enabled/disabled its entire GameObject.

I don’t know if there’s a trick to the updated system, or if it’s buggy, because I spent a few hours looking around and trying to bring an old game up-to-date, and this was the only solution that kept working through multiple on-off switches.