I've done this for my game and it works. I hope I can remember it all, but here's a shot at what I did.
I think in terms of percentages. Make 10 bar graphics. Every 10% of the bar is longer. Place all graphics in events/pics folder.
make a global: gb_healthbar
EVENT #1:
Make an event called add stats. In it:
change global: set gb_healthbar to 0
change global: global of gb_healthbar, add stamina
change global: global of gb_healthbar, add experience.
call EVENT #2.
This makes the gb_healthbar be stamina + experience. You have to reset it all the time at the beginning for it to run correctly.
EVENT #2:
In another event: Determine what level the Player is at. If the Player is at level 1, then call level one array, etx.
EVENTS #3 to 23:
If you have 20 levels, you will have 20 different SETS of percentages, and consequently 20 level array events.
Level one array event, let's say, the Player's maximum combination of stamina and experience = 100.
Make a series of conditionals:
If gb_healthbar is greater than 0 and less than 10, then dialogue graphic 1.
If gb_healthbar is equal or greater than 10 and less than 20, then dialogue graphic 2.
etc.
Be very careful that you do not overlap a conditional. That is, do not give the engine more than one and only one choice. That will crash the game.
Yes, you will repeat this for all 20 levels, but the maximum of stamina and experience is higher each level. Again, you're looking at percentages. And, yes, it's a lot of work.
Make a keydown h (if you want). Tie it to EVENT #1.
It's sweet.....