|
Since nobody else has replied, I'll give it a shot. It appears (based on my quick perusal of the docs) that an AgendaItem is just an ordinary object. That is, it's not a PreinitObject or anything like that. So you should be able to move one around using moveInto(), just like any other object.
One factor that might influence the desirability of doing this is that a given actor will perform only one AgendaItem per turn -- and I'm pretty sure it will be the first active one in the actor's containment hierarchy. You would have to investigate where an object ends up when it's moved into an actor using moveInto() -- I'm hazy on that. If the newly moved AgendaItem goes to the bottom of the list, that might not be desirable.
But there's a better solution, I think: Create a subclass of AgendaItem for each type of behavior you want actors to engage in, and then create an instance of your subclass within each actor that you want to be able to perform that action. Then, instead of using moveInto to move a single object around, you just switch isReady on and off for each instance, as needed.
To do this, they have to be named objects, not anonymous ConradAgendaItem objects, but that's trivial, because you would have to have named objects to move them too.
|