The way EDGE's nofire_return pointer works is when it encounters the pointer, it acts as if nothing is there, but if the player is currently not firing the weapon when the pointer is reached, the weapon will pick up where it left off in the firing state the next time the trigger is pulled. For example, an akimbo pistol definition:
On the first fire, the first two frames would play. The next fire plays the second two frames and continue as normal, resetting the state.
Code: Select all
(...) Attack: PS1F A 2 BRIGHT A_FireBullets(...) PS1G A 2 A_NofireReturn PS1F B 2 BRIGHT A_FireBullets(...) PS1G A 2 Goto Ready (...)
I realize a similar effect can be hacked together with A_JumpIfInventory and several extra states, but this would be a more elegant and user-friendly system.