AirstrikeAtomsphereCarpetbomb
Module: airstrike_atomsphere_carpetbomb.lua
Overview
This is the screen-grade / post-process flash for the Carpet Bomb airstrike β it does not spawn any bomblets. On activation it overrides the global Graphics.Atmosphere look for a moment, then also makes nearby player characters flinch and shield their eyes via MrxUtil.ShieldFace. The bomb lines themselves are laid down by MrxCarpetBomb. Compared to the other variants this one dials brightness/bloom down (dark, smoky feel) rather than up.
atomsphereis a typo baked into the real in-game object name (it means atmosphere). Leave it as-is.
Inheritance
- Inherits from:
none - Imports:
MrxUtil
Instance pattern
Stateless utility module β no per-instance table, no uGuid keying, no persistent state. Reacts to one engine OnActivate call.
Functions
OnActivate(guid)
Engine lifecycle callback. Schedules _GraphicsAto 0.1 s later via Event.Create(Event.TimerRelative, {0.1}, _GraphicsAto, {guid}).
_GraphicsAto(guid)
Runs the Graphics.Atmosphere.Begin() β¦ End() override block (see tunables), then calls MrxUtil.ShieldFace(guid). ShieldFace looks up the effect objectβs position and, for every player whose hero is within 150 units, plays the "shieldface" action on that hero β the flinch-from-the-blast animation. Here guid is used (itβs the anchor for that distance check).
Module constants & tunables
Hardcoded literals inside _GraphicsAto (no named module constants). Notable for this variant:
Graphics.Atmosphere key | Value | Effect |
|---|---|---|
fAtmosphereLimit | 200 | Standard haze reach. |
fBloomAmount / fBloomMultiplier | 0.1 / 0.08 | Very low bloom β the darkest of the family. |
fLightIntensity | 0.25 | Dims the scene (smoke/soot feel), opposite of the nuke variants. |
fTimeRestore | 0.6 | Quick blend back to normal. |
Ambient/cube/rim colors are neutral grey 128,128,128,255; this variant does not touch the gradient stops.
Events
- Not an
Event.Createsubscription.Event.TimerRelativeschedules_GraphicsAtoonce, 0.1 s after activation.OnActivateis an engine lifecycle callback.
Notes for modders
- Override
_GraphicsAto(a plain global) to retune the grade or to drop theShieldFaceflinch. - The 150-unit radius in
MrxUtil.ShieldFaceis the trigger distance for the eye-shield animation β change it inmrxutil(shared by every ShieldFace-using bomb), not here. - To change the actual bomb pattern/count, edit MrxCarpetBomb β this file is visuals only.