No, that was a good explanation.
The reason why each element has its own particular color is due to their electronic configuration. Even if the elements are isoelectronic, the different nuclear sized causes the amount of energy associated with the transition to be a little bit different. (Hence why calcium and potassium emit different colors in a flame). So these electrons in the ions absorb energy from the flame which causes them to 'jump up' to a different energy level. (Since the excess energy forces them further from the nucleus). As soon as that initiating energy is removed (ion moves away from the energy source), the ion gets rid of that excess energy and the electron moves back to the ground state. When it goes back down to that ground state, a specific wavelength is given off which we see as a color. A similar process occurs in high voltage gas discharge tubes.
For the green color, barium salts are typically used. Copper isn't all that great of a color donor in terms of green. Cu tends to give off a bluish color more often than not. Ammonia emits no color when placed in a flame.