Ported mission GDI03 to the new Lua API

Followup of https://github.com/OpenRA/OpenRA/pull/6786, https://github.com/OpenRA/OpenRA/pull/6769 and https://github.com/OpenRA/OpenRA/pull/6762.
I think it would be better to expose DamageState instead of adding a bunch of properties (also *Damage is inconsistent with Undamaged), but that is a more involved change that should probably be left for later.

You can check for the damage state below by checking 
```lua
if building.Owner == enemy and actor.Health < 0.5 * actor.MaxHealth then
```