So this is how the standard library works, in 6.12.7:
Constant story "Test transfers";
Constant headline "^A test game!^";
include "parser.h";
include "verblib.h";
include "grammar.h";
Class Flower;
Object Quarry "Quarry"
with
description "Big quarry.",
has light;
Object -> Box "box"
with
name 'box',
has container open;
Flower -> -> Lily "lily"
with
name 'lily';
Flower -> -> Rose "rose"
with
name 'rose',
before [;
Take, Remove:
"The thorns are terrible. You can't pick it up!";
];
Object -> HotBall "red hot metal ball"
with
name 'red' 'hot' 'metal' 'ball',
before [;
Take, Remove:
"The ball is too hot!";
];
Object -> SmallVase "vase"
with
name 'small' 'vase',
description "Only big enough for one flower.",
capacity 1,
before [;
Receive:
if(~~(noun ofclass Flower))
"The vase is only made for putting flowers in!";
],
has container open;
[ Initialise;
location = Quarry;
print "^^^According to DM4, page 89, it should be enough to block ##Take and ##Remove to make sure that an object
doesn't end up in the player's inventory.^^";
];