-
Постов
220 -
Зарегистрирован
-
Посещение
Тип контента
Профили
Форумы
Загрузки
Блоги
Сообщения, опубликованные ШАРИК
-
-
1 час назад, MasterGH сказал:
Давай переформулируем вопрос.
Кто хочет принять участие в решении вопроса?
Кто хочет узнать как плавно перемещать объекты за курсом мышки?
Кто хотел бы увидеть решение?
да тут хоть обпереформулируйся !11
-
Шо , никто не шарит ?
-
34 минуты назад, MasterGH сказал:
На плавность влияет расчет дельты между кадрами рисования.
Позиция круга = (Позиция круга, Позиция курсора, Time.dtltaTime * speed)
gameObject.position = MoveTowards(gameObject.position, mouse.Position, Time.dtltaTime * speed)
public static Vector2 MoveTowards(Vector2 current, Vector2 target, float maxDistanceDelta) { Vector2 a = target - current; float magnitude = a.magnitude; Vector2 result; if (magnitude <= maxDistanceDelta || magnitude == 0f) { result = target; } else { result = current + a / magnitude * maxDistanceDelta; } return result; } public float magnitude { get { return Mathf.Sqrt(this.x * this.x + this.y * this.y); } }
Спасибо )Пришлось чуточку переписать . Но почему-то объект просто телепортируется , хотя я sleep для теста поставил
Так вот переделал:
Скрытый текстfloat magnitudee(int x, int y) { return sqrt(x * x + y * y); } int MoveTowards(int current, int target, float maxDistanceDelta) { int a = target - current; int magnitude = magnitudee(current, target); int result; if (magnitude <= maxDistanceDelta || magnitude == 0) { result = target; } else { result = current + a / magnitude * maxDistanceDelta; } return result; }
Так вызываю:
Скрытый текстx = MoveTowards(foo.x - (size / 2), x,1); y = MoveTowards(foo.y - (size / 2), y ,1);
-
Здравствуйте.Как можно сделать плавное перемещение объекта за курсором в окне? То есть двигать по чуть-чуть . по единице.
Скрытый текст -
24 минуты назад, what228 сказал:
Полное название игры напиши и если это пиратка то имя репакера и версию.
А так тебе могут лишь сказать ищи изменилось\не изменилось или уменьшилось\не изменилось.Игра wormix в соц сетях
-
7 минут назад, partoftheworlD сказал:
Так что не спеши делать все и сразу, а выполняй поставленную тобой цель по шагам и все получится.
Всегда так делаю )
-
6 минут назад, XenonH сказал:
Как вручную найти указатели? Ибо вообще не шарю
Рано взялся тогда ...Пройди обучение в CE
-
19 минуту назад, 2zolo2 сказал:
Так через CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, TH32CS_SNAPMODULE(MODULEENTRY32>szModule, MODULEENTRY32>th32ProcessID)) перебираешь все процессы и находишь dll webplayer_win, и выводишь их, если их несколько.
Не .Всё равно не то...Тут наверно надо перехватить функцию девайса , в которой есть hwnd .То есть present .
Перебор окон тут не зарешает крч. -
Только что, 2zolo2 сказал:
ШАРИК, а браузерка использует флеш,юнити или джава?
Unity
-
36 минуты назад, keng сказал:
ЩИТО?
Игра браузерная .Браузеров много .Да и ведь у одного потока может быть несколько окон или нет? и - уберите ПАЖАЛУСТА
-
Как жаль , что никто меня даже не хочет понимать ...dll может быть загружена в разные процессы .У которых окна с разными названиями и количество их может быть больше 10...Будь всё так просто ,как вы думаете, стал бы я спрашивать ?
-
Постригся , но фото не скину , ибо у анонимусов не принято фотки кидать
-
15 минуту назад, partoftheworlD сказал:
Упакуй это на нажатие клавиши, после инжекта перейдешь к игре, нажмешь кнопку и получишь hwnd который тебе нужен. Да-да костыли, но первое что пришло в голову. Можешь еще перебрать окна через EnumWindows.
Проще уже будет найти D3DPRESENT_PARAMETERS в памяти процесса .Он где-то рядом с LPDIRECT3DDEVICE9(по моему мнению...). Найдя его можно получить hwnd окна с девайсом ...
-
Только что, partoftheworlD сказал:
HWND hWnd = GetForegroundWindow();
Но смысл ?Ведь когда я инжектирую dll в процесс , то главным окном является окно инжектора
-
17 час назад, keng сказал:
Еще можно психануть и в dll unload код закрытия формочки и потока поместить.
Ладно .С этим потом .Как мне в dll впихнуть ImGui_ImplDX9_Init(hwnd, g_pd3dDevice); Проблема в том , что я не знаю hwnd окна процесса, в который будет загружена dll.
Как можно получить этот Hwnd ? -
В 31.03.2017в21:09, Taiwan сказал:
Form->Close(); или в крайнем случае Application->Terminate();
Как закрыть я знаю Как сделать закрытие формы вместе с процессом .Только без костылей типа : мониторинг процесса ...
-
4 минуты назад, Taiwan сказал:
Конечно не закроется, если нет никаких условий Она сама по себе не закроется - так как форма создается в отдельном потоке. юзай - "Close()" или "Terminate()" или отправляй сообщение форме о её закрытии. тут вариантов хоть одним местом жуй.
ето и ежу понятно .Как сделать так , чтобы окно принадлежало самому процессу и закрывалось вместе с ним?
-
38 минуты назад, 2zolo2 сказал:
ШАРИК, а ты закрываешь окно, когда закрываешь dll?
DLL_PROCESS_DETACH , DLL_THREAD_DETACH
https://msdn.microsoft.com/en-us/library/windows/desktop/ms682583(v=vs.85).aspx
я закрываю процесс с dll , которая создаёт окно .Но после этого созданное окно остаётся .
-
-
Здравствуйте .Я решил сделать такую штуку , типа dll с формой.Когда загружаешь dll в процесс , то создаётся форма , которую я заранее слепил в конструкторе форм.
Это я сделал , но когда процесс с dll завершён , то форма всё равно остаётся (((
Как сделать так , чтобы форма закрывалась тогда , когда процесс завершён?
Код:Скрытый текстint WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved) { try { Application->Initialize(); Application->MainFormOnTaskBar = true; Application->CreateForm(__classid(TForm1), &Form1); Application->Run(); } catch (Exception &exception) { Application->ShowException(&exception); } catch (...) { try { throw Exception(""); } catch (Exception &exception) { Application->ShowException(&exception); } } return 0; }
Скрытый текст -
5 минут назад, lizzmack сказал:
Или я под вечер не соображаю, адрес шарика, и адреса с UC - тоже работают, но программа все еще ни в какую. не туда может тыкаю этими адресами?
адрес тыкаю вprivate void SetupEnemyVars()
{
PlayerData En1 = new PlayerData();
En1.baseAddress = MyProcess[0].MainModule.BaseAddress.ToInt32() + 0x00110D90;
En1.multiLevel = enOneMultiLvl;
En1.offsets = MainPlayer.offsets;
EnemyAddresses.Add(En1);}
и что-то мне подсказывает, что я делаю не так.
скорее всего цепочку указателей читаешь неправильно .Для начала просто выведи в консоль координаты игроков.
-
Скрытый текст
hp
adress = 0050F4F4
offset = F8coords
z = 0050F4F4 offset = 3C
x = 0050F4F4 offset = 34
y = 0050F4F4 offset = 38player
hpbase = "ac_client.exe"+00110D90
OFFSET1 = F8
OFFSET2 = 0coords
z = 00510D90 offset = 38 -> 0
x = 00510D90 offset = 34 -> 0
y = 00510D90 offset = 3C -> 0кол-во игроков -> 0050F500
оффсет между игроками = 4оффсеты , которые юзал я .Батюшки !!!
У тебяж си шурп . плин... -
1 час назад, partoftheworlD сказал:
В PS1?
упс. не заметил
-
надо dll'ку написать и внедрить в процесс игры с помощью инжектора
[C++] Динамическая расстановка приоритетов выполнения кода
in Низкоуровневое программирование
Опубликовано
Там ещё вроде рефрактор на поток байтов нужен ?