Hi, I took a look at your code; here are a few suggestions that you might want to consider:
1) Instead of spawning objects you could use a tilemap and change the tiles to when you click. This would only be a suitable option if you don't intend to animate placed objects (you can animate tiles, but it is fiddly to set up and kills your framerate).
2) Your code in each object group is essentially the same - you could replace all of these with a single function and instead of having the booleans plantWheat, plantCorn etc just have a single global string variable "plantObject" that you set to the object type. C3 has the very cool action "create object by name", so you can pass plantObject in order to spawn the correct object type.
3) Alternatively, rather than having individual shop objects and placed objects you could have one shop object and one placed object, and have the different types as separate animations. This would reduce your object count and also allow you to simplify the code.
Hope that helps