If its ok to show the upgrade option (but not make it possible until the event is done) then you could make a dummy unit that spawns for each player at the event that is a techtree requirement for the upgrade.
How flexible do you want this to be? You can make two exactly the same Town Halls, except that one of them has the extra upgrade option. After the triggering event, call replace unit on your Town Hall, replace it with the Town Hall with the extra upgrade.
Or, you can make a dummy ability that does the upgrade. Give it to the Town Hall, but disable it. Enable the ability after the triggering event. Make sure that you create a trigger to remove / disable the dummy ability and do the upgrade, once the ability is cast. You can base it off the "Change Gold / Lumber" Ability (or something like that) so that you can do resource checking easily.
Reddit, Slack, Google, Facebook, Instagram — these companies use our data — directly or indirectly — to train the next generation of AI language models. Yet, I don’t remember anyone asking our permission, and in doing so, these companies have proven the adage that customers’ data is their main...
Our new website went up early yesterday. Health Empowers You. 200 smoothie recipe guide and soon we will have detox, cognitive enhancement, weightloss teas and some coffee blends. https://healthempowersyou.net/products/smoothie-recipe-guide
It never fails that as soon as I say something about the bots they come back - this time they are under a whole new IP range - one thing in common though, Chinese!