If you want to do it by adjusting the position, you can use:
+ Always
Set X to original x + cos(.Angle) * 'Recoil'
Set Y to original y + sin(.Angle) * 'Recoil'
Original x/y is the starting position of the object, eg. 320,240. 'Recoil' is a private variable which when 0 means it's at the original position, otherwise its the distance of the recoil. So if you change Recoil to 20 and gradually decrease it back to 0, it will jump 20 pixels and gradually move back to the original position.
If it goes the wrong way, use .Angle + 180.