Almost anything can be done in Quest, it's just a matter of figuring out how to make it work. It doesn't sound like it would be too difficult to implement something like this, but you're a little light on the details. For example, is damage cumulative or fixed at 50hp every time the player is hit? Is this part of a combat mechanic? etc. However...
The easiest way I can think of to do this would be to have (in the case of cumulative damage) 3 attributes on the player object. One to keep track of the player's current HP (for example player.current_hp), the damage counter you want incremented (player.damage_counter) and a third stat that increments by however much damage there is and resets when it gets to 50, adding 1 point to the damage counter variable as well (call it player.hp_tally for sake of argument).
I would then write a function that would be called whenever the player takes damage, passing it the amount of damage taken. The function would probably look something like this (assuming the amount of damage being dealt is stored in the variable damage_amount):
<function name="damage_player" parameters="damage_amount"><![CDATA[
player.current_hp = player.current_hp - damage_amount
player.hp_tally = player.hp_tally + damage_amount
if (player.hp_tally >= 50) {
player.hp_tally = 0
player.damage_counter = player.damage_counter + 1
}
]]></function>
Obviously, the only issue with this function and cumulative damage is that it doesn't store the remainder if the hp_tally goes over 50, but this should give you a good starting point anyway. It's untested though, so apologies if it doesn't work at all.