Class: Gloo::Objs::Say
- Inherits:
-
GlooLang::Core::Obj
- Object
- GlooLang::Core::Obj
- Gloo::Objs::Say
- Defined in:
- lib/gloo/objs/snd/say.rb
Constant Summary collapse
- KEYWORD =
'say'.freeze
- KEYWORD_SHORT =
'say'.freeze
- VOICE =
'voice'.freeze
- MSG =
'message'.freeze
- DEFAULT_MSG =
'talk to me'.freeze
Class Method Summary collapse
-
.messages ⇒ Object
Get a list of message names that this object receives.
-
.short_typename ⇒ Object
The short name of the object type.
-
.typename ⇒ Object
The name of the object type.
Instance Method Summary collapse
-
#add_children_on_create? ⇒ Boolean
Does this object have children to add when an object is created in interactive mode? This does not apply during obj load, etc.
-
#add_default_children ⇒ Object
Add children to this object.
-
#msg_run ⇒ Object
Have the computer ‘speak’ the message.
-
#msg_value ⇒ Object
Get the message to speak.
-
#voice_value ⇒ Object
Get the voice to use.
Class Method Details
.messages ⇒ Object
Get a list of message names that this object receives.
83 84 85 |
# File 'lib/gloo/objs/snd/say.rb', line 83 def self. return super + [ 'run' ] end |
.short_typename ⇒ Object
The short name of the object type.
28 29 30 |
# File 'lib/gloo/objs/snd/say.rb', line 28 def self.short_typename return KEYWORD_SHORT end |
.typename ⇒ Object
The name of the object type.
21 22 23 |
# File 'lib/gloo/objs/snd/say.rb', line 21 def self.typename return KEYWORD end |
Instance Method Details
#add_children_on_create? ⇒ Boolean
Does this object have children to add when an object is created in interactive mode? This does not apply during obj load, etc.
61 62 63 |
# File 'lib/gloo/objs/snd/say.rb', line 61 def add_children_on_create? return true end |
#add_default_children ⇒ Object
Add children to this object. This is used by containers to add children needed for default configurations.
70 71 72 73 74 |
# File 'lib/gloo/objs/snd/say.rb', line 70 def add_default_children fac = @engine.factory fac.create_string VOICE, '', self fac.create_string MSG, DEFAULT_MSG, self end |
#msg_run ⇒ Object
Have the computer ‘speak’ the message.
90 91 92 93 94 |
# File 'lib/gloo/objs/snd/say.rb', line 90 def msg_run v = voice_value.empty? ? '' : "-v '#{voice_value}'" cmd = "say #{v} '#{msg_value}'" system cmd end |
#msg_value ⇒ Object
Get the message to speak.
45 46 47 48 49 50 |
# File 'lib/gloo/objs/snd/say.rb', line 45 def msg_value o = find_child MSG return nil unless o return o.value end |
#voice_value ⇒ Object
Get the voice to use.
35 36 37 38 39 40 |
# File 'lib/gloo/objs/snd/say.rb', line 35 def voice_value v = find_child VOICE return nil unless v return v.value end |