I don't think you need triggers for this. There is an object editor field under units called Stock Cooldown.
You can use abilities to purchase units, then just use the spell whenever it is needed and create the desired hero.
you could change alliance settings? change owner of you entering hero for player 13 (Neutral hostile) or 14 (Neutral passive) wait (your cooldown) and then reset alliance to Whatever owner player you want
Well, like this maybe...
Edit
But this will work only if the unit enters in the region and one time...
- changing owner of a unit
- Event
- Unit - A unit enters <your region>
- Conditions
- (Unit-type of (Entering unit)) Equal to* (your hero)
- Actions
- Unit - Change ownership of (Entering unit) to Neutre Hostile and Change colour
- Wait 10.00 seconds
- Unit - Change ownership of (Entering unit) to <Your desiredPlayerColour> and Change colour
I did the trigger like you asked in the Second post...for your hero in your region...
You can make the "hero" at the tavern a dummy unit or item which is infinite in stock, and add the cooldown to actually buying your hero via triggers (or disable its availability). So if poop enters region and poop is on cooldown, players buying poop at the Tavern will not get poop, but a message saying that poop is on cooldown.
If poop is permanently on cooldown, then you can just remove it from the tavern instead.
How can I remove a unit from the tavern?