Thought class | thoughts.t[89], thoughtsuggs.t[156]

A kind of TopicEntry that responds to a THINK ABOUT command when located in a ThoughtManager object. These can be defined just like any other topic entry objects, and work in just the same way as ConsultTopics.

Modified in thoughtsuggs.t[156]:
Initialize all our Thoughts.

`class Thought : TopicEntry`

Superclass Tree (in declaration order)

`Thought`
`TopicEntry`
`object`

Subclass Tree

`Thought`
`DefaultThought`
`FactThought`

Global Objects

(none)

Summary of Properties

`autoName curiosityAroused curiositySatisfied includeInList listOrder name suggestAs`

Inherited from `TopicEntry` :
`active getActor isActive matchExactCase matchObj matchPattern matchScore narrator scoreBoost topicMatched`

Summary of Methods

`buildName handleResponse initializeTopicEntry`

Inherited from `TopicEntry` :
`addTopic factText informFact informNewFact interpret matchTopic qualifiedDesc revealFact revealNewFact scoreBooster topicResponse`

Properties

`autoName` | `thoughtsuggs.t[200]`

If autoName is true, the library will attempt to define the name property from our associated Topic, provided name hasn't already been defined.

`curiosityAroused` | `thoughtsuggs.t[177]`

An expression that should evaluate to true when we want this Thought to be suggested. Note that both curiosityAroused and curiositySatisfied need to be overridden by expressions or methods) in game code if something other then their default values (or true and nil respectively) are needed.

`curiositySatisfied` | `thoughtsuggs.t[185]`

An expression that should evaluate to true when we no lomger want this Thought to be suggested. This needs to be overriden by game code if desired; the extension makes no attempt to update curiositySatisifed to true when, say, a Thought topic has been suggested once or so many times, as each game will probably want to handle this in a different way.

`includeInList` OVERRIDDEN | `thoughts.t[90]`

no description available

`listOrder` | `thoughtsuggs.t[169]`

The listOrder can be used to determine the order in which Thought suggestions are listed. Thoughts with a lower listOrder will be listed before Tboughts with a higher listOrder. By default we give all Thoughts a listOrder of 100.

`name` | `thoughtsuggs.t[193]`

The name to be displayed if you want this Thought to be suggested in response to a THINK command. This should be something that would match the vocab of the Topic associated with this Thought. Alternatively, autoName can be set to true to have the name set to the name of the Topic (or Thing) this Thought matches.

`suggestAs` | `thoughtsuggs.t[162]`

A Thought should be suggested as a Thought by thoughtSuggestionLister; we need to specify that here since suggestedTopicLister, from which thoughtSuggestionLister inhgerits, needs this information.

Methods

`buildName ( )` | `thoughtsuggs.t[220]`

Construct the name of this ActorTopicEntry by using the theName property of our first matchObj.

`handleResponse ( )` | `thoughts.t[96]`

On a Thought our handleResponse() method simply calls out topicResponse() method. We separate the two to allow DefaultThought to do something different.

`initializeTopicEntry ( )`OVERRIDDEN | `thoughtsuggs.t[204]`

Initialize this Thought (this is actually called at preinit)

Adv3Lite Library Reference Manual
Generated on 26/02/2025 from adv3Lite version 2.2