Would you prefer to have the struct 'embedded' in the panel?
If so, this may give you some ideas...
typedef struct
{
var health;
var whataver;
}DETAILS;
PANEL* player_pan;
function build_player()
{
player_pan = pan_create(...);
player_pan.skill_x = sys_malloc(sizeof(DETAILS));
((DETAILS*)player_pan.skill_x).health = 100;
...
}
function player_hurt()
{
((DETAILS*)player_pan.skill_x).health -= 5;
...
}