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
If autoName is true, the library will attempt to define the name property from our associated Topic, provided name hasn't already been defined.
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.
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.
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.
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.
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
Construct the name of this ActorTopicEntry by using the theName property of our first matchObj.
On a Thought our handleResponse() method simply calls out topicResponse() method. We separate the two to allow DefaultThought to do something different.
Initialize this Thought (this is actually called at preinit)
Adv3Lite Library Reference Manual
Generated on 26/02/2025 from adv3Lite version 2.2