Said() Strings and the Use of Articles

From SCI Wiki
Jump to navigationJump to search

By Gumby

It is wise to take into account articles when creating said strings. Consider all the different ways that a user could might communicate the command give the pig the mirror to the parser.

Code:
    // Matches: 'give pig mirror' & 'give the pig mirror' 
    // Ignores: 'give pig the mirror'
    (if(Said('give/pig<mirror'))
       Print("Output A")
    )

    // Matches: 'give pig the mirror' & 'give the pig the mirror'
    // Ignores: 'give pig mirror' & 'give the pig mirror'
    (if(Said('give/pig/mirror')
       Print("Output B")
    )

    // Combining the 2 gives you a wider input range
    // Matches all inputs specified above...
    (if(Said('give/pig<mirror') or Said('give/pig/mirror'))
       Print("Output C")
    )

As you can see, the first 2 code blocks behave quite differently when the 'the' article is specified, however the 3rd covers all the test cases.