Ejemplo n.º 1
0
        public AgentCharacter(Lifetime lifetime, Character character, AgentManager agentManager,
                              IWin32Window owner, ClippySettingsStore settingsStore)
        {
            this.agentManager  = agentManager;
            this.owner         = owner;
            this.settingsStore = settingsStore;
            Character          = character;
            ScaleCharacterForDpi();

            AgentClicked         = new SimpleSignal(lifetime, "AgentCharacter::AgentClicked");
            ButtonClicked        = new Signal <string>(lifetime, "AgentCharacter::ButtonClicked");
            BalloonOptionClicked = new Signal <object>(lifetime, "AgentCharacter::BalloonOptionClicked");

            balloon = new BalloonManager(lifetime);
            balloon.ButtonClicked.FlowInto(lifetime, ButtonClicked);
            balloon.BalloonOptionClicked.FlowInto(lifetime, BalloonOptionClicked);

            requestHandlers = new Dictionary <int, Action>();

            characterWindow = OleWin32Window.FromIOleWindow(character.Interface);
            characterWindow.SetOwner(owner);

            initLocation = SetDefaultLocation;

            random = new Random();
        }
Ejemplo n.º 2
0
 public AgentManager(Lifetime lifetime, IMainWindow mainWindow, ClippySettingsStore settingsStore)
 {
     this.lifetime      = lifetime;
     this.mainWindow    = mainWindow;
     this.settingsStore = settingsStore;
     agentLocation      = FileSystemPath.Parse(GetType().Assembly.Location).Directory;
     events             = new Dictionary <string, ICharacterEvents>();
     requests           = new Dictionary <int, ICharacterEvents>();
 }