Italian
version 3/110105 by Massimo Stella
Section 3.7 - "Say word" rules
To say (the_case - letter case) 'you':
set the current object to the player / "'you'";
if lm_p3 and lm_sing and libmsg_3ps_changed is 0, say the_case 'he';
otherwise find the_case & curr_obj_person & curr_obj_number
in the table of 'you' forms.
To say (the_case - letter case) 'your':
set the current object to the player / "'your'";
if lm_p3 and lm_sing, say the_case 'his';
otherwise find the_case & curr_obj_person & curr_obj_number
in the table of 'your' forms.
To say (the_case - letter case) 'you're':
say the_case 'you';
if lm_past, say " [are]"; [ will become "you were", etc ]
otherwise find curr_obj_person & curr_obj_number
in the table of 'you're' endings.
To say (the_case - letter case) 'you've' auxiliary:
say the_case 'you';
find curr_obj_person & curr_obj_number
in the table of 'you've' endings.
To say (the_case - letter case) 'yourself':
set the current object to the player / "'yourself'";
if lm_p3 and lm_sing, find the_case & curr_obj_gender & curr_obj_number
in the table of 'himself' forms;
otherwise find the_case & curr_obj_person & curr_obj_number
in the table of 'yourself' forms.
To say (the_case - letter case) 'himself':
set the current object to main object / "'himself'";
find the_case & curr_obj_gender & curr_obj_number
in the table of 'himself' forms.
[ "you" as the direct object (always lower case), eg. "He saw you" ]
To say you dobj:
set the current object to the player / "you dobj";
if lm_p3 and lm_sing and libmsg_3ps_changed is 0, say "[him]";
otherwise find curr_obj_person & curr_obj_number
in the table of 'you' dobj forms.
To say you|yourself:
if curr_subject is the player, [ if the player is doing the action ]
say "[yourself]";
otherwise say you dobj.
To say (the_case - letter case) 'he':
find the_case & curr_obj_gender & curr_obj_number
in the table of 'he' forms.
To say (the_case - letter case) 'his':
find the_case & curr_obj_gender & curr_obj_number
in the table of 'his' forms.
To say (the_case - letter case) 'him':
find the_case & curr_obj_gender & curr_obj_number
in the table of 'him' forms.
To find (the_case - letter case) verb in (t_present - table-name) / (t_past - table-name):
if lm_present, find the_case & curr_obj_person & curr_obj_number
in t_present;
otherwise find the_case & curr_obj_person & curr_obj_number
in t_past.
To find (the_case - letter case) negative in (t_present - table-name) / (t_past - table-name):
if lm_present, find negative the_case & curr_obj_person & curr_obj_number
in t_present;
otherwise find negative the_case & curr_obj_person & curr_obj_number
in t_past.
To say (the_case - letter case) 'are' for (obj_ - object):
set the current object to obj_ / "'are'";
find the_case verb in the table of 'are' forms /
the table of 'were' forms.
To say (the_case - letter case) 'aren't' for (obj_ - object):
set the current object to obj_ / "'aren't'";
find the_case negative in the table of 'are' forms /
the table of 'were' forms.
To say (the_case - letter case) 'have' for (obj_ - object):
set the current object to obj_ / "'have'";
find the_case verb in the table of 'have' forms /
the table of 'had' forms.
To say (the_case - letter case) 'haven't' for (obj_ - object):
set the current object to obj_ / "'haven't'";
find the_case negative in the table of 'have' forms /
the table of 'had' forms.
To say (the_case - letter case) 'can':
find the_case verb in the table of 'can' forms /
the table of 'could' forms.
To say (the_case - letter case) 'can't':
find the_case negative in the table of 'can' forms /
the table of 'could' forms.
To say (the_case - letter case) 'have' auxiliary for (obj_ - object):
set the current object to obj_ / "'have' aux";
find the_case & curr_obj_person & curr_obj_number
in the table of 'have' forms.
To say (the_case - letter case) 'haven't' auxiliary for (obj_ - object):
set the current object to obj_ / "'haven't' aux";
find negative the_case & curr_obj_person & curr_obj_number
in the table of 'have' forms.
To say You: say upper-case 'you'; change curr_subject to the player.
To say Your: say upper-case 'your'.
To say You're: say upper-case 'you're'.
To say You've+: say upper-case 'you've' auxiliary.
To say Yourself: say upper-case 'yourself'.
To say He: say upper-case 'he'; change curr_subject to curr_obj.
To say His: say upper-case 'his'.
To say Him: say upper-case 'him'.
To say Himself: say upper-case 'himself'.
To say you: say lower-case 'you'; change curr_subject to the player.
To say your: say lower-case 'your'.
To say you're: say lower-case 'you're'.
To say you've+: say lower-case 'you've' auxiliary.
To say yourself: say lower-case 'yourself'.
[ To say you dobj: defined above ]
[ To say you|yourself: defined above ]
To say he: say lower-case 'he'; change curr_subject to curr_obj.
To say his: say lower-case 'his'.
To say him: say lower-case 'him'.
To say himself: say lower-case 'himself'.
[ 'do', 'are' and 'have' assume the player is the subject; if some other
thing is the subject, use 'do|does' / 'is|are' / 'has|have' instead ]
To say Are: say upper-case 'are' for the player; change curr_subject to the player.
To say Aren't: say upper-case 'aren't' for the player; change curr_subject to the player.
To say Have: say upper-case 'have' for the player; change curr_subject to the player.
To say Haven't: say upper-case 'haven't' for the player; change curr_subject to the player.
To say Have+: say upper-case 'have' auxiliary for the player; change curr_subject to the player.
To say Haven't+: say upper-case 'haven't' auxiliary for the player; change curr_subject to the player.
To say are: say lower-case 'are' for the player.
To say aren't: say lower-case 'aren't' for the player.
To say have: say lower-case 'have' for the player.
To say haven't: say lower-case 'haven't' for the player.
To say have+: say lower-case 'have' auxiliary for the player.
To say haven't+: say lower-case 'haven't' auxiliary for the player.
To say Can: say upper-case 'can'.
To say Can't: say upper-case 'can't'.
To say can: say lower-case 'can'.
To say can't: say lower-case 'can't'.
To say It's: say "[/r]"; follow the upper-case 'it's' rule.
To say it's: say "[/r]"; follow the lower-case 'it's' rule.
To say There's: say "[/r]"; follow the upper-case 'there's' rule.
To say there's: say "[/r]"; follow the lower-case 'there's' rule.
To say comes|came: say "[/r]"; follow the lower-case 'comes' rule.
[ here/there, for contexts like "A dog is here" or "A dog was there" ]
To say here: say "[if lm_past]t[end if]qui".
This is the upper-case 'it's' rule:
say "[if lm_present]E['][otherwise]Era".
This is the lower-case 'it's' rule:
say "[if lm_present]è[otherwise]era".
This is the upper-case 'there's' rule:
say "[if lm_present]C[']è[otherwise]C[']era".
This is the lower-case 'there's' rule:
say "[if lm_present]c[']è[otherwise]c[']era".
This is the lower-case 'comes' rule:
say "[if lm_present]viene[otherwise]veniva".
To say Is|Are: say upper-case 'are' for curr_obj; change curr_subject to curr_obj.
To say Has|Have: say upper-case 'have' for curr_obj; change curr_subject to curr_obj.
To say Isn't|Aren't: say upper-case 'aren't' for curr_obj; change curr_subject to curr_obj.
To say Hasn't|Haven't: say upper-case 'haven't' for curr_obj; change curr_subject to curr_obj.
To say is|are: say lower-case 'are' for curr_obj.
To say has|have: say lower-case 'have' for curr_obj.
To say isn't|aren't: say lower-case 'aren't' for curr_obj.
To say hasn't|haven't: say lower-case 'haven't' for curr_obj.
To say Is|Was:
if lm_present, find upper-case & third person & singular in the table of 'are' forms;
otherwise find upper-case & third person & singular in the table of 'were' forms.
To say Isn't|Wasn't:
if lm_present, find negative upper-case & third person & singular in the table of 'are' forms;
otherwise find negative upper-case & third person & singular in the table of 'were' forms.
To say is|was:
if lm_present, find lower-case & third person & singular in the table of 'are' forms;
otherwise find lower-case & third person & singular in the table of 'were' forms.
To say isn't|wasn't:
if lm_present, find negative lower-case & third person & singular in the table of 'are' forms;
otherwise find negative lower-case & third person & singular in the table of 'were' forms.
To print (word1_ - text) for singular or (word2_ - text) for plural:
if curr_obj is the player, say "[if lm_p3 and lm_sing][word1_][otherwise][word2_]";
otherwise say "[if curr_obj acts plural][word2_][otherwise][word1_]".
To say It|They:
print "Esso" for singular or "Essi" for plural; change curr_subject to curr_obj.
To say It|Those:
print "Esso" for singular or "Quelli" for plural; change curr_subject to curr_obj.
To say That|Those:
print "Quello" for singular or "Quelli" for plural; change curr_subject to curr_obj.
To say That|They:
print "Quello" for singular or "Essi" for plural; change curr_subject to curr_obj.
To say That's|They're:
print "Quello è" for singular or "Essi sono" for plural; change curr_subject to curr_obj.
[ for the following group of "say" rules, assume main object is being referred to ]
To say it|they:
set the current object to main object / "it|they";
print "esso" for singular or "essi" for plural.
To say it|them:
set the current object to main object / "it|them";
print "quello" for singular or "loro" for plural.
To say it|those:
set the current object to main object / "it|those";
print "quello" for singular or "quelli" for plural.
To say that|those:
set the current object to main object / "that|those";
print "quello" for singular or "quelli" for plural.
To say is|are for (n_ - a number):
if n_ is 1, say "è";
otherwise say "sono".
To say off|out of:
if curr_obj is a supporter, say "giù";
otherwise say "fuori".
To say onto|into:
if curr_obj is a supporter, say "sopra";
otherwise say "dentro".
To say on|in:
if curr_obj is a supporter, say "sopra";
otherwise say "dentro".
To say On|In:
if curr_obj is a supporter, say "Sopra";
otherwise say "Dentro".