# Talker (of `Narrator`)

class `Talker`

  Defined in Talker.sc.

  Talker is similar to `Narrator`, but includes support for showing a bust, eyes and mouth while the messages are shown or spoken. The mouth can also be driven by lip-sync data, if present.

  If you add a new Talker instance, you must assign it some talker number, and then add code in the findTalker method of testMessage in Main.sc to direct that talker number to the right script and export.

  See Talkers and Narrators for more information Talkers.

Subclasses: `PriorityTalker`, `ChoiceTalker`.

## Properties

Inherited from `Narrator`:

Property | Description
--- | ---
x |
y |
z |
heading |
noun |
case |
modNum |
nsTop |
nsLeft |
nsBottom |
nsRight |
sightAngle |
actions |
onMeCheck |
state |
approachX |
approachY |
approachDist |
_approachVerbs |
yStep |
view |
loop |
cel |
priority |
underBits |
signal |
lsTop |
lsLeft |
lsBottom |
lsRight |
brTop |
brLeft |
brBottom |
brRight |
scaleSignal |
scaleX |
scaleY |
maxScale |
cycleSpeed |
script |
cycler |
timer |
detailLevel |
scaler |
caller |
disposeWhenDone |
ticks |
talkWidth |
keepWindow |
modeless |
font |
cueVal |
initialized |
showTitle |
color |
back |
curVolume |
saveCursor |
name |

Defined in Talker:

Property | Description
--- | ---
bust |
eyes |
mouth |
viewInPrint |
textX |
textY |
useFrame |
blinkSpeed |

## Methods

`init`([theBust theEyes theMouth])

  Override this method in your Talker instance, and call (super:init(bust eyes mouth)) with the appropriate Props for theBust, theEyes and theMouth. You will need to position them at the correct spot.

  Parameters: | theBust (heapPtr) – A `Prop` instance for the overall face (bust) of the talker. theEyes (heapPtr) – A `Prop` instance for the eyes. theMouth (heapPtr) – A `Prop` instance for the talker’s mouth.

`doit`()

`dispose`(param1)

`hide`()

`show`()

`say`(buffer)

`startText`(buffer)

`display`(theText)

`startAudio`(buffer)

`cycle`(theProp)

`setSize`()