You should NOT initialize BonusMsg IN the Bonuslife procedure! You always set the needed points back to 25000 that way which is of course false.

Init it in gameinit or formcreate or something like that.