A_Lower is a code pointer used in the weapon lower animation for all weapons.
A_Lower moves the Y position of the weapon sprite towards the bottom of the screen by a small amount each time it is invoked. If the bottom of the screen is reached, the next weapon is selected and the raise state is invoked to bring it up.
A_Lower is usually used in a state that is an infinite loop that repeatedly jumps back to itself; the loop terminates when the weapon has finished lowering.
A_Lower code pointer appears in the following states in Doom's state table:
|Frame number||Doom internal name||Use|
|3||S_PUNCHDOWN||weapon lower animation for the Fists|
|11||S_PISTOLDOWN||weapon lower animation for the Pistol|
|19||S_SGUNDOWN||weapon lower animation for the Shotgun|
|33||S_DSGUNDOWN||weapon lower animation for the Super Shotgun|
|50||S_CHAINDOWN||weapon lower animation for the Chaingun|
|58||S_MISSILEDOWN||weapon lower animation for the Rocket Launcher|
|69||S_SAWDOWN||weapon lower animation for the Chainsaw|
|75||S_PLASMADOWN||weapon lower animation for the Plasma Gun|
|82||S_BFGDOWN||weapon lower animation for the BFG 9000|
The following is an example of how to set the
A_Lower code pointer in a Dehacked file:
Pointer 21 (Frame 34) Codep Frame = 82
Or using BEX syntax:
[CODEPTR] Frame 1234 = Lower