Actually, I solved it the other day. This is how I did it:
Rooms: shop and hidden, not connected
Characters: clerk in shop, when spoken to, run shop procedure
Shop procedure: choose among 3 items, among them a health potion, if enough currency, move potion from hidden to shop and give to player
Health potion: when used, increment numeric variable HP and move object back to room hidden
rinse and repeat...