Exemple #1
0
        public OverlayRenderer(PathOfExile poe, RenderingContext rc)
        {
            this.poe = poe;
            poe.Area.OnAreaChange += area => modelUpdatePeriod = 6;

            this.MinimapRenderer = new MinimapRenderer();
            this.XphRenderer     = new XPHRenderer();
            this.PreloadAlert    = new PreloadAlert();
            this.hudRenderers    = new List <HUDPlugin> {
                new HealthBarRenderer(),
                new ItemAlerter(),
                this.MinimapRenderer,
                new ItemLevelRenderer(),
                new ItemRollsRenderer(),
                new DangerAlert(),
                this.XphRenderer,
                new ClientHacks(),
                this.PreloadAlert
            };
            if (Settings.GetBool("Window.ShowIngameMenu"))
            {
        #if !DEBUG
                this.hudRenderers.Add(new Menu.Menu());
        #endif
            }
            rc.OnRender += this.rc_OnRender;

            this.hudRenderers.ForEach(x => x.Init(poe, this));
        }
Exemple #2
0
        public OverlayRenderer(PathOfExile poe, RenderingContext rc)
        {
            AreaChangeEvent    event2 = null;
            Action <HUDPlugin> action = null;

            this.poe = poe;
            if (event2 == null)
            {
                event2 = area => this.tickCount = 6;
            }
            poe.CurrentArea.OnAreaChange += event2;
            this.hudRenderers             = new List <HUDPlugin>();
            this.hudRenderers.Add(new HealthBarRenderer());
            this.hudRenderers.Add(new ItemAlerter());
            this.hudRenderers.Add(this.MinimapRenderer = new MinimapRenderer());
            this.hudRenderers.Add(new ItemLevelRenderer());
            this.hudRenderers.Add(new DangerAlert());
            this.hudRenderers.Add(this.XphRenderer = new XPHRenderer());
            this.hudRenderers.Add(new ClientHacks());
            this.hudRenderers.Add(this.PreloadAlert = new PreloadAlert());
            if (Settings.GetBool("Window.ShowIngameMenu"))
            {
                this.hudRenderers.Add(new Menu());
            }
            rc.OnRender += new RenderCallback(this.rc_OnRender);
            if (action == null)
            {
                action = x => x.Init(poe, this);
            }
            this.hudRenderers.ForEach(action);
        }
Exemple #3
0
        public static void Main(string[] args)
        {
            Offsets offs;
            int     pid = FindPoeProcess(out offs);

            if (pid == 0)
            {
                MessageBox.Show("Path of Exile is not running!");
                return;
            }

            Sounds.LoadSounds();
            if (!Settings.LoadSettings())
            {
                return;
            }
            using (Memory memory = new Memory(offs, pid))
            {
                offs.DoPatternScans(memory);
                PathOfExile pathOfExile = new PathOfExile(memory);
                pathOfExile.Update();
                OverlayRenderer overlay = null;
                AppDomain.CurrentDomain.UnhandledException += delegate(object sender, UnhandledExceptionEventArgs exceptionArgs)
                {
                    if (overlay != null)
                    {
                        overlay.Detach();
                    }
                    MessageBox.Show("Program exited with message:\n " + exceptionArgs.ExceptionObject.ToString());
                    Environment.Exit(1);
                };
                try
                {
                    Console.WriteLine("Starting overlay");
                    TransparentDXOverlay transparentDXOverlay = new TransparentDXOverlay(pathOfExile.Window, () => memory.IsInvalid());
                    transparentDXOverlay.InitD3D();
                    overlay = new OverlayRenderer(pathOfExile, transparentDXOverlay.RC);
                    Application.Run(transparentDXOverlay);
                }
                finally
                {
                    if (overlay != null)
                    {
                        overlay.Detach();
                    }
                }
            }
        }
Exemple #4
0
 public void Init(PathOfExile poe, OverlayRenderer overlay)
 {
     this.poe     = poe;
     this.overlay = overlay;
     this.OnEnable();
 }
Exemple #5
0
 public Area(PathOfExile poe)
 {
     this.Poe      = poe;
     poe.OnUpdate += new UpdateEvent(this.poe_OnUpdate);
 }