TopicGroup class | actor.t[3463]

A TopicGroup is an object that can be used to group ActorTopicEntries that share common features such as convKeys or isActive conditions. A TopicGroup can be used anywhere an ActorTopicEntry can be used, and any ActorTopicEntries should behave just as they would if they were in the TopicGroup's container, apart from the modifications imposed by the TopicGroup.

`class TopicGroup : object`

Superclass Tree (in declaration order)

`TopicGroup`
`object`

Subclass Tree

`TopicGroup`
`ConvNode`

Global Objects

(none)

Summary of Properties

`activated active contents convKeys curiosityAroused getActor isActive scoreBoost`

Summary of Methods

`addTopic nodeActive scoreBooster`

Properties

`activated` | `actor.t[3562]`

If our activated is not -1, it will be copied to all the the TopicEntries we contained at preinit or game startup. This can be used to set all our contents' initial activatd to either true or nil without having to set it on every one of our TopioEntries individually.

`active` | `actor.t[3519]`

This TopicGroup is active if both its own isActive property is true and its location is active (this allows us to locate TopicGroups within other TopicGroups, for instance)

`contents` | `actor.t[3578]`

The list of TopicEntries we contain.

`convKeys` | `actor.t[3525]`

A list of convKeys that should be added to the convKeys of each of our TopicEntries.

`curiosityAroused` | `actor.t[3554]`

If our curiosityAroused is not -1, it will be copied to all the the TopicEntries we contained at preinit or game startup. This can be used to set all our contents' initial curiosityAroused to either true or nil without having to set it on every one of our TopioEntries individually.

`getActor` | `actor.t[3575]`

Our associated actor is our location's associated actor.

`isActive` | `actor.t[3512]`

A TopicGroup's isActive property can be used to make all the TopicEntries enclosed within in inactive by being set to nil; if it is true then the enclosed TopicEntries are active if their own isActive property is true.

`scoreBoost` | `actor.t[3531]`

A scoreBoost that should be added to the scoreBoost of each of our TopicEntries.

Methods

`addTopic (obj)` | `actor.t[3472]`

Add a topic entry to our database; since a TopicGroup isn't a TopicDatabase we simply ask our location to add it to its database. We also modify the convKeys and scoreBoost properties of any items contained in us according to our own convKeys and scoreBoost properties.

`nodeActive ( )` | `actor.t[3569]`

If we're being used as a conversation node, our node is active when our own convKeys matches (i.e. overlaps with) that of our actor's activeKeys.

`scoreBooster ( )` | `actor.t[3537]`

By how much do we boost the score of any TopicEntries we contain? We need to add our own score boost to that our own location.

Adv3Lite Library Reference Manual
Generated on 13/06/2025 from adv3Lite version 2.2.1