Does your answering machine have a ‘play’ button?? Then all you need from the player is to have the player ‘push’ the ‘play’ button–
A play button is a part of the answering machine. The description is "It's red and says 'play'."
Instead of pushing, touching, switching on, or rubbing the play button:
say "Instantly, the answering machine says, 'You have...one...messages. Message number one: [insert message here]…"
Instead of switching on the answering machine:
try pushing the play button.
I would also suggest creating an all-purpose action called ‘Using’, and have an Understand statement including various commands that one would attach to certain odd objects–
Using is an action applying to one touchable thing and requiring light. Understand "use [something]", "check [something]" or "play [something]" as using.
Check using something:
if the noun is not the answering machine or the noun is not [any other odd object(s) that you have implemented with 'using']:
instead say "You will need to specify how you want to use that."
Check using the answering machine:
instead try pushing the play button.[to route the action to the correct outcome]
‘touchable’ means anything that the player can touch, either scenery or takeable items, as opposed to ‘walls’ (which are directions), and other abstract items.
For the lockpicking you can create another action, ‘Using it on’ for two nouns –
Using it on is an action applying to one carried thing and one visible thing, and requiring light. Understand "use [something carried] on [something]" as using it on. Understand "pick [something] with [something carried]" as using it on (with nouns reversed).
Check using something on something:
if the second noun is the huge padlock:[have an 'if' statement for any 'second noun' that can produce results when you 'use' something on it]
if the noun is not the needle or the noun is not the [and so on for each noun that can be used to pick the lock]:
instead say "Well, [the noun] is just not fit for picking this lock.";
otherwise:[to cover everything that does not produce a result when something is 'used' on it]
instead say "You'll need to specify how to use that."
Check using the needle on the huge padlock:
if the huge padlock is unlocked:
instead say "Whoops, it's already unlocked!"
After using the needle on the huge padlock:
say "With careful concentration, you fumble around inside the lock, the needle gripped tightly and expertly in your fingers. Then 'Pop!' the lock opens!";
now the huge padlock is unlocked.
‘Something carried’ implies that the parser will automatically have the player first try to pick the item up, and then try the action. A ‘visible thing’ is anything, abstract or not, scenery or takeable, that the player can see. The (with nouns reversed) must be added for cases where the player might express the second noun (such as the huge padlock) before the thing being used–such as ‘pick the huge padlock with the needle’, rather than ‘use the needle on the huge padlock’.
The thing is to avoid having to create actions whenever possible. Always try to think of how your action can be made into a synonym for an action that is already built into inform. We might have made ‘pick [something] with [something carried]’ synonymous with ‘unlocking it with’, but then we would have to make the lockpick item into a matching key, which would then be capable of locking the lockable item back, and ideally you don’t want the carried item to be an actual key; also, you would want other items to be usable to pick the lock with (presuming that the player has that skill), and Inform7 does not allow multiple matching keys for one item, without writing special rules to compensate. It’s just better to have another action in my opinion.
I hope that this helps!