Prev: 49950 Up: Map Next: 49989
49965: Parser: Validate Two Direct Objects
Used by the routines at Action_Give, Action_Kill and Action_Tie.
Accept a command that names one or two objects, and reject the rest.
Output
F The carry flag is set when the command is malformed
Parser_ValidateTwoDirectObjects 49965 CALL Parser_ValidateDirectObject Return if the words after the verb are not valid for this command.
49968 RET C
49969 CP 1 Jump to ValidateTwoDirectObjects unless exactly one object was named.
49971 JR NZ,ValidateTwoDirectObjects
Only one object was named.
49973 CALL Response_PleaseBeMoreSpecific Call Response_PleaseBeMoreSpecific.
49976 SCF Set the carry flag to reject the command.
49977 RET Return.
There are two or more valid direct objects in the user input.
ValidateTwoDirectObjects 49978 CP 3 Jump to ValidateTwoDirectObjects_TooMany when three or more objects were named.
49980 JR NC,ValidateTwoDirectObjects_TooMany
49982 AND A Clear the carry flag; exactly two objects were named.
49983 RET Return.
Too many objects were named.
ValidateTwoDirectObjects_TooMany 49984 CALL Response_PleaseRephraseThat Call Response_PleaseRephraseThat.
49987 SCF Set the carry flag to reject the command.
49988 RET Return.
Prev: 49950 Up: Map Next: 49989