} // and its graphics instance #endregion #region CONSTRUCTORS public HackOverlay(EUCProcess proc, HackInput input) { BackColor = Color.Transparent; Input = input; Process = proc; Renderer = new Renderer(); FormThread = new Thread(() => { Form = new DrawForm(); Form.Shown += (o, e) => Renderer.Init(Form); Form.Resize += (o, e) => { Renderer.Dispose(); Renderer.Init(Form); SceneWorld = Renderer.MakeScene(); // size = 10mb SceneOverlay = Renderer.MakeScene(1024 * 1024 * 2); // size = 2mb GeomVisuals = Renderer.MakeGeometryBuffer(); // size = 2mb GeomMenu = Renderer.MakeGeometryBuffer(1024 * 1024); // size = 1mb Visuals = new Graphics(GeomVisuals); Menu = new Graphics(GeomMenu); }; Application.Run(Form); }); FormThread.IsBackground = true; Size = Vector2.Zero; //BaseContainer = new Frame(); //BaseContainer.BackColor = Color.Transparent; Controls = new List <Controls.Control>(); }
public Hack(string processName, int tickRate = 60, bool createOverlay = true, bool limitFrames = true, int timeOut = -1) { Input = new HackInput(); Process = EUCProcess.WaitForProcess(processName, timeOut); ticker = new LoopTicker(tickRate, limitFrames); modules = new List <HackModule>(); if (createOverlay) { Overlay = new HackOverlay(Process, Input); Overlay.Start(); } ticker.Tick += (o, e) => { if (!Process.IsRunning) { e.Stop = true; return; } OnTick(e); }; ticker.AfterRun += (o, e) => AfterRun(); ticker.BeforeRun += (o, e) => BeforeRun(); }
public virtual void Update(Time time, HackInput input, Vector2 cursorPos) { if (!IsVisible) { return; } foreach (var c in children) { c.Update(time, input, cursorPos); } }
public override void Update(Time time, HackInput input, Vector2 cursorPos) { base.Update(time, input, cursorPos); }