From 43a3e41f5c296f1af486483cbdde36b9c6acb1b1 Mon Sep 17 00:00:00 2001 From: Jeffrey Phillips Freeman <jeffrey.freeman@syncleus.com> Date: Thu, 4 Mar 2021 02:08:23 -0500 Subject: [PATCH] Restructured Event into an Openstruct --- lib/aethyr/core/actions/action.rb | 16 +++++++++------- .../core/actions/commands/command_action.rb | 10 ++++++---- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/lib/aethyr/core/actions/action.rb b/lib/aethyr/core/actions/action.rb index 474219f..df067fa 100644 --- a/lib/aethyr/core/actions/action.rb +++ b/lib/aethyr/core/actions/action.rb @@ -1,14 +1,16 @@ +require 'aethyr/core/event' + module Aethyr module Extend - module Action - def action; end - end + class Action < Event + def initialize(**data) + super(**data) - class Event - include Aethyr::Extend::Action + self.agent = data[:agent] + self.target = data[:target] + end - def initialize(**data) - @data = data.freeze + def action end end end diff --git a/lib/aethyr/core/actions/commands/command_action.rb b/lib/aethyr/core/actions/commands/command_action.rb index 671e022..344bcb9 100644 --- a/lib/aethyr/core/actions/commands/command_action.rb +++ b/lib/aethyr/core/actions/commands/command_action.rb @@ -2,19 +2,21 @@ require "aethyr/core/actions/action" module Aethyr module Extend - class CommandAction < Event + class CommandAction < Action def initialize(actor, **data) - super(**data) + new_data = data.dup + new_data[:actor] = actor + super(**new_data) @player = actor end #Looks in player's inventory and room for name. #Then checks at global level for GOID. def find_object(name, event) - if event[:player].nil? + if event[:actor].nil? return $manager.find(name, nil) || $manager.get_object(name) else - return $manager.find(name, event[:player]) || $manager.find(name, event[:player].container) || $manager.get_object(name) + return $manager.find(name, event[:actor]) || $manager.find(name, event[:actor].container) || $manager.get_object(name) end end end -- GitLab