Add files via upload

master
sagirilover 5 years ago committed by GitHub
parent c17bc87196
commit 223ab7138f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 830
      AnimeSoftware/AlphaColorDialog.cs
  2. 398
      AnimeSoftware/AlphaColorPanel.cs
  3. 96
      AnimeSoftware/AnimeForm.Designer.cs
  4. 30
      AnimeSoftware/AnimeForm.cs
  5. 2
      AnimeSoftware/Checks.cs
  6. 9
      AnimeSoftware/Hacks/BlockBot.cs
  7. 12
      AnimeSoftware/Hacks/DoorSpam.cs
  8. 34
      AnimeSoftware/Hotkey.cs
  9. 34
      AnimeSoftware/Math.cs
  10. 6
      AnimeSoftware/Memory.cs
  11. 14
      AnimeSoftware/Objects/LocalPlayer.cs
  12. 74
      AnimeSoftware/Offsets/Offsets.cs
  13. 15
      AnimeSoftware/Offsets/ScannedOffsets.cs
  14. 44
      AnimeSoftware/Program.cs
  15. 72
      AnimeSoftware/Properties/AssemblyInfo.cs
  16. 124
      AnimeSoftware/Properties/Hotkey.Designer.cs
  17. 28
      AnimeSoftware/Properties/Hotkey.settings
  18. 142
      AnimeSoftware/Properties/Resources.Designer.cs
  19. 232
      AnimeSoftware/Properties/Resources.resx

@ -1,416 +1,416 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Drawing; using System.Drawing;
using System.Collections; using System.Collections;
using System.ComponentModel; using System.ComponentModel;
using System.Windows.Forms; using System.Windows.Forms;
using System.Data; using System.Data;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
using System.Text; using System.Text;
namespace Opulos.Core.UI { namespace Opulos.Core.UI {
public class AlphaColorDialog : ColorDialog { public class AlphaColorDialog : ColorDialog {
///<summary>Event is fired after the color or alpha value are changed via any of the possible user-interface controls.</summary> ///<summary>Event is fired after the color or alpha value are changed via any of the possible user-interface controls.</summary>
public event EventHandler ColorChanged; public event EventHandler ColorChanged;
private Color _color = Color.Black; // currently selected color private Color _color = Color.Black; // currently selected color
private AlphaDialog dialogAlpha = null; private AlphaDialog dialogAlpha = null;
private AlphaColorPanel panelAlpha = null; private AlphaColorPanel panelAlpha = null;
private Button btnAlpha = new Button { Text = "Alpha" }; private Button btnAlpha = new Button { Text = "Alpha" };
private IntPtr handle = IntPtr.Zero; // handle of this ColorDialog private IntPtr handle = IntPtr.Zero; // handle of this ColorDialog
private IntPtr hWndRed = IntPtr.Zero; // handles to TextBoxes private IntPtr hWndRed = IntPtr.Zero; // handles to TextBoxes
private IntPtr hWndGreen = IntPtr.Zero; private IntPtr hWndGreen = IntPtr.Zero;
private IntPtr hWndBlue = IntPtr.Zero; private IntPtr hWndBlue = IntPtr.Zero;
public AlphaColorDialog() { public AlphaColorDialog() {
btnAlpha.Click += btnAlpha_Click; btnAlpha.Click += btnAlpha_Click;
} }
///<summary>The handle for the ColorDialog window.</summary> ///<summary>The handle for the ColorDialog window.</summary>
public IntPtr Handle { public IntPtr Handle {
get { get {
return handle; return handle;
} }
} }
void btnAlpha_Click(object sender, EventArgs e) { void btnAlpha_Click(object sender, EventArgs e) {
if (dialogAlpha == null) { if (dialogAlpha == null) {
dialogAlpha = new AlphaDialog(this); dialogAlpha = new AlphaDialog(this);
panelAlpha = new AlphaColorPanel(); panelAlpha = new AlphaColorPanel();
panelAlpha.AlphaChanged += panelAlpha_AlphaChanged; panelAlpha.AlphaChanged += panelAlpha_AlphaChanged;
dialogAlpha.Controls.Add(panelAlpha); dialogAlpha.Controls.Add(panelAlpha);
dialogAlpha.Text = "Alpha"; dialogAlpha.Text = "Alpha";
//dialogAlpha.StartPosition = FormStartPosition.CenterParent; // doesn't work //dialogAlpha.StartPosition = FormStartPosition.CenterParent; // doesn't work
dialogAlpha.StartPosition = FormStartPosition.Manual; dialogAlpha.StartPosition = FormStartPosition.Manual;
dialogAlpha.ClientSize = panelAlpha.PreferredSize; dialogAlpha.ClientSize = panelAlpha.PreferredSize;
Size sz = dialogAlpha.Size; Size sz = dialogAlpha.Size;
RECT r = new RECT(); RECT r = new RECT();
GetWindowRect(handle, ref r); GetWindowRect(handle, ref r);
dialogAlpha.Location = new Point(r.Left + ((r.Right - r.Left) - sz.Width) / 2, r.Top + ((r.Bottom - r.Top) - sz.Height) / 2); dialogAlpha.Location = new Point(r.Left + ((r.Right - r.Left) - sz.Width) / 2, r.Top + ((r.Bottom - r.Top) - sz.Height) / 2);
} }
panelAlpha.Color = _color; panelAlpha.Color = _color;
if (!dialogAlpha.IsHandleCreated || !dialogAlpha.Visible) { if (!dialogAlpha.IsHandleCreated || !dialogAlpha.Visible) {
dialogAlpha.Visible = false; // sometimes IsHandleCreated is reset, so Visible must be reset dialogAlpha.Visible = false; // sometimes IsHandleCreated is reset, so Visible must be reset
dialogAlpha.Show(new SimpleWindow { Handle = handle }); dialogAlpha.Show(new SimpleWindow { Handle = handle });
} }
else { else {
if (dialogAlpha.WindowState == FormWindowState.Minimized) if (dialogAlpha.WindowState == FormWindowState.Minimized)
dialogAlpha.WindowState = FormWindowState.Normal; dialogAlpha.WindowState = FormWindowState.Normal;
dialogAlpha.Activate(); dialogAlpha.Activate();
dialogAlpha.BringToFront(); dialogAlpha.BringToFront();
dialogAlpha.Focus(); dialogAlpha.Focus();
} }
} }
void panelAlpha_AlphaChanged(object sender, EventArgs e) { void panelAlpha_AlphaChanged(object sender, EventArgs e) {
SetColorInternal(panelAlpha.Color); SetColorInternal(panelAlpha.Color);
} }
private static String GetWindowText(IntPtr hWnd) { private static String GetWindowText(IntPtr hWnd) {
StringBuilder sb = new StringBuilder(256); StringBuilder sb = new StringBuilder(256);
GetWindowText(hWnd, sb, sb.Capacity); GetWindowText(hWnd, sb, sb.Capacity);
return sb.ToString(); return sb.ToString();
} }
private class SimpleWindow : IWin32Window { private class SimpleWindow : IWin32Window {
public IntPtr Handle { get; set; } public IntPtr Handle { get; set; }
} }
private static Bitmap ConvertToBitmap(IntPtr hWnd) { private static Bitmap ConvertToBitmap(IntPtr hWnd) {
RECT r = new RECT(); RECT r = new RECT();
GetWindowRect(hWnd, ref r); GetWindowRect(hWnd, ref r);
int w = r.Right - r.Left; int w = r.Right - r.Left;
int h = r.Bottom - r.Top; int h = r.Bottom - r.Top;
Graphics g = Graphics.FromHwnd(hWnd); Graphics g = Graphics.FromHwnd(hWnd);
Bitmap bmp = new Bitmap(w, h); Bitmap bmp = new Bitmap(w, h);
Graphics g2 = Graphics.FromImage(bmp); Graphics g2 = Graphics.FromImage(bmp);
IntPtr g2_hdc = g2.GetHdc(); IntPtr g2_hdc = g2.GetHdc();
IntPtr g_hdc = g.GetHdc(); IntPtr g_hdc = g.GetHdc();
BitBlt(g2_hdc, 0, 0, w, h, g_hdc, 0, 0, SRC); BitBlt(g2_hdc, 0, 0, w, h, g_hdc, 0, 0, SRC);
g.ReleaseHdc(g_hdc); g.ReleaseHdc(g_hdc);
g2.ReleaseHdc(g2_hdc); g2.ReleaseHdc(g2_hdc);
g.Dispose(); g.Dispose();
g2.Dispose(); g2.Dispose();
return bmp; return bmp;
} }
private struct IJL { private struct IJL {
public int i; public int i;
public int j; public int j;
public int len; public int len;
public override String ToString() { public override String ToString() {
return i + " " + j + " " + len; return i + " " + j + " " + len;
} }
} }
private static Color? FindSelectedColor(IntPtr hWnd) { private static Color? FindSelectedColor(IntPtr hWnd) {
// This method assumes there is a bounding rectangle around a color swatch. // This method assumes there is a bounding rectangle around a color swatch.
// The rectangle can be any color, but must be a single color. Since // The rectangle can be any color, but must be a single color. Since
// the rectangle surrounds the swatch, it must have a run of pixels that // the rectangle surrounds the swatch, it must have a run of pixels that
// is longer than the run of pixels inside the swatch. Since it is // is longer than the run of pixels inside the swatch. Since it is
// a rectangle, and we are scanning from top to bottom (left to right would also work), // a rectangle, and we are scanning from top to bottom (left to right would also work),
// then there must be exactly two runs that tie for longest. If two runs cannot // then there must be exactly two runs that tie for longest. If two runs cannot
// be found, then there is no bounding rectangle. // be found, then there is no bounding rectangle.
Bitmap bmp = ConvertToBitmap(hWnd); Bitmap bmp = ConvertToBitmap(hWnd);
int w = bmp.Width; int w = bmp.Width;
int h = bmp.Height; int h = bmp.Height;
Color bg = bmp.GetPixel(0, 0); Color bg = bmp.GetPixel(0, 0);
IJL ijl = new IJL(); IJL ijl = new IJL();
IJL ijl0 = new IJL(); IJL ijl0 = new IJL();
IJL ijl1 = new IJL(); IJL ijl1 = new IJL();
int k = 0; int k = 0;
for (int i = 0; i < w; i++) { for (int i = 0; i < w; i++) {
Color lastColor = Color.Empty; Color lastColor = Color.Empty;
for (int j = 0; j <= h; j++) { for (int j = 0; j <= h; j++) {
Color c = (j == h ? Color.Empty : bmp.GetPixel(i, j)); Color c = (j == h ? Color.Empty : bmp.GetPixel(i, j));
if (c == lastColor) { if (c == lastColor) {
ijl.len++; ijl.len++;
} }
else { else {
if (ijl.len < h) { if (ijl.len < h) {
if (ijl.len > 1 && bg != lastColor) { if (ijl.len > 1 && bg != lastColor) {
if (ijl.len > ijl0.len) { if (ijl.len > ijl0.len) {
ijl0 = ijl; ijl0 = ijl;
k = 0; k = 0;
} }
else if (ijl.len == ijl0.len) { else if (ijl.len == ijl0.len) {
ijl1 = ijl; ijl1 = ijl;
k++; k++;
} }
} }
} }
ijl = new IJL(); ijl = new IJL();
ijl.i = i; ijl.i = i;
ijl.j = j; ijl.j = j;
ijl.len = 1; ijl.len = 1;
lastColor = c; lastColor = c;
} }
} }
} }
if (k != 1) { if (k != 1) {
bmp.Dispose(); bmp.Dispose();
return null; return null;
} }
// k == 1 means there are exactly two runs of maximum length // k == 1 means there are exactly two runs of maximum length
int x = ijl0.i + (ijl1.i - ijl0.i) / 2; int x = ijl0.i + (ijl1.i - ijl0.i) / 2;
int y = ijl0.j + ijl0.len / 2; int y = ijl0.j + ijl0.len / 2;
Color c1 = bmp.GetPixel(x, y); Color c1 = bmp.GetPixel(x, y);
bmp.Dispose(); bmp.Dispose();
return c1; return c1;
} }
private Color GetColorInternal() { private Color GetColorInternal() {
int a = (panelAlpha != null ? panelAlpha.Alpha : 255); int a = (panelAlpha != null ? panelAlpha.Alpha : 255);
String _r = GetWindowText(hWndRed); String _r = GetWindowText(hWndRed);
if (_r.Length > 0) { if (_r.Length > 0) {
// Define Custom Colors UI is visible. // Define Custom Colors UI is visible.
int r = int.Parse(_r); int r = int.Parse(_r);
int g = int.Parse(GetWindowText(hWndGreen)); int g = int.Parse(GetWindowText(hWndGreen));
int b = int.Parse(GetWindowText(hWndBlue)); int b = int.Parse(GetWindowText(hWndBlue));
return Color.FromArgb(a, r, g, b); return Color.FromArgb(a, r, g, b);
} }
else { else {
// if the RGB text boxes aren't visible, then resort to trying to find // if the RGB text boxes aren't visible, then resort to trying to find
// the selected color by looking for the solid line rectangle that indicates the // the selected color by looking for the solid line rectangle that indicates the
// currently selected color. // currently selected color.
Color? c = FindSelectedColor(GetDlgItem(handle, 0x02d0)); // Basic colors Color? c = FindSelectedColor(GetDlgItem(handle, 0x02d0)); // Basic colors
if (!c.HasValue) if (!c.HasValue)
c = FindSelectedColor(GetDlgItem(handle, 0x02d1)); // Custom colors c = FindSelectedColor(GetDlgItem(handle, 0x02d1)); // Custom colors
return c.HasValue ? Color.FromArgb(a, c.Value) : Color.FromArgb(a, Color.Black); return c.HasValue ? Color.FromArgb(a, c.Value) : Color.FromArgb(a, Color.Black);
} }
} }
private static bool AreEqual(Color c1, Color c2) { private static bool AreEqual(Color c1, Color c2) {
// Color.Black != (255, 0, 0, 0) // Color.Black != (255, 0, 0, 0)
return c1.A == c2.A && c1.R == c2.R && c1.G == c2.G && c1.B == c2.B; return c1.A == c2.A && c1.R == c2.R && c1.G == c2.G && c1.B == c2.B;
} }
private void SetColorInternal(Color c) { private void SetColorInternal(Color c) {
if (AreEqual(c, _color)) if (AreEqual(c, _color))
return; return;
_color = c; _color = c;
if (ColorChanged != null) if (ColorChanged != null)
ColorChanged(this, EventArgs.Empty); ColorChanged(this, EventArgs.Empty);
} }
public new Color Color { public new Color Color {
get { get {
return _color; return _color;
} }
set { set {
SetColorInternal(value); SetColorInternal(value);
if (panelAlpha != null) if (panelAlpha != null)
panelAlpha.Alpha = value.A; panelAlpha.Alpha = value.A;
base.Color = value; base.Color = value;
} }
} }
protected override IntPtr HookProc(IntPtr hWnd, int msg, IntPtr wparam, IntPtr lparam) { protected override IntPtr HookProc(IntPtr hWnd, int msg, IntPtr wparam, IntPtr lparam) {
//System.Diagnostics.Debug.WriteLine((Opulos.Core.Win32.WM) msg); //System.Diagnostics.Debug.WriteLine((Opulos.Core.Win32.WM) msg);
if (msg == WM_INITDIALOG) { if (msg == WM_INITDIALOG) {
IntPtr hWndOK = GetDlgItem(hWnd, 0x1); // 0x1 == OK button IntPtr hWndOK = GetDlgItem(hWnd, 0x1); // 0x1 == OK button
RECT rOK = new RECT(); RECT rOK = new RECT();
GetWindowRect(hWndOK, ref rOK); GetWindowRect(hWndOK, ref rOK);
IntPtr hWndDefineCustomColors = GetDlgItem(hWnd, 0x02cf); IntPtr hWndDefineCustomColors = GetDlgItem(hWnd, 0x02cf);
RECT rDefineCustomColors = new RECT(); RECT rDefineCustomColors = new RECT();
GetWindowRect(hWndDefineCustomColors, ref rDefineCustomColors); GetWindowRect(hWndDefineCustomColors, ref rDefineCustomColors);
IntPtr hWndCancel = GetDlgItem(hWnd, 0x2); // 0x2 == Cancel button IntPtr hWndCancel = GetDlgItem(hWnd, 0x2); // 0x2 == Cancel button
RECT rCancel = new RECT(); RECT rCancel = new RECT();
GetWindowRect(hWndCancel, ref rCancel); GetWindowRect(hWndCancel, ref rCancel);
// Convert the cancel button's screen coordinates to client coordinates // Convert the cancel button's screen coordinates to client coordinates
POINT pt = new POINT(); POINT pt = new POINT();
pt.X = rCancel.Right; pt.X = rCancel.Right;
pt.Y = rCancel.Top; pt.Y = rCancel.Top;
ScreenToClient(hWnd, ref pt); ScreenToClient(hWnd, ref pt);
IntPtr hWndParent = GetParent(hWndCancel); IntPtr hWndParent = GetParent(hWndCancel);
int w = rCancel.Right - rCancel.Left; int w = rCancel.Right - rCancel.Left;
int h = rCancel.Bottom - rCancel.Top; int h = rCancel.Bottom - rCancel.Top;
int gap = (rCancel.Left - rOK.Right); int gap = (rCancel.Left - rOK.Right);
// the "Define Custom Colors >>" button is slightly less wide than the total width of the // the "Define Custom Colors >>" button is slightly less wide than the total width of the
// OK, Cancel and Alpha buttons. Options: // OK, Cancel and Alpha buttons. Options:
// 1) Increase the width of the define button so it right aligns with the alpha button // 1) Increase the width of the define button so it right aligns with the alpha button
// 2) Make the alpha button smaller in width // 2) Make the alpha button smaller in width
// 3) Decrease the widths of all three button and decrease the gap between them. // 3) Decrease the widths of all three button and decrease the gap between them.
// Option 1 looks better than option 2. Didn't try option 3. // Option 1 looks better than option 2. Didn't try option 3.
if (rCancel.Right + gap + w > rDefineCustomColors.Right) { // screen coordinates if (rCancel.Right + gap + w > rDefineCustomColors.Right) { // screen coordinates
int diff = (rCancel.Right + gap + w) - rDefineCustomColors.Right; int diff = (rCancel.Right + gap + w) - rDefineCustomColors.Right;
// Option 2: //w = w - diff; // Option 2: //w = w - diff;
// Option 1: // Option 1:
int w2 = rDefineCustomColors.Right - rDefineCustomColors.Left; int w2 = rDefineCustomColors.Right - rDefineCustomColors.Left;
int h2 = rDefineCustomColors.Bottom - rDefineCustomColors.Top; int h2 = rDefineCustomColors.Bottom - rDefineCustomColors.Top;
SetWindowPos(hWndDefineCustomColors, IntPtr.Zero, 0, 0, w2 + diff, h2, SWP_NOMOVE | SWP_NOZORDER); SetWindowPos(hWndDefineCustomColors, IntPtr.Zero, 0, 0, w2 + diff, h2, SWP_NOMOVE | SWP_NOZORDER);
} }
var hWndAlpha = btnAlpha.Handle; // creates the handle var hWndAlpha = btnAlpha.Handle; // creates the handle
btnAlpha.Bounds = new Rectangle(pt.X + gap, pt.Y, w, h); btnAlpha.Bounds = new Rectangle(pt.X + gap, pt.Y, w, h);
SetParent(hWndAlpha, hWndParent); SetParent(hWndAlpha, hWndParent);
int hWndFont = SendMessage(hWndCancel, WM_GETFONT, 0, 0); int hWndFont = SendMessage(hWndCancel, WM_GETFONT, 0, 0);
SendMessage(hWndAlpha, WM_SETFONT, hWndFont, 0); SendMessage(hWndAlpha, WM_SETFONT, hWndFont, 0);
// Alternative way to create the Alpha button, but would have to handle the WM_NOTIFY messages for the button click events. // Alternative way to create the Alpha button, but would have to handle the WM_NOTIFY messages for the button click events.
//hWndAlpha = CreateWindowEx(0, "Button", "alphabutton", WS_VISIBLE | WS_CHILD | WS_TABSTOP, pt.X + gap, pt.Y, w, h, hWndParent, 0, 0, 0); //hWndAlpha = CreateWindowEx(0, "Button", "alphabutton", WS_VISIBLE | WS_CHILD | WS_TABSTOP, pt.X + gap, pt.Y, w, h, hWndParent, 0, 0, 0);
//SetWindowText(hWndAlpha, "Alpha"); //SetWindowText(hWndAlpha, "Alpha");
//int hWndFont = SendMessage(hWndCancel, WM_GETFONT, 0, 0); //int hWndFont = SendMessage(hWndCancel, WM_GETFONT, 0, 0);
//SendMessage(hWndAlpha, WM_SETFONT, hWndFont, 0); //SendMessage(hWndAlpha, WM_SETFONT, hWndFont, 0);
// calling ColorDialog.Color does not return the currently selected color until after the OK button // calling ColorDialog.Color does not return the currently selected color until after the OK button
// is clicked. So the values from the textboxes are used. To find the controlIDs, use Spy++. // is clicked. So the values from the textboxes are used. To find the controlIDs, use Spy++.
hWndRed = GetDlgItem(hWnd, 0x02c2); // red text box hWndRed = GetDlgItem(hWnd, 0x02c2); // red text box
hWndGreen = GetDlgItem(hWnd, 0x02c3); hWndGreen = GetDlgItem(hWnd, 0x02c3);
hWndBlue = GetDlgItem(hWnd, 0x02c4); hWndBlue = GetDlgItem(hWnd, 0x02c4);
} }
else if (msg == WM_SHOWWINDOW) { else if (msg == WM_SHOWWINDOW) {
//center the dialog on the parent window: //center the dialog on the parent window:
RECT cr = new RECT(); RECT cr = new RECT();
RECT r0 = new RECT(); RECT r0 = new RECT();
IntPtr parent = GetParent(hWnd); IntPtr parent = GetParent(hWnd);
GetWindowRect(hWnd, ref r0); GetWindowRect(hWnd, ref r0);
GetWindowRect(parent, ref cr); GetWindowRect(parent, ref cr);
handle = hWnd; handle = hWnd;
int x = cr.Left + ((cr.Right - cr.Left) - (r0.Right - r0.Left)) / 2; int x = cr.Left + ((cr.Right - cr.Left) - (r0.Right - r0.Left)) / 2;
int y = cr.Top + ((cr.Bottom - cr.Top) - (r0.Bottom - r0.Top)) / 2; int y = cr.Top + ((cr.Bottom - cr.Top) - (r0.Bottom - r0.Top)) / 2;
SetWindowPos(hWnd, IntPtr.Zero, x, y, 0, 0, SWP_NOZORDER | SWP_NOSIZE); SetWindowPos(hWnd, IntPtr.Zero, x, y, 0, 0, SWP_NOZORDER | SWP_NOSIZE);
} }
else if (msg == ACD_COLORCHANGED) { else if (msg == ACD_COLORCHANGED) {
Color c = GetColorInternal(); Color c = GetColorInternal();
SetColorInternal(c); SetColorInternal(c);
if (panelAlpha != null) if (panelAlpha != null)
panelAlpha.Color = c; panelAlpha.Color = c;
} }
else if (msg == WM_COMMAND || msg == WM_CHAR || msg == WM_LBUTTONDOWN) { else if (msg == WM_COMMAND || msg == WM_CHAR || msg == WM_LBUTTONDOWN) {
PostMessage(hWnd, ACD_COLORCHANGED, 0, 0); PostMessage(hWnd, ACD_COLORCHANGED, 0, 0);
} }
return base.HookProc(hWnd, msg, wparam, lparam); return base.HookProc(hWnd, msg, wparam, lparam);
} }
protected override void Dispose(bool disposing) { protected override void Dispose(bool disposing) {
base.Dispose(disposing); base.Dispose(disposing);
if (disposing) { if (disposing) {
if (btnAlpha != null) if (btnAlpha != null)
btnAlpha.Dispose(); btnAlpha.Dispose();
if (dialogAlpha != null) if (dialogAlpha != null)
dialogAlpha.Dispose(); dialogAlpha.Dispose();
btnAlpha = null; btnAlpha = null;
dialogAlpha = null; dialogAlpha = null;
} }
} }
private class AlphaDialog : Form { private class AlphaDialog : Form {
AlphaColorDialog AOwner; AlphaColorDialog AOwner;
public AlphaDialog(AlphaColorDialog owner) { public AlphaDialog(AlphaColorDialog owner) {
AOwner = owner; AOwner = owner;
ShowIcon = false; ShowIcon = false;
} }
protected override void OnFormClosing(FormClosingEventArgs e) { protected override void OnFormClosing(FormClosingEventArgs e) {
if (e.CloseReason == CloseReason.None || e.CloseReason == CloseReason.UserClosing) { if (e.CloseReason == CloseReason.None || e.CloseReason == CloseReason.UserClosing) {
e.Cancel = true; e.Cancel = true;
Hide(); Hide();
SetForegroundWindow(AOwner.handle); SetForegroundWindow(AOwner.handle);
} }
base.OnFormClosing(e); base.OnFormClosing(e);
} }
} }
private struct RECT { private struct RECT {
public int Left; public int Left;
public int Top; public int Top;
public int Right; public int Right;
public int Bottom; public int Bottom;
} }
private struct POINT { private struct POINT {
public int X; public int X;
public int Y; public int Y;
} }
[DllImport("user32.dll")] [DllImport("user32.dll")]
private static extern bool SetWindowPos(IntPtr hWnd, IntPtr hWndInsertAfter, int X, int Y, int cx, int cy, uint uFlags); private static extern bool SetWindowPos(IntPtr hWnd, IntPtr hWndInsertAfter, int X, int Y, int cx, int cy, uint uFlags);
[DllImport("user32.dll")] [DllImport("user32.dll")]
private static extern bool GetWindowRect(IntPtr hWnd, ref RECT lpRect); private static extern bool GetWindowRect(IntPtr hWnd, ref RECT lpRect);
[DllImport("user32.dll")] [DllImport("user32.dll")]
private static extern IntPtr GetParent(IntPtr hWnd); private static extern IntPtr GetParent(IntPtr hWnd);
[DllImport("user32.dll")] [DllImport("user32.dll")]
private static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam); private static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);
[DllImport("user32.dll")] [DllImport("user32.dll")]
private static extern int PostMessage(IntPtr hWnd, int Msg, int wParam, int lParam); private static extern int PostMessage(IntPtr hWnd, int Msg, int wParam, int lParam);
[DllImport("user32.dll")] [DllImport("user32.dll")]
private static extern IntPtr GetDlgItem(IntPtr hDlg, int nIDDlgItem); private static extern IntPtr GetDlgItem(IntPtr hDlg, int nIDDlgItem);
[DllImport("user32.dll")] [DllImport("user32.dll")]
private static extern bool ScreenToClient(IntPtr hWnd, ref POINT lpPoint); private static extern bool ScreenToClient(IntPtr hWnd, ref POINT lpPoint);
[DllImport("user32.dll")] [DllImport("user32.dll")]
private static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent); private static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);
[DllImport("user32.dll")] [DllImport("user32.dll")]
private static extern bool SetForegroundWindow(IntPtr hWnd); private static extern bool SetForegroundWindow(IntPtr hWnd);
[DllImport("user32.dll", CharSet = CharSet.Auto)] [DllImport("user32.dll", CharSet = CharSet.Auto)]
private static extern int GetWindowText(IntPtr hWnd, StringBuilder lpString, int nMaxCount); private static extern int GetWindowText(IntPtr hWnd, StringBuilder lpString, int nMaxCount);
[DllImport("gdi32.dll", ExactSpelling=true, CharSet=CharSet.Auto, SetLastError=true)] [DllImport("gdi32.dll", ExactSpelling=true, CharSet=CharSet.Auto, SetLastError=true)]
private static extern bool BitBlt(IntPtr pHdc, int iX, int iY, int iWidth, int iHeight, IntPtr pHdcSource, int iXSource, int iYSource, System.Int32 dw); private static extern bool BitBlt(IntPtr pHdc, int iX, int iY, int iWidth, int iHeight, IntPtr pHdcSource, int iXSource, int iYSource, System.Int32 dw);
//[DllImport("user32.dll", CharSet = CharSet.Auto)] //[DllImport("user32.dll", CharSet = CharSet.Auto)]
//private static extern IntPtr CreateWindowEx(int dwExStyle, string lpClassName, string lpWindowName, uint dwStyle, int x, int y, int nWidth, int nHeight, IntPtr hWndParent, int hMenu, int hInstance, int lpParam); //private static extern IntPtr CreateWindowEx(int dwExStyle, string lpClassName, string lpWindowName, uint dwStyle, int x, int y, int nWidth, int nHeight, IntPtr hWndParent, int hMenu, int hInstance, int lpParam);
//[DllImport("user32.dll", CharSet = CharSet.Auto)] //[DllImport("user32.dll", CharSet = CharSet.Auto)]
//private static extern bool SetWindowText(IntPtr hWnd, String lpString); //private static extern bool SetWindowText(IntPtr hWnd, String lpString);
//[DllImport("user32.dll")] //[DllImport("user32.dll")]
//private static extern bool DestroyWindow(IntPtr hwnd); //private static extern bool DestroyWindow(IntPtr hwnd);
private const int ACD_COLORCHANGED = 0x0400; // custom message private const int ACD_COLORCHANGED = 0x0400; // custom message
private const int SRC = 0xCC0020; private const int SRC = 0xCC0020;
private const int SWP_NOSIZE = 0x0001; private const int SWP_NOSIZE = 0x0001;
private const int SWP_NOMOVE = 0x0002; private const int SWP_NOMOVE = 0x0002;
private const int SWP_NOZORDER = 0x0004; private const int SWP_NOZORDER = 0x0004;
private const int WM_INITDIALOG = 0x110; private const int WM_INITDIALOG = 0x110;
private const int WM_SETFONT = 0x0030; private const int WM_SETFONT = 0x0030;
private const int WM_GETFONT = 0x0031; private const int WM_GETFONT = 0x0031;
private const int WM_SHOWWINDOW = 0x18; private const int WM_SHOWWINDOW = 0x18;
//private const int WM_NOTIFY; //private const int WM_NOTIFY;
// messages that indicate a color change: // messages that indicate a color change:
private const int WM_COMMAND = 0x111; private const int WM_COMMAND = 0x111;
private const int WM_CHAR = 0x102; private const int WM_CHAR = 0x102;
private const int WM_LBUTTONDOWN = 0x201; private const int WM_LBUTTONDOWN = 0x201;
//private const uint WS_VISIBLE = 0x10000000; //private const uint WS_VISIBLE = 0x10000000;
//private const uint WS_CHILD = 0x40000000; //private const uint WS_CHILD = 0x40000000;
//private const uint WS_TABSTOP = 0x00010000; //private const uint WS_TABSTOP = 0x00010000;
} }
} }

@ -1,200 +1,200 @@
using System; using System;
using System.Drawing; using System.Drawing;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
using System.Windows.Forms; using System.Windows.Forms;
namespace Opulos.Core.UI { namespace Opulos.Core.UI {
public class AlphaColorPanel : Panel { public class AlphaColorPanel : Panel {
public event EventHandler AlphaChanged; public event EventHandler AlphaChanged;
NumericUpDown nudAlpha = new NumericUpDown { AutoSize = true, Minimum = 0, Maximum = 255, DecimalPlaces = 0, Increment = 1, Value = 255, Anchor = AnchorStyles.Top }; NumericUpDown nudAlpha = new NumericUpDown { AutoSize = true, Minimum = 0, Maximum = 255, DecimalPlaces = 0, Increment = 1, Value = 255, Anchor = AnchorStyles.Top };
TrackBar trackBar = new TrackBar2 { Minimum = 0, Maximum = 255, TickFrequency = 5, TickStyle = TickStyle.None, Orientation = Orientation.Horizontal, Value = 255, Anchor = AnchorStyles.Left | AnchorStyles.Right }; TrackBar trackBar = new TrackBar2 { Minimum = 0, Maximum = 255, TickFrequency = 5, TickStyle = TickStyle.None, Orientation = Orientation.Horizontal, Value = 255, Anchor = AnchorStyles.Left | AnchorStyles.Right };
Color[] colors = new Color[] { Color.White, Color.Black, Color.Green, Color.Blue, Color.Red, Color.Yellow }; Color[] colors = new Color[] { Color.White, Color.Black, Color.Green, Color.Blue, Color.Red, Color.Yellow };
public int Cols { get; set; } public int Cols { get; set; }
public int SwatchSize { get; set; } public int SwatchSize { get; set; }
private Color color = Color.Empty; private Color color = Color.Empty;
public AlphaColorPanel() : base() { public AlphaColorPanel() : base() {
Dock = DockStyle.Fill; Dock = DockStyle.Fill;
AutoSize = true; AutoSize = true;
AutoSizeMode = AutoSizeMode.GrowAndShrink; AutoSizeMode = AutoSizeMode.GrowAndShrink;
DoubleBuffered = true; DoubleBuffered = true;
//TabStop = true; //TabStop = true;
//SetStyle(ControlStyles.Selectable, true); //SetStyle(ControlStyles.Selectable, true);
ResizeRedraw = true; ResizeRedraw = true;
Cols = 3; Cols = 3;
SwatchSize = 100; SwatchSize = 100;
trackBar.ValueChanged += trackBar_ValueChanged; trackBar.ValueChanged += trackBar_ValueChanged;
nudAlpha.ValueChanged += nudAlpha_ValueChanged; nudAlpha.ValueChanged += nudAlpha_ValueChanged;
Alpha = 255; Alpha = 255;
TableLayoutPanel p = new TableLayoutPanel { Dock = DockStyle.Bottom }; TableLayoutPanel p = new TableLayoutPanel { Dock = DockStyle.Bottom };
p.AutoSize = true; p.AutoSize = true;
p.AutoSizeMode = AutoSizeMode.GrowAndShrink; p.AutoSizeMode = AutoSizeMode.GrowAndShrink;
p.Controls.Add(nudAlpha, 0, 0); p.Controls.Add(nudAlpha, 0, 0);
p.Controls.Add(trackBar, 1, 0); p.Controls.Add(trackBar, 1, 0);
p.ColumnStyles.Add(new ColumnStyle(SizeType.AutoSize)); p.ColumnStyles.Add(new ColumnStyle(SizeType.AutoSize));
p.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 1)); p.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 1));
Controls.Add(p); Controls.Add(p);
nudAlpha.KeyDown += nudAlpha_KeyDown; nudAlpha.KeyDown += nudAlpha_KeyDown;
trackBar.KeyDown += trackBar_KeyDown; trackBar.KeyDown += trackBar_KeyDown;
} }
void trackBar_KeyDown(object sender, KeyEventArgs e) { void trackBar_KeyDown(object sender, KeyEventArgs e) {
HandleKeyEvent((Control) sender, e); HandleKeyEvent((Control) sender, e);
} }
void nudAlpha_KeyDown(object sender, KeyEventArgs e) { void nudAlpha_KeyDown(object sender, KeyEventArgs e) {
HandleKeyEvent((Control) sender, e); HandleKeyEvent((Control) sender, e);
} }
private void HandleKeyEvent(Control sender, KeyEventArgs e) { private void HandleKeyEvent(Control sender, KeyEventArgs e) {
if (e.KeyCode == Keys.Enter) { if (e.KeyCode == Keys.Enter) {
e.SuppressKeyPress = true; // stop beep e.SuppressKeyPress = true; // stop beep
e.Handled = true; e.Handled = true;
} }
else if (e.KeyCode == Keys.Escape) { else if (e.KeyCode == Keys.Escape) {
e.SuppressKeyPress = true; e.SuppressKeyPress = true;
e.Handled = true; e.Handled = true;
Form f = FindForm(); Form f = FindForm();
if (f != null) if (f != null)
f.Close(); f.Close();
} }
else if (e.KeyCode == Keys.Tab) { else if (e.KeyCode == Keys.Tab) {
// seems like because the Form is displays with Show(Window) but // seems like because the Form is displays with Show(Window) but
// it is not modal, that stops tabs from working correctly, so // it is not modal, that stops tabs from working correctly, so
// it is handled manually: // it is handled manually:
sender.Parent.SelectNextControl(sender, true, true, true, true); sender.Parent.SelectNextControl(sender, true, true, true, true);
e.SuppressKeyPress = true; e.SuppressKeyPress = true;
e.Handled = true; e.Handled = true;
} }
} }
void nudAlpha_ValueChanged(object sender, EventArgs e) { void nudAlpha_ValueChanged(object sender, EventArgs e) {
trackBar.Value = Convert.ToInt32(nudAlpha.Value); trackBar.Value = Convert.ToInt32(nudAlpha.Value);
} }
public override Size GetPreferredSize(Size proposedSize) { public override Size GetPreferredSize(Size proposedSize) {
int w = SwatchSize * Cols; int w = SwatchSize * Cols;
int h = SwatchSize * (((Colors.Length - 1) / Cols) + 1); int h = SwatchSize * (((Colors.Length - 1) / Cols) + 1);
h += Math.Max(trackBar.Height, nudAlpha.Height); h += Math.Max(trackBar.Height, nudAlpha.Height);
return new Size(w, h); return new Size(w, h);
} }
public Color Color { public Color Color {
get { get {
return color; return color;
} }
set { set {
var c = value; var c = value;
color = Color.FromArgb(Alpha, c.R, c.G, c.B); color = Color.FromArgb(Alpha, c.R, c.G, c.B);
Invalidate(); //Refresh(); Invalidate(); //Refresh();
} }
} }
public int Alpha { public int Alpha {
get { get {
return trackBar.Value; return trackBar.Value;
} }
set { set {
trackBar.Value = value; trackBar.Value = value;
} }
} }
public Color[] Colors { public Color[] Colors {
get { get {
return colors; return colors;
} }
set { set {
colors = value; colors = value;
} }
} }
void trackBar_ValueChanged(object sender, EventArgs e) { void trackBar_ValueChanged(object sender, EventArgs e) {
nudAlpha.Value = trackBar.Value; nudAlpha.Value = trackBar.Value;
Color c = Color; Color c = Color;
Color = Color.FromArgb(trackBar.Value, c.R, c.G, c.B); Color = Color.FromArgb(trackBar.Value, c.R, c.G, c.B);
Refresh(); Refresh();
if (AlphaChanged != null) if (AlphaChanged != null)
AlphaChanged(this, EventArgs.Empty); AlphaChanged(this, EventArgs.Empty);
} }
protected override void OnPaint(PaintEventArgs e) { protected override void OnPaint(PaintEventArgs e) {
base.OnPaint(e); base.OnPaint(e);
int rows = ((Colors.Length - 1) / Cols) + 1; int rows = ((Colors.Length - 1) / Cols) + 1;
int r1 = Width / Cols; int r1 = Width / Cols;
int r2 = Height / Cols; int r2 = Height / Cols;
int r = Math.Min(r1, r2); int r = Math.Min(r1, r2);
if (r < SwatchSize) if (r < SwatchSize)
r = SwatchSize; r = SwatchSize;
int offsetX = (Width - r * Cols) / 2; int offsetX = (Width - r * Cols) / 2;
int offsetY = ((Height - Math.Max(nudAlpha.Height, trackBar.Height)) - r * rows) / 2; int offsetY = ((Height - Math.Max(nudAlpha.Height, trackBar.Height)) - r * rows) / 2;
var g = e.Graphics; var g = e.Graphics;
int x = 0; int x = 0;
int y = 0; int y = 0;
for (int i = 0, j = 1; i < colors.Length; i++, j++) { for (int i = 0, j = 1; i < colors.Length; i++, j++) {
Color c = colors[i]; Color c = colors[i];
using (var b = new SolidBrush(c)) using (var b = new SolidBrush(c))
g.FillRectangle(b, x + offsetX, y + offsetY, r, r); g.FillRectangle(b, x + offsetX, y + offsetY, r, r);
if (j == Cols) { if (j == Cols) {
j = 0; j = 0;
x = 0; x = 0;
y += r; y += r;
} }
else { else {
x += r; x += r;
} }
} }
using (var b = new SolidBrush(Color)) using (var b = new SolidBrush(Color))
g.FillRectangle(b, r / 2 + offsetX, r / 2 + offsetY, 2 * r, r); g.FillRectangle(b, r / 2 + offsetX, r / 2 + offsetY, 2 * r, r);
} }
} }
class TrackBar2 : TrackBar { class TrackBar2 : TrackBar {
public TrackBar2() : base() { public TrackBar2() : base() {
AutoSize = false; AutoSize = false;
RECT r = GetThumbRect(this); RECT r = GetThumbRect(this);
Height = r.Bottom - r.Top; Height = r.Bottom - r.Top;
} }
public override Size GetPreferredSize(Size proposedSize) { public override Size GetPreferredSize(Size proposedSize) {
Size sz = base.GetPreferredSize(proposedSize); Size sz = base.GetPreferredSize(proposedSize);
RECT r = GetThumbRect(this); RECT r = GetThumbRect(this);
sz.Height = r.Bottom - r.Top; sz.Height = r.Bottom - r.Top;
return sz; return sz;
} }
[StructLayout(LayoutKind.Sequential)] [StructLayout(LayoutKind.Sequential)]
private struct RECT { private struct RECT {
public int Left; public int Left;
public int Top; public int Top;
public int Right; public int Right;
public int Bottom; public int Bottom;
} }
[DllImport("user32.dll")] [DllImport("user32.dll")]
private static extern void SendMessage(IntPtr hwnd, uint msg, IntPtr wp, ref RECT lp); private static extern void SendMessage(IntPtr hwnd, uint msg, IntPtr wp, ref RECT lp);
private const uint TBM_GETTHUMBRECT = 0x419; private const uint TBM_GETTHUMBRECT = 0x419;
private static RECT GetThumbRect(TrackBar trackBar) { private static RECT GetThumbRect(TrackBar trackBar) {
RECT rc = new RECT(); RECT rc = new RECT();
SendMessage(trackBar.Handle, TBM_GETTHUMBRECT, IntPtr.Zero, ref rc); SendMessage(trackBar.Handle, TBM_GETTHUMBRECT, IntPtr.Zero, ref rc);
return rc; return rc;
} }
} }
} }

@ -81,7 +81,12 @@
this.velnameCheckBox = new System.Windows.Forms.CheckBox(); this.velnameCheckBox = new System.Windows.Forms.CheckBox();
this.clanTextBox = new System.Windows.Forms.TextBox(); this.clanTextBox = new System.Windows.Forms.TextBox();
this.clanButton = new System.Windows.Forms.Button(); this.clanButton = new System.Windows.Forms.Button();
this.button1 = new System.Windows.Forms.Button(); this.trackBar1 = new System.Windows.Forms.TrackBar();
this.trackBar2 = new System.Windows.Forms.TrackBar();
this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.label7 = new System.Windows.Forms.Label();
this.label8 = new System.Windows.Forms.Label();
((System.ComponentModel.ISupportInitialize)(this.nickBox)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.nickBox)).BeginInit();
this.nickBoxContextMenuStrip.SuspendLayout(); this.nickBoxContextMenuStrip.SuspendLayout();
this.trashControl.SuspendLayout(); this.trashControl.SuspendLayout();
@ -89,6 +94,8 @@
((System.ComponentModel.ISupportInitialize)(this.smoothTrackBar)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.smoothTrackBar)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.fovTrackBar)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.fovTrackBar)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.chokeTrackBar)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.chokeTrackBar)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.trackBar1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.trackBar2)).BeginInit();
this.SuspendLayout(); this.SuspendLayout();
// //
// refreshButton // refreshButton
@ -368,7 +375,7 @@
// trashControl // trashControl
// //
this.trashControl.Controls.Add(this.aimTab); this.trashControl.Controls.Add(this.aimTab);
this.trashControl.Location = new System.Drawing.Point(476, 55); this.trashControl.Location = new System.Drawing.Point(476, 35);
this.trashControl.Name = "trashControl"; this.trashControl.Name = "trashControl";
this.trashControl.SelectedIndex = 0; this.trashControl.SelectedIndex = 0;
this.trashControl.Size = new System.Drawing.Size(145, 371); this.trashControl.Size = new System.Drawing.Size(145, 371);
@ -608,22 +615,76 @@
this.clanButton.UseVisualStyleBackColor = true; this.clanButton.UseVisualStyleBackColor = true;
this.clanButton.Click += new System.EventHandler(this.clanButton_Click); this.clanButton.Click += new System.EventHandler(this.clanButton_Click);
// //
// button1 // trackBar1
// //
this.button1.Location = new System.Drawing.Point(364, 277); this.trackBar1.Location = new System.Drawing.Point(658, 74);
this.button1.Name = "button1"; this.trackBar1.Maximum = 300;
this.button1.Size = new System.Drawing.Size(75, 23); this.trackBar1.Name = "trackBar1";
this.button1.TabIndex = 44; this.trackBar1.Size = new System.Drawing.Size(104, 45);
this.button1.Text = "button1"; this.trackBar1.TabIndex = 44;
this.button1.UseVisualStyleBackColor = true; this.trackBar1.Value = 1;
this.button1.Click += new System.EventHandler(this.button1_Click_1); this.trackBar1.Scroll += new System.EventHandler(this.trackBar1_Scroll);
//
// trackBar2
//
this.trackBar2.Location = new System.Drawing.Point(658, 144);
this.trackBar2.Maximum = 100;
this.trackBar2.Minimum = 1;
this.trackBar2.Name = "trackBar2";
this.trackBar2.Size = new System.Drawing.Size(104, 45);
this.trackBar2.TabIndex = 45;
this.trackBar2.Value = 1;
this.trackBar2.Scroll += new System.EventHandler(this.trackBar2_Scroll);
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(655, 125);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(82, 13);
this.label1.TabIndex = 46;
this.label1.Text = "Distance Factor";
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(655, 55);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(87, 13);
this.label2.TabIndex = 47;
this.label2.Text = "Trajectory Factor";
//
// label7
//
this.label7.AutoSize = true;
this.label7.Location = new System.Drawing.Point(691, 171);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(35, 13);
this.label7.TabIndex = 48;
this.label7.Text = "label7";
this.label7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// label8
//
this.label8.AutoSize = true;
this.label8.Location = new System.Drawing.Point(691, 101);
this.label8.Name = "label8";
this.label8.Size = new System.Drawing.Size(35, 13);
this.label8.TabIndex = 49;
this.label8.Text = "label8";
this.label8.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
// //
// AnimeForm // AnimeForm
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(476, 414); this.ClientSize = new System.Drawing.Size(468, 414);
this.Controls.Add(this.button1); this.Controls.Add(this.label8);
this.Controls.Add(this.label7);
this.Controls.Add(this.label2);
this.Controls.Add(this.label1);
this.Controls.Add(this.trackBar2);
this.Controls.Add(this.trackBar1);
this.Controls.Add(this.clanButton); this.Controls.Add(this.clanButton);
this.Controls.Add(this.clanTextBox); this.Controls.Add(this.clanTextBox);
this.Controls.Add(this.velnameCheckBox); this.Controls.Add(this.velnameCheckBox);
@ -664,6 +725,8 @@
((System.ComponentModel.ISupportInitialize)(this.smoothTrackBar)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.smoothTrackBar)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.fovTrackBar)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.fovTrackBar)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.chokeTrackBar)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.chokeTrackBar)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.trackBar1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.trackBar2)).EndInit();
this.ResumeLayout(false); this.ResumeLayout(false);
this.PerformLayout(); this.PerformLayout();
@ -722,7 +785,12 @@
private System.Windows.Forms.CheckBox velnameCheckBox; private System.Windows.Forms.CheckBox velnameCheckBox;
private System.Windows.Forms.TextBox clanTextBox; private System.Windows.Forms.TextBox clanTextBox;
private System.Windows.Forms.Button clanButton; private System.Windows.Forms.Button clanButton;
private System.Windows.Forms.Button button1; private System.Windows.Forms.TrackBar trackBar1;
private System.Windows.Forms.TrackBar trackBar2;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label7;
private System.Windows.Forms.Label label8;
} }
} }

@ -1,6 +1,7 @@
using AnimeSoftware.Hacks; using AnimeSoftware.Hacks;
using AnimeSoftware.Injections; using AnimeSoftware.Injections;
using AnimeSoftware.Objects; using AnimeSoftware.Objects;
using hazedumper;
using Opulos.Core.UI; using Opulos.Core.UI;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
@ -24,7 +25,11 @@ namespace AnimeSoftware
private void Form1_Load(object sender, EventArgs e) private void Form1_Load(object sender, EventArgs e)
{ {
trackBar1.Value = (int)(BlockBot.trajFactor * 100);
label8.Text = BlockBot.trajFactor.ToString();
trackBar2.Value = (int)(BlockBot.distanceFactor * 10);
label7.Text = BlockBot.distanceFactor.ToString();
while (!Init()) while (!Init())
{ {
@ -595,20 +600,25 @@ namespace AnimeSoftware
ClanTag.Set(clanTextBox.Text); ClanTag.Set(clanTextBox.Text);
} }
private void button1_Click(object sender, EventArgs e)
private void trackBar1_Scroll(object sender, EventArgs e)
{ {
while (true) label8.Text = (trackBar1.Value / 100f).ToString();
{ BlockBot.trajFactor = trackBar1.Value / 100f;
Thread.Sleep(100); Console.WriteLine(BlockBot.trajFactor);
Console.WriteLine(LocalPlayer.InGame);
Console.WriteLine(LocalPlayer.Health);
}
} }
private void button1_Click_1(object sender, EventArgs e) private void trackBar2_Scroll(object sender, EventArgs e)
{
label7.Text = (trackBar2.Value / 10f).ToString();
BlockBot.distanceFactor = trackBar2.Value / 10f;
Console.WriteLine(BlockBot.distanceFactor);
}
private void button1_Click(object sender, EventArgs e)
{ {
Overlay overlay = new Overlay(); LocalPlayer.Use = 6;
overlay.Show();
} }
} }
} }

@ -54,7 +54,7 @@ namespace AnimeSoftware
} }
} }
public static string version = "v2.90"; public static string version = "v2.91";
} }
} }

@ -15,6 +15,10 @@ namespace AnimeSoftware.Hacks
public static bool blocking = false; public static bool blocking = false;
public static bool bb = false; public static bool bb = false;
public static bool hb = false; public static bool hb = false;
public static float distanceFactor = 1.5f;
public static float trajFactor = 0.3f;
public static void Start() public static void Start()
{ {
while (true) while (true)
@ -53,7 +57,7 @@ namespace AnimeSoftware.Hacks
bb = false; bb = false;
} }
hb = true; hb = true;
if (target.Speed == 0 && (LocalPlayer.Position - target.ViewPosition).Length < 10) if (target.Speed == 0 && (LocalPlayer.Position - target.ViewPosition).Length < 10)
{ {
@ -63,6 +67,7 @@ namespace AnimeSoftware.Hacks
LocalPlayer.ViewAngleY = Aimbot.NormalizedAngle(Aimbot.CalcAngle(LocalPlayer.ViewPosition, target.Position)).y; LocalPlayer.ViewAngleY = Aimbot.NormalizedAngle(Aimbot.CalcAngle(LocalPlayer.ViewPosition, target.Position)).y;
LocalPlayer.MoveForward(); LocalPlayer.MoveForward();
} }
@ -93,7 +98,7 @@ namespace AnimeSoftware.Hacks
} }
} }
} }
if (blocking || hb || bb) if (blocking || hb || bb)
{ {

@ -6,6 +6,7 @@ using System.Linq;
using System.Text; using System.Text;
using System.Threading; using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows.Forms;
namespace AnimeSoftware.Hacks namespace AnimeSoftware.Hacks
{ {
@ -26,12 +27,13 @@ namespace AnimeSoftware.Hacks
while ((DllImport.GetAsyncKeyState(Properties.Hotkey.Default.doorspammerKey) & 0x8000) != 0) while ((DllImport.GetAsyncKeyState(Properties.Hotkey.Default.doorspammerKey) & 0x8000) != 0)
{ {
ClientCMD.Exec("+use"); // I did not add this to LocalPlayer to avoid delay. But i dont try, maybe this will not happen lol
Thread.Sleep(15); LocalPlayer.Use = 5;
ClientCMD.Exec("-use"); Thread.Sleep(13);
Thread.Sleep(15); LocalPlayer.Use = 4;
Thread.Sleep(13);
} }
} }
} }
} }

@ -1,17 +1,17 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading; using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
namespace AnimeSoftware namespace AnimeSoftware
{ {
class Hotkey class Hotkey
{ {
public static void Start() public static void Start()
{ {
} }
} }
} }

@ -1,17 +1,17 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
namespace AnimeSoftware namespace AnimeSoftware
{ {
class VectorMath class VectorMath
{ {
public static float Distance(Vector3 src, Vector3 dst) public static float Distance(Vector3 src, Vector3 dst)
{ {
float result = (float)Math.Sqrt((dst.x-src.x) * (dst.x-src.x) + (dst.y-src.y) * (dst.y-src.y) + (dst.z-src.z) * (dst.z-src.z)); float result = (float)Math.Sqrt((dst.x-src.x) * (dst.x-src.x) + (dst.y-src.y) * (dst.y-src.y) + (dst.z-src.z) * (dst.z-src.z));
return result; return result;
} }
} }
} }

@ -136,6 +136,12 @@ namespace AnimeSoftware
return GetStructure<T>(buffer); return GetStructure<T>(buffer);
} }
public static void WriteBytes(Int32 address, byte[] value)
{
UInt32 nBytesRead = UInt32.MinValue;
WriteProcessMemory(pHandle, (IntPtr)address, value, (IntPtr)value.Length, ref nBytesRead);
}
public static void Write<T>(Int32 address, T value) public static void Write<T>(Int32 address, T value)
{ {
int length = Marshal.SizeOf(typeof(T)); int length = Marshal.SizeOf(typeof(T));

@ -117,12 +117,6 @@ namespace AnimeSoftware.Objects
{ {
ClientCMD.Exec("-forward"); ClientCMD.Exec("-forward");
} }
public static void Use()
{
Memory.Write<int>(Memory.Client + ScannedOffsets.dwUse, 5);
Thread.Sleep(20);
Memory.Write<int>(Memory.Client + ScannedOffsets.dwUse, 4);
}
public static void Jump() public static void Jump()
{ {
Memory.Write<int>(Memory.Client + signatures.dwForceJump, 5); Memory.Write<int>(Memory.Client + signatures.dwForceJump, 5);
@ -166,6 +160,13 @@ namespace AnimeSoftware.Objects
return info; return info;
} }
} }
public static int Use
{
set
{
Memory.Write<int>(Memory.Read<int>(Memory.Client + ScannedOffsets.dwUse), value);
}
}
public static bool InGame public static bool InGame
{ {
get get
@ -175,6 +176,7 @@ namespace AnimeSoftware.Objects
} }
} }
public static int CrossHair public static int CrossHair
{ {
get get

@ -1,6 +1,6 @@
using System; using System;
// 2020-04-26 13:02:18.172054700 UTC // 2020-05-12 01:35:30.947642700 UTC
namespace hazedumper namespace hazedumper
{ {
@ -95,7 +95,7 @@ namespace hazedumper
public static class signatures public static class signatures
{ {
public const Int32 anim_overlays = 0x2980; public const Int32 anim_overlays = 0x2980;
public const Int32 clientstate_choked_commands = 0x10680006; public const Int32 clientstate_choked_commands = 0x4D28;
public const Int32 clientstate_delta_ticks = 0x174; public const Int32 clientstate_delta_ticks = 0x174;
public const Int32 clientstate_last_outgoing_command = 0x4D24; public const Int32 clientstate_last_outgoing_command = 0x4D24;
public const Int32 clientstate_net_channel = 0x9C; public const Int32 clientstate_net_channel = 0x9C;
@ -109,47 +109,47 @@ namespace hazedumper
public const Int32 dwClientState_PlayerInfo = 0x52B8; public const Int32 dwClientState_PlayerInfo = 0x52B8;
public const Int32 dwClientState_State = 0x108; public const Int32 dwClientState_State = 0x108;
public const Int32 dwClientState_ViewAngles = 0x4D88; public const Int32 dwClientState_ViewAngles = 0x4D88;
public const Int32 dwEntityList = 0x4D43AB4; public const Int32 dwEntityList = 0x4D43AC4;
public const Int32 dwForceAttack = 0x3175088; public const Int32 dwForceAttack = 0x3175068;
public const Int32 dwForceAttack2 = 0x3175094; public const Int32 dwForceAttack2 = 0x3175074;
public const Int32 dwForceBackward = 0x31750DC; public const Int32 dwForceBackward = 0x31750A4;
public const Int32 dwForceForward = 0x31750B8; public const Int32 dwForceForward = 0x3175080;
public const Int32 dwForceJump = 0x51ED750; public const Int32 dwForceJump = 0x51ED760;
public const Int32 dwForceLeft = 0x31750D0; public const Int32 dwForceLeft = 0x3175098;
public const Int32 dwForceRight = 0x3175058; public const Int32 dwForceRight = 0x31750BC;
public const Int32 dwGameDir = 0x6285F8; public const Int32 dwGameDir = 0x6286F8;
public const Int32 dwGameRulesProxy = 0x5260A2C; public const Int32 dwGameRulesProxy = 0x5260A3C;
public const Int32 dwGetAllClasses = 0xD55F1C; public const Int32 dwGetAllClasses = 0xD55F2C;
public const Int32 dwGlobalVars = 0x589AD0; public const Int32 dwGlobalVars = 0x589AD0;
public const Int32 dwGlowObjectManager = 0x528B880; public const Int32 dwGlowObjectManager = 0x528B8A0;
public const Int32 dwInput = 0x5195060; public const Int32 dwInput = 0x5195070;
public const Int32 dwInterfaceLinkList = 0x8F9AF4; public const Int32 dwInterfaceLinkList = 0x8FA4A4;
public const Int32 dwLocalPlayer = 0xD2FB84; public const Int32 dwLocalPlayer = 0xD2FB94;
public const Int32 dwMouseEnable = 0xD35728; public const Int32 dwMouseEnable = 0xD35738;
public const Int32 dwMouseEnablePtr = 0xD356F8; public const Int32 dwMouseEnablePtr = 0xD35708;
public const Int32 dwPlayerResource = 0x31733FC; public const Int32 dwPlayerResource = 0x317340C;
public const Int32 dwRadarBase = 0x5178824; public const Int32 dwRadarBase = 0x5178834;
public const Int32 dwSensitivity = 0xD355C4; public const Int32 dwSensitivity = 0xD355D4;
public const Int32 dwSensitivityPtr = 0xD35598; public const Int32 dwSensitivityPtr = 0xD355A8;
public const Int32 dwSetClanTag = 0x89E00; public const Int32 dwSetClanTag = 0x89ED0;
public const Int32 dwViewMatrix = 0x4D353F4; public const Int32 dwViewMatrix = 0x4D35404;
public const Int32 dwWeaponTable = 0x5195B24; public const Int32 dwWeaponTable = 0x5195B34;
public const Int32 dwWeaponTableIndex = 0x325C; public const Int32 dwWeaponTableIndex = 0x325C;
public const Int32 dwYawPtr = 0xD35388; public const Int32 dwYawPtr = 0xD35398;
public const Int32 dwZoomSensitivityRatioPtr = 0xD3A5D0; public const Int32 dwZoomSensitivityRatioPtr = 0xD3A5E0;
public const Int32 dwbSendPackets = 0xD3CEA; public const Int32 dwbSendPackets = 0xD3ECA;
public const Int32 dwppDirect3DDevice9 = 0xA7030; public const Int32 dwppDirect3DDevice9 = 0xA7030;
public const Int32 find_hud_element = 0x30F8C270; public const Int32 find_hud_element = 0x3059C3F0;
public const Int32 force_update_spectator_glow = 0x3990D2; public const Int32 force_update_spectator_glow = 0x3991F2;
public const Int32 interface_engine_cvar = 0x3E9EC; public const Int32 interface_engine_cvar = 0x3E9EC;
public const Int32 is_c4_owner = 0x3A5890; public const Int32 is_c4_owner = 0x3A59C0;
public const Int32 m_bDormant = 0xED; public const Int32 m_bDormant = 0xED;
public const Int32 m_flSpawnTime = 0xA360; public const Int32 m_flSpawnTime = 0xA360;
public const Int32 m_pStudioHdr = 0x294C; public const Int32 m_pStudioHdr = 0x294C;
public const Int32 m_pitchClassPtr = 0x5178AC8; public const Int32 m_pitchClassPtr = 0x5178AD8;
public const Int32 m_yawClassPtr = 0xD35388; public const Int32 m_yawClassPtr = 0xD35398;
public const Int32 model_ambient_min = 0x58CDEC; public const Int32 model_ambient_min = 0x58CE44;
public const Int32 set_abs_angles = 0x1CF130; public const Int32 set_abs_angles = 0x1CF1D0;
public const Int32 set_abs_origin = 0x1CEF70; public const Int32 set_abs_origin = 0x1CF010;
} }
} // namespace hazedumper } // namespace hazedumper

@ -16,14 +16,19 @@ namespace AnimeSoftware
public static int dwUse; public static int dwUse;
public static int Console; public static int Console;
public static int cl_sidespeed;
public static int cl_forwardspeed;
public static void Init() public static void Init()
{ {
dwUse = Memory.FindPattern(new byte[] { 0x8B, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x8B, 0xF2, 0x8B, 0xC1, 0x83, 0xCE, 0x20 }, "xx????xxxxxxx", Memory.Client, Memory.ClientSize);
ClientCMD = Memory.FindPattern(new byte[] { 0x55, 0x8B, 0xEC, 0x8B, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x81, 0xF9, 0x00, 0x00, 0x00, 0x00, 0x75, 0x0C, 0xA1, 0x00, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00, 0x00, 0xEB, 0x05, 0x8B, 0x01, 0xFF, 0x50, 0x34, 0x50, 0xA1 }, "xxxxx????xx????xxx????x????xxxxxxxxx", Memory.Engine, Memory.EngineSize); ClientCMD = Memory.FindPattern(new byte[] { 0x55, 0x8B, 0xEC, 0x8B, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x81, 0xF9, 0x00, 0x00, 0x00, 0x00, 0x75, 0x0C, 0xA1, 0x00, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00, 0x00, 0xEB, 0x05, 0x8B, 0x01, 0xFF, 0x50, 0x34, 0x50, 0xA1 }, "xxxxx????xx????xxx????x????xxxxxxxxx", Memory.Engine, Memory.EngineSize);
//UserInfoTable = Memory.FindPattern(new byte[] { 0x8B, 0x89, 0x00, 0x00, 0x00, 0x00, 0x85, 0xC9, 0x0F, 0x84, 0x00, 0x00, 0x00, 0x00, 0x8B, 0x01 }, "xx????xxxx????xx", Memory.Engine, Memory.EngineSize);
//SetConVar = Memory.FindPattern(new byte[] { 0x8D, 0x4C, 0x24, 0x1C, 0xE8, 0x00, 0x00, 0x00, 0x00, 0x56 }, "xxxxx????x", Memory.Engine, Memory.EngineSize); dwUse = Memory.FindPattern(new byte[] { 0x8B, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x8B, 0xF2, 0x8B, 0xC1, 0x83, 0xCE, 0x20 }, "xx????xxxxxxx", Memory.Client, Memory.ClientSize) + 2;
//LvlBypass = Memory.FindPattern(new byte[] { 0x55, 0x8B, 0xEC, 0x8B, 0x55, 0x08, 0x8B, 0xCA, 0x53 }, "xxxxxxxxx", Memory.Client, Memory.ClientSize); //55 8B EC 8B 55 08 8B CA 53
//Console = Memory.FindPattern(new byte[] { 0x58, 0x81, 0x00, 0x56, 0x00, 0x00, 0x00, 0x00 }, "xx?x????", Memory.Client, Memory.ClientSize);
} }
} }
} }

@ -1,22 +1,22 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows.Forms; using System.Windows.Forms;
namespace AnimeSoftware namespace AnimeSoftware
{ {
static class Program static class Program
{ {
/// <summary> /// <summary>
/// Главная точка входа для приложения. /// Главная точка входа для приложения.
/// </summary> /// </summary>
[STAThread] [STAThread]
static void Main() static void Main()
{ {
Application.EnableVisualStyles(); Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false); Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new AnimeForm()); Application.Run(new AnimeForm());
} }
} }
} }

@ -1,36 +1,36 @@
using System.Reflection; using System.Reflection;
using System.Runtime.CompilerServices; using System.Runtime.CompilerServices;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
// Общие сведения об этой сборке предоставляются следующим набором // Общие сведения об этой сборке предоставляются следующим набором
// набора атрибутов. Измените значения этих атрибутов для изменения сведений, // набора атрибутов. Измените значения этих атрибутов для изменения сведений,
// связанных со сборкой. // связанных со сборкой.
[assembly: AssemblyTitle("AnimeSoftware")] [assembly: AssemblyTitle("AnimeSoftware")]
[assembly: AssemblyDescription("")] [assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")] [assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")] [assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("AnimeSoftware")] [assembly: AssemblyProduct("AnimeSoftware")]
[assembly: AssemblyCopyright("Copyright © 2019")] [assembly: AssemblyCopyright("Copyright © 2019")]
[assembly: AssemblyTrademark("")] [assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")] [assembly: AssemblyCulture("")]
// Установка значения False для параметра ComVisible делает типы в этой сборке невидимыми // Установка значения False для параметра ComVisible делает типы в этой сборке невидимыми
// для компонентов COM. Если необходимо обратиться к типу в этой сборке через // для компонентов COM. Если необходимо обратиться к типу в этой сборке через
// COM, следует установить атрибут ComVisible в TRUE для этого типа. // COM, следует установить атрибут ComVisible в TRUE для этого типа.
[assembly: ComVisible(false)] [assembly: ComVisible(false)]
// Следующий GUID служит для идентификации библиотеки типов, если этот проект будет видимым для COM // Следующий GUID служит для идентификации библиотеки типов, если этот проект будет видимым для COM
[assembly: Guid("617f8f5f-8917-4843-aab3-66da09eb7db7")] [assembly: Guid("617f8f5f-8917-4843-aab3-66da09eb7db7")]
// Сведения о версии сборки состоят из указанных ниже четырех значений: // Сведения о версии сборки состоят из указанных ниже четырех значений:
// //
// Основной номер версии // Основной номер версии
// Дополнительный номер версии // Дополнительный номер версии
// Номер сборки // Номер сборки
// Редакция // Редакция
// //
// Можно задать все значения или принять номера сборки и редакции по умолчанию // Можно задать все значения или принять номера сборки и редакции по умолчанию
// используя "*", как показано ниже: // используя "*", как показано ниже:
// [assembly: AssemblyVersion("1.0.*")] // [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")] [assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyFileVersion("1.0.0.0")]

@ -1,62 +1,62 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// Этот код создан программой. // Этот код создан программой.
// Исполняемая версия:4.0.30319.42000 // Исполняемая версия:4.0.30319.42000
// //
// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае // Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
// повторной генерации кода. // повторной генерации кода.
// </auto-generated> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace AnimeSoftware.Properties { namespace AnimeSoftware.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.3.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.3.0.0")]
internal sealed partial class Hotkey : global::System.Configuration.ApplicationSettingsBase { internal sealed partial class Hotkey : global::System.Configuration.ApplicationSettingsBase {
private static Hotkey defaultInstance = ((Hotkey)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Hotkey()))); private static Hotkey defaultInstance = ((Hotkey)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Hotkey())));
public static Hotkey Default { public static Hotkey Default {
get { get {
return defaultInstance; return defaultInstance;
} }
} }
[global::System.Configuration.UserScopedSettingAttribute()] [global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("18")] [global::System.Configuration.DefaultSettingValueAttribute("18")]
public int blockbotKey { public int blockbotKey {
get { get {
return ((int)(this["blockbotKey"])); return ((int)(this["blockbotKey"]));
} }
set { set {
this["blockbotKey"] = value; this["blockbotKey"] = value;
} }
} }
[global::System.Configuration.UserScopedSettingAttribute()] [global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("20")] [global::System.Configuration.DefaultSettingValueAttribute("20")]
public int doorspammerKey { public int doorspammerKey {
get { get {
return ((int)(this["doorspammerKey"])); return ((int)(this["doorspammerKey"]));
} }
set { set {
this["doorspammerKey"] = value; this["doorspammerKey"] = value;
} }
} }
[global::System.Configuration.UserScopedSettingAttribute()] [global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("90")] [global::System.Configuration.DefaultSettingValueAttribute("90")]
public int runboostbotKey { public int runboostbotKey {
get { get {
return ((int)(this["runboostbotKey"])); return ((int)(this["runboostbotKey"]));
} }
set { set {
this["runboostbotKey"] = value; this["runboostbotKey"] = value;
} }
} }
} }
} }

@ -1,15 +1,15 @@
<?xml version='1.0' encoding='utf-8'?> <?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="AnimeSoftware.Properties" GeneratedClassName="Hotkey"> <SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="AnimeSoftware.Properties" GeneratedClassName="Hotkey">
<Profiles /> <Profiles />
<Settings> <Settings>
<Setting Name="blockbotKey" Type="System.Int32" Scope="User"> <Setting Name="blockbotKey" Type="System.Int32" Scope="User">
<Value Profile="(Default)">18</Value> <Value Profile="(Default)">18</Value>
</Setting> </Setting>
<Setting Name="doorspammerKey" Type="System.Int32" Scope="User"> <Setting Name="doorspammerKey" Type="System.Int32" Scope="User">
<Value Profile="(Default)">20</Value> <Value Profile="(Default)">20</Value>
</Setting> </Setting>
<Setting Name="runboostbotKey" Type="System.Int32" Scope="User"> <Setting Name="runboostbotKey" Type="System.Int32" Scope="User">
<Value Profile="(Default)">90</Value> <Value Profile="(Default)">90</Value>
</Setting> </Setting>
</Settings> </Settings>
</SettingsFile> </SettingsFile>

@ -1,71 +1,71 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// Этот код создан программным средством. // Этот код создан программным средством.
// Версия среды выполнения: 4.0.30319.42000 // Версия среды выполнения: 4.0.30319.42000
// //
// Изменения в этом файле могут привести к неправильному поведению и будут утрачены, если // Изменения в этом файле могут привести к неправильному поведению и будут утрачены, если
// код создан повторно. // код создан повторно.
// </auto-generated> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace AnimeSoftware.Properties namespace AnimeSoftware.Properties
{ {
/// <summary> /// <summary>
/// Класс ресурсов со строгим типом для поиска локализованных строк и пр. /// Класс ресурсов со строгим типом для поиска локализованных строк и пр.
/// </summary> /// </summary>
// Этот класс был автоматически создан при помощи StronglyTypedResourceBuilder // Этот класс был автоматически создан при помощи StronglyTypedResourceBuilder
// класс с помощью таких средств, как ResGen или Visual Studio. // класс с помощью таких средств, как ResGen или Visual Studio.
// Для добавления или удаления члена измените файл .ResX, а затем перезапустите ResGen // Для добавления или удаления члена измените файл .ResX, а затем перезапустите ResGen
// с параметром /str или заново постройте свой VS-проект. // с параметром /str или заново постройте свой VS-проект.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources internal class Resources
{ {
private static global::System.Resources.ResourceManager resourceMan; private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture; private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources() internal Resources()
{ {
} }
/// <summary> /// <summary>
/// Возврат кэшированного экземпляра ResourceManager, используемого этим классом. /// Возврат кэшированного экземпляра ResourceManager, используемого этим классом.
/// </summary> /// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager internal static global::System.Resources.ResourceManager ResourceManager
{ {
get get
{ {
if ((resourceMan == null)) if ((resourceMan == null))
{ {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("AnimeSoftware.Properties.Resources", typeof(Resources).Assembly); global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("AnimeSoftware.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp; resourceMan = temp;
} }
return resourceMan; return resourceMan;
} }
} }
/// <summary> /// <summary>
/// Переопределяет свойство CurrentUICulture текущего потока для всех /// Переопределяет свойство CurrentUICulture текущего потока для всех
/// подстановки ресурсов с помощью этого класса ресурсов со строгим типом. /// подстановки ресурсов с помощью этого класса ресурсов со строгим типом.
/// </summary> /// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture internal static global::System.Globalization.CultureInfo Culture
{ {
get get
{ {
return resourceCulture; return resourceCulture;
} }
set set
{ {
resourceCulture = value; resourceCulture = value;
} }
} }
} }
} }

@ -1,117 +1,117 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<root> <root>
<!-- <!--
Microsoft ResX Schema Microsoft ResX Schema
Version 2.0 Version 2.0
The primary goals of this format is to allow a simple XML format The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes various data types are done through the TypeConverter classes
associated with the data types. associated with the data types.
Example: Example:
... ado.net/XML headers & schema ... ... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader> <resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader> <resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value> <value>[base64 mime encoded serialized .NET Framework object]</value>
</data> </data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment> <comment>This is a comment</comment>
</data> </data>
There are any number of "resheader" rows that contain simple There are any number of "resheader" rows that contain simple
name/value pairs. name/value pairs.
Each data row contains a name, and value. The row also contains a Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture. text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the Classes that don't support this are serialized and stored with the
mimetype set. mimetype set.
The mimetype is used for serialized objects, and tells the The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly: extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below. read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64 mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter : System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding. : and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64 mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding. : and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64 mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter : using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding. : and then encoded with base64 encoding.
--> -->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true"> <xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType> <xsd:complexType>
<xsd:choice maxOccurs="unbounded"> <xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata"> <xsd:element name="metadata">
<xsd:complexType> <xsd:complexType>
<xsd:sequence> <xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" /> <xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence> </xsd:sequence>
<xsd:attribute name="name" type="xsd:string" /> <xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" /> <xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" /> <xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="assembly"> <xsd:element name="assembly">
<xsd:complexType> <xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" /> <xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" /> <xsd:attribute name="name" type="xsd:string" />
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="data"> <xsd:element name="data">
<xsd:complexType> <xsd:complexType>
<xsd:sequence> <xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence> </xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" /> <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="resheader"> <xsd:element name="resheader">
<xsd:complexType> <xsd:complexType>
<xsd:sequence> <xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence> </xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" /> <xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
</xsd:choice> </xsd:choice>
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
</xsd:schema> </xsd:schema>
<resheader name="resmimetype"> <resheader name="resmimetype">
<value>text/microsoft-resx</value> <value>text/microsoft-resx</value>
</resheader> </resheader>
<resheader name="version"> <resheader name="version">
<value>2.0</value> <value>2.0</value>
</resheader> </resheader>
<resheader name="reader"> <resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
</root> </root>
Loading…
Cancel
Save