Class: Gexp::Command::Object
- Inherits:
-
Gexp::Command
- Object
- Gexp::Command
- Gexp::Command::Object
- Defined in:
- lib/gexp/command/object.rb
Overview
Объектная команда
Команда выполняющаяся над объектами игрового мира.
Выполняет событие FSM у объекта описанное в параметрах.
Instance Attribute Summary
Attributes inherited from Gexp::Command
#context, #errors, #event, #object, #params, #provider
Instance Method Summary collapse
-
#initialize(params = {}) ⇒ Object
constructor
A new instance of Object.
-
#perform ⇒ Object
Выполнение команды.
- #subject ⇒ Object
Methods inherited from Gexp::Command
Constructor Details
#initialize(params = {}) ⇒ Object
Returns a new instance of Object.
13 14 15 16 17 |
# File 'lib/gexp/command/object.rb', line 13 def initialize(params = {}) super @event = @params[:event] self.load_object end |
Instance Method Details
#perform ⇒ Object
Выполнение команды
20 21 22 23 24 25 26 27 28 |
# File 'lib/gexp/command/object.rb', line 20 def perform self.activate! @object.send(self.event, self) self.complete! rescue => e self.failure! self.errors << e raise e end |
#subject ⇒ Object
30 31 32 |
# File 'lib/gexp/command/object.rb', line 30 def subject self.context.user end |