1
0
Fork 0
mirror of https://github.com/ganelson/inform.git synced 2024-07-05 16:44:21 +03:00
inform7/resources/Documentation/Examples/Abolition.txt
2019-03-16 13:12:11 +00:00

287 lines
12 KiB
Plaintext

* Defining new prepositions
(Relations syntax explored--Shifting alliances demonstrating all relation types; The Abolition of Love)
A thorough exploration of all the kinds of relations established so far, with the syntax to set and unset them.
Suppose we are modeling a complex society seething with interpersonal relations of every kind.
{*}"The Abolition of Love"
Section 1 - Relation types
Loving relates one person to one person.
Noticing relates various people to one person.
Impressing relates one person to various people.
Fancying relates various people to various people.
Acquaintance relates people to each other.
Marriage relates one person to another.
Alliance relates people to each other in groups.
The Chapel is a room. Elizabeth, Wickham and Darcy are people in the Chapel. Mr Bennett and Mrs Bennett are people in the Chapel. Georgiana is a person in the Chapel.
The verb to love means the loving relation.
The verb to notice means the noticing relation.
The verb to impress means the impressing relation.
The verb to fancy means the fancying relation.
The verb to know means the acquaintance relation.
The verb to be married to means the marriage relation.
The verb to be related to means the alliance relation.
Elizabeth loves Darcy. Elizabeth fancies Darcy. Elizabeth notices Darcy. Elizabeth impresses Darcy.
Mr Bennett is related to Mrs Bennett and Elizabeth. Mr Bennett is married to Mrs Bennett.
Georgiana is related to Darcy.
Now we want ways to set and unset all of these relations. (In the interests of thoroughness, we may get a bit far-fetched here. It is not recommended in practice that we make the player guess the verb "traduce".)
{**}Section 2 - Setting and Unsetting Love (1-1)
Understand "infatuate [someone] with [someone]" as infatuating it with. Infatuating it with is an action applying to two visible things.
Carry out infatuating it with:
now the noun loves the second noun.
Report infatuating it with:
say "Now [the noun] loves [a random person loved by the noun][if the second noun loves someone], while [the second noun] loves [a random person loved by the second noun][end if]."
Understand "embitter [someone] toward [someone]" as embittering it toward. Embittering it toward is an action applying to two visible things.
Carry out embittering it toward:
now the noun does not love the second noun.
Report embittering it toward:
say "[The noun] sees [the second noun] in a different light and no longer feels any affection."
Because love is a 1-1 relation, a person cannot love more than one other character at a time. Whenever we set a character to love a new person, that person ceases to love the character loved before. It is a fickle world.
One to various relations are a bit more open: we can say someone impresses multiple other characters, and our additions to the list do not override the initial ones.
{**}Section 3 - Setting and Unsetting Impressed (1-V)
Understand "commend [someone] to [someone]" as commending it to. Commending it to is an action applying to two visible things.
Carry out commending it to:
now the noun impresses the second noun.
Report commending it to:
say "[The second noun] takes a very decided interest in [the noun]."
Understand "traduce [someone] to [someone]" as traducing it to. Traducing it to is an action applying to two visible things.
Carry out traducing it to:
now the noun does not impress the second noun.
Report traducing it to:
say "[The second noun], hearing your story, decides not to be at all impressed with [the noun]."
And because this is a one-to-various relation, we can also make statements which set multiple relations at once, so:
{**}Understand "celebrate [someone]" as celebrating. Celebrating is an action applying to one visible thing.
Carry out celebrating:
now the noun impresses every person.
Report celebrating:
say "[The list of people who are impressed by the noun] take a very decided interest in [the noun]."
Understand "slander [someone]" as slandering to. Slandering to is an action applying to one visible thing.
Carry out slandering to:
now every person is not impressed by the noun.
Report slandering to:
say "Now [the noun] impresses [the list of people who are impressed by the noun]."
Note that the above unsetting is not equivalent to "now the noun does not impress every person" -- which would be ambiguous in spoken English, as well. Various-to-one relations are similar:
{**}Section 4 - Setting and Unsetting Noticing (V-1)
Understand "draw the attention of [someone] to [someone]" as drawing the attention of it to. Drawing the attention of it to is an action applying to two visible things.
Carry out drawing the attention of it to:
now the noun notices the second noun.
Report drawing the attention of it to:
say "[The noun] glances thoughtfully in the direction of [the second noun]."
Understand "distract [someone] from [someone]" as distracting it from. Distracting it from is an action applying to two visible things.
Carry out distracting it from:
now the noun does not notice the second noun.
Report distracting it from:
say "You distract [the noun] from [the second noun]."
Understand "draw attention to [someone]" as drawing attention to. Drawing attention to is an action applying to one visible thing.
Carry out drawing attention to:
now every person notices the noun.
Report drawing attention to:
say "You quickly cause everyone to attend to [the noun]."
Understand "outshine [someone]" as outshining. Outshining is an action applying to one visible thing.
Carry out outshining:
now every person does not notice the noun.
Report outshining:
say "You quickly distract everyone from [the noun]."
Section 5 - Setting and Unsetting Fancying (V-V)
Understand "flatter [someone]" as flattering. Flattering is an action applying to one thing.
Carry out flattering:
now every person fancies the noun.
Report flattering:
say "You draw down universal admiration for [the noun] by casting him or her in a flattering light."
Understand "unflatter [someone]" as unflattering. [Okay, okay, but it's four am.] Unflattering is an action applying to one thing.
Carry out unflattering:
now every person does not fancy the noun.
Report unflattering:
say "[The noun] gives everyone a universal disgust."
Understand "admire [someone]" as admiring. Admiring is an action applying to one thing.
Carry out admiring: now the player fancies the noun.
Report admiring: say "You find you rather fancy [the noun]."
Understand "loathe [someone]" as loathing. Loathing is an action applying to one thing.
Carry out loathing: now the player does not fancy the noun.
Report loathing: say "You take [the noun] in disgust."
Understand "cause chaos" as causing chaos. Causing chaos is an action applying to nothing.
Carry out causing chaos:
now every person fancies every person.
Report causing chaos: say "Now everyone fancies everyone else, which is quite an inconvenient state of affairs."
Understand "relieve chaos" as relieving chaos. Relieving chaos is an action applying to nothing.
Carry out relieving chaos:
now every person is fancied by no one.
Report relieving chaos: say "Now no one fancies anyone, which is safe but tedious."
Our options for setting and unsetting symmetrical relations are more limited again:
{**}Section 6 - Setting and Unsetting Marriage (1-1 Symmetrical)
Understand "marry [someone] to [someone]" as uniting it in matrimony with. Uniting it in matrimony with is an action applying to two visible things.
Carry out uniting it in matrimony with:
now the noun is married to the second noun.
Report uniting it in matrimony with:
say "You perform the marriage of [the noun] to [the second noun], joining them to the family of [a list of people related to the noun]."
Understand "divorce [someone] from [someone]" as divorcing it from. Divorcing it from is an action applying to two visible things.
Check divorcing it from:
if the noun is not married to the second noun, say "[The noun] is not married to [the second noun] anyway." instead.
Carry out divorcing it from:
now the noun is not married to the second noun.
Report divorcing it from:
say "[The noun] is now not married to [the second noun]."
When we unset the symmetrical relation on one side, it is automatically set or unset on the other. It is not necessary to say "the second noun is married to the noun" or "the second noun is not married to the noun", even though that is the case.
{**}Section 7 - Setting and Unsetting Acquaintance (V-V Symmetrical)
Understand "introduce [someone] to [someone]" as introducing it to. Introducing it to is an action applying to two visible things.
Carry out introducing it to:
now the noun knows the second noun.
Report introducing it to:
say "You introduce [the noun] to [the second noun]. Now [the noun] is acquainted with [the list of people who are known by the noun], and [the second noun] is acquainted with [the list of people who are known by the second noun]."
Understand "announce [someone]" as announcing. Announcing is an action applying to one visible thing.
Carry out announcing:
now every person knows the noun.
Report announcing:
say "You announce [the noun] to the whole assembled company."
Understand "ostracise [someone]" as ostracising. Ostracising is an action applying to one visible thing.
Carry out ostracising:
now every person does not know the noun.
Report ostracising:
say "You cause everyone present to forget and pretend not to be acquainted at all with [the noun]."
And finally, setting groups:
{**}Section 8 - Setting and Unsetting Familial Relations (Groups)
Understand "make [someone] adopt [someone]" as forcing it to adopt. Forcing it to adopt is an action applying to two visible things.
Carry out forcing it to adopt:
now the noun is related to the second noun.
Report forcing it to adopt:
say "Now [the second noun] is related to [the list of people related to the second noun]."
Understand "make [someone] disown [someone]" as forcing it to disown. Forcing it to disown is an action applying to two visible things.
Carry out forcing it to disown:
now the second noun is not related to the noun.
Report forcing it to disown:
say "Now [the second noun] is related to [the list of people who are related to the second noun], and [the noun] is related to [the list of people who are related to the noun]."
Notice that when we say "the second noun is not related", we remove that person from the group: they are now in a separate group of their own, while the rest of the group's members remain related to one another.
And finally, a long litany of test cases, complete with the relations lists:
{**}Test acquaintance with "relations / introduce darcy to elizabeth / introduce darcy to wickham / announce mr bennett / relations / ostracise wickham / introduce georgiana to wickham / relations".
Test impression with "commend georgiana to elizabeth / relations / celebrate Mrs bennett / relations / traduce mrs bennett to darcy / relations / slander mrs bennett / relations".
Test notice with "draw the attention of darcy to elizabeth / relations / draw attention to mr bennett / relations / distract darcy from mr bennett / relations / outshine mr bennett / relations".
Test love with "embitter elizabeth toward darcy / relations / infatuate elizabeth with wickham / relations".
Test marriage with "marry elizabeth to darcy / relations / divorce elizabeth from darcy / relations".
Test alliance with "make mr bennett adopt georgiana / relations / make mrs bennett disown georgiana / relations".
Test fancying with "admire elizabeth / relations / loathe elizabeth / relations / flatter elizabeth / relations / unflatter elizabeth / relations / cause chaos / relations / relieve chaos / relations".
Test me with "test acquaintance / test impression / test notice / test love / test alliance / test fancying / test marriage".