Please use the Insert Code Snippet button to add code examples to your question, it makes them easier to find and read.
You need to break down the overall conditional expression in your (if:) macro example into each of its logical sub-expressions, using the and operator listed in the Boolean section you join those sub-expressions together again.
eg, The over all logic of the expression in your example is:
1. Check if the collection in the $inv variable contains the String "mortar and pestle".
2. Check if the collection in the $inv variable contains the String "dagger"
3. Check if point 1 and point 2 are both true at the same time.
The TwineScript to do that is:
(if: $inv contains "mortar and pestle" and $inv contains "dagger")[ do something... ]
note: If the above point 3 was: Check if either point 1 or point 2 is true (not necessarily at the same time); then you would replace the and operator with the he or operator listed in the Boolean section like so:
(if: $inv contains "mortar and pestle" or $inv contains "dagger")[ do something... ]