You can do it with a trigger if you really want to:
A units init field or your init.sqsfireflare = 0TriggerRadius: 0,0
Condition: None (repeatedly)
Condition Field: (
fireflare > 0) and (daytime >
fireflare)
OnActivation Field:
fireflare = (daytime + (
10/3600));
unit fire ["M203Muzzle","Flare","Flare"];
unit addmagazine "Flare"
To activate, use this line in a script or trigger:
fireflare = daytime
To deactivate, just set that variable back to zero:
fireflare = 0
Change the number in red to the interval (in seconds) you want the guy to wait before firing another flare. It reloads him when he fires, so he'll keep going all night if you want him to
Yes, it's probably better to use a script, but not in the way you're currently doing it as it will always be activated even when it's not needed.
Anyway, the solution you use is up to you.
Happy editing