You will need an instance variable that stores the damage (power) build-up and then whatever method you use to knock-back/up (8-way, pixel based, custom movement, bullet behavior, platform behavior, physics, etc, etc) you would use the damage (power) instance variable in the condition for various strengths...
Add the physics behavior and apply a one time force based on instance variable level with X,Y vectors should do the trick.