But how would I put buying in there?
onActivate -> Self -> checkHasKeyItem -> "Mage Class Stone"
onHasInsufficientItem -> Client -> ChatMessage -> "You are not the correct class."
onHasSufficientItem -> Self -> CheckGoldMoreThan -> 25
onHasSufficientGold -> Player -> AddItem -> Thing
onHasInsufficientGold -> Client -> ChatMessage -> "Not enough gold."
About the same way you'd layer any set of outputs.