 |
|

24.12.2018, 18:41
|
|
Постоянный
Регистрация: 17.02.2014
Сообщений: 611
С нами:
6438231
Репутация:
133
|
|
Сообщение от DARKed
может кто объяснить как работать с checkbox`ами? хочу сделать примерно так: чекбокс он то "моя фнука", если чекбокс офф то "моя функа офф". и ещё, как выровнять этот текст возле чекбокса? p.s checkbox от пасты индиго
C++:
Код:
#include "cInclude.h"
bool
Create
=
false
;
bool
Active
=
false
;
HRESULT APIENTRY
myPresent
(
IDirect3DDevice9
*
m_pDevice
,
CONST RECT
*
pSourceRect
,
CONST RECT
*
pDestRect
,
HWND hDestWindowOverride
,
CONST RGNDATA
*
pDirtyRegion
)
{
if
(
Create
==
false
)
{
ImGui_Init
(
hWnd
,
m_pDevice
)
;
Create
=
true
;
}
else
{
ImGui_NewFrame
(
)
;
if
(
bShowWindow
)
{
DWORD dwFlag
=
ImGuiWindowFlags_NoCollapse
|
ImGuiWindowFlags_ShowBorders
|
ImGuiWindowFlags_NoSavedSettings
;
ImGui
::
Begin
(
"legitXXX"
,
&
bShowWindow
,
ImVec2
(
243
,
200
)
,
1.0f
,
dwFlag
)
;
{
ImGui
::
Button
(
"A"
,
ImVec2
(
100.0f
,
30.0f
)
)
;
ImGui
::
SameLine
(
)
;
if
(
ImGui
::
Button
(
"D"
,
ImVec2
(
100.0f
,
30.0f
)
)
)
Active
^=
true
;
if
(
Active
)
{
static
bool
check
=
true
;
if
(
ImGui
::
Checkbox
(
"A"
,
&
check
)
)
{
static
bool
check
=
false
;
}
}
}
ImGui
::
End
(
)
;
}
ImGui
::
Render
(
)
;
}
return
oPresent
->
GetTrampoline
(
)
(
m_pDevice
,
pSourceRect
,
pDestRect
,
hDestWindowOverride
,
pDirtyRegion
)
;
}
HRESULT APIENTRY
myReset
(
IDirect3DDevice9
*
m_pDevice
,
D3DPRESENT_PARAMETERS
*
pPresentationParameters
)
{
if
(
!
Create
)
return
m_pDevice
->
Reset
(
pPresentationParameters
)
;
ImGui_InvalidateDeviceObjects
(
)
;
auto
result
=
oReset
->
GetTrampoline
(
)
(
m_pDevice
,
pPresentationParameters
)
;
ImGui_CreateDeviceObjects
(
)
;
return
result
;
}
bool
Init
(
)
{
bool
bResult
=
false
;
HMODULE hD3d9
=
NULL
;
if
(
hD3d9
=
GetModuleHandleA
(
"d3d9.dll"
)
)
{
using
oDirect3DCreate9Ex
=
HRESULT
(
WINAPI
*
)
(
UINT
,
IDirect3D9Ex
*
*
)
;
oDirect3DCreate9Ex pDirect3DCreate9Ex
=
(
oDirect3DCreate9Ex
)
GetProcAddress
(
hD3d9
,
"Direct3DCreate9Ex"
)
;
if
(
pDirect3DCreate9Ex
)
{
HRESULT hr
=
D3D_OK
;
LPDIRECT3D9EX d3d9ex
=
nullptr
;
if
(
SUCCEEDED
(
hr
=
pDirect3DCreate9Ex
(
D3D_SDK_VERSION
,
&
d3d9ex
)
)
)
{
D3DPRESENT_PARAMETERS dp
;
ZeroMemory
(
&
dp
,
sizeof
(
dp
)
)
;
dp
.
Windowed
=
1
;
dp
.
SwapEffect
=
D3DSWAPEFFECT_FLIP
;
dp
.
BackBufferFormat
=
D3DFMT_A8R8G8B8
;
dp
.
BackBufferCount
=
1
;
dp
.
PresentationInterval
=
D3DPRESENT_INTERVAL_IMMEDIATE
;
IDirect3DDevice9Ex
*
mDevice
=
nullptr
;
if
(
SUCCEEDED
(
hr
=
d3d9ex
->
CreateDeviceEx
(
D3DADAPTER_DEFAULT
,
D3DDEVTYPE_NULLREF
,
NULL
,
D3DCREATE_HARDWARE_VERTEXPROCESSING
,
&
dp
,
NULL
,
&
mDevice
)
)
)
{
bResult
=
true
;
PVOID
*
vtbl
=
*
reinterpret_cast
(
mDevice
)
;
auto
&
pContext
=
cContext
::
GetInstance
(
)
;
pContext
.
ApplyDetour
(
static_cast
(
vtbl
[
17
]
)
,
reinterpret_cast
(
myPresent
)
,
&
oPresent
)
;
pContext
.
ApplyDetour
(
static_cast
(
vtbl
[
16
]
)
,
reinterpret_cast
(
myReset
)
,
&
oReset
)
;
mDevice
->
Release
(
)
;
}
d3d9ex
->
Release
(
)
;
}
}
}
return
bResult
;
}
unsigned
WINAPI
GUIDX
(
LPVOID lpParam
)
{
hWnd
=
FindWindowA
(
NULL
,
"D3D9 Test"
)
;
if
(
hWnd
)
m_pWindowProc
=
(
WNDPROC
)
SetWindowLongPtr
(
hWnd
,
GWL_WNDPROC
,
(
LONG_PTR
)
myWndProc
)
;
while
(
!
Init
(
)
)
Sleep
(
200
)
;
return
0L
;
}
BOOL APIENTRY
DllMain
(
_In_ HINSTANCE hinstDLL
,
_In_ DWORD fdwReason
,
_In_ LPVOID lpvReserved
)
{
DisableThreadLibraryCalls
(
hinstDLL
)
;
switch
(
fdwReason
)
{
case
DLL_PROCESS_ATTACH
:
{
_beginthreadex
(
NULL
,
NULL
,
GUIDX
,
NULL
,
NULL
,
NULL
)
;
}
break
;
case
DLL_THREAD_ATTACH
:
break
;
case
DLL_THREAD_DETACH
:
break
;
case
DLL_PROCESS_DETACH
:
SetWindowLongPtr
(
hWnd
,
GWL_WNDPROC
,
(
LONG_PTR
)
m_pWindowProc
)
;
break
;
}
return
TRUE
;
}
Основы языка учи.
Чекбокс спрашивай как выравнять там где взял.
|
|
|

26.12.2018, 14:16
|
|
Участник форума
Регистрация: 04.04.2017
Сообщений: 263
С нами:
4793630
Репутация:
133
|
|
Объясните простым языком что такое явное преобразование и для чего оно используется?
|
|
|

26.12.2018, 14:45
|
|
Постоянный
Регистрация: 14.11.2017
Сообщений: 319
С нами:
4472205
Репутация:
163
|
|
Сообщение от Bize
Объясните простым языком что такое явное преобразование и для чего оно используется?
C++:
Код:
int
i
=
2
;
float
j
=
3.3f
;
i
=
(
int
)
j
;
// явное
i
=
j
// неявное
|
|
|

26.12.2018, 18:08
|
|
Участник форума
Регистрация: 17.12.2017
Сообщений: 110
С нами:
4423953
Репутация:
68
|
|
как хукнуть клавишу на клавиатуре которую я отправляю серверу?
|
|
|

26.12.2018, 18:11
|
|
Познающий
Регистрация: 03.07.2018
Сообщений: 39
С нами:
4139464
Репутация:
8
|
|
Как телепортнуться , но при этом не мелькать.Как на видео или подобное.(c++ api)
|
|
|

26.12.2018, 18:31
|
|
Познавший АНТИЧАТ
Регистрация: 09.08.2015
Сообщений: 1,213
С нами:
5663255
Репутация:
183
|
|
[QUOTE="cakebou"]
Почему в cmd выводит только
|
|
|

28.12.2018, 15:15
|
|
Познающий
Регистрация: 26.11.2017
Сообщений: 45
С нами:
4453790
Репутация:
8
|
|
Есть где-нибудь уроки по d3d(d3d9/x i td), хотелось бы почитать; а то во-всяких видео-уроках недоскажут, пропустят через один шаг
zaranee spasibo 
|
|
|

28.12.2018, 19:25
|
|
Познающий
Регистрация: 26.11.2017
Сообщений: 45
С нами:
4453790
Репутация:
8
|
|
Сообщение от cakebou
Как это фиксануть?
upload_2018-12-28_19-40-40.pngRanto · 28 Дек 2018 в 18:25' data-fancybox="lb-post-283922" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/23129/" style="cursor: pointer;" title="upload_2018-12-28_19-40-40.png">
попробуй в этом окне вставить путь к своему проекту (типа где находятся твои файлы imgui)
upload_2018-12-28_20-24-47.pngRanto · 28 Дек 2018 в 18:25' data-fancybox="lb-post-283922" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/23131/" style="cursor: pointer;" title="upload_2018-12-28_20-24-47.png">
как справиться с этим?
|
|
|

28.12.2018, 20:56
|
|
Постоянный
Регистрация: 14.11.2017
Сообщений: 319
С нами:
4472205
Репутация:
163
|
|
Сообщение от Ranto
как справиться с этим?
Код:
Код:
reinterpret_cast(addr)
reinterpret_cast(addr)
|
|
|

28.12.2018, 22:56
|
|
Участник форума
Регистрация: 04.04.2017
Сообщений: 263
С нами:
4793630
Репутация:
133
|
|
upload_2018-12-28_19-52-15.pngCake_ · 28 Дек 2018 в 21:56' data-fancybox="lb-post-284009" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/23143/" style="cursor: pointer;" title="upload_2018-12-28_19-52-15.png">
В чём ошибка?
C++:
Код:
#define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS 1
#include
#include
#include
#include
#include "SAMPFUNCS_API.h"
#include "game_api\game_api.h"
#include "imgui.h"
#include "imgui_impl_dx9.h"
#include "imgui_impl_win32.h"
#include
#define DIRECTINPUT_VERSION 0x0800
#include
#include
extern
LRESULT
ImGui_ImplWin32_WndProcHandler
(
HWND hWnd
,
UINT msg
,
WPARAM wParam
,
LPARAM lParam
)
;
SAMPFUNCS
*
SF
=
new
SAMPFUNCS
(
)
;
bool
CALLBACK
Present
(
CONST RECT
*
pSourceRect
,
CONST RECT
*
pDestRect
,
HWND hDestWindowOverride
,
CONST RGNDATA
*
pDirtyRegion
)
{
bool
activew
=
true
;
if
(
SUCCEEDED
(
SF
->
getRender
(
)
->
BeginRender
(
)
)
)
{
if
(
activew
)
{
ImGui_ImplDX9_NewFrame
(
)
;
ImGui_ImplWin32_NewFrame
(
)
;
ImGui
::
NewFrame
(
)
;
ImGui
::
Begin
(
"ImGui меню"
,
&
activew
,
ImVec2
(
305
,
160
)
,
0.8f
,
ImGuiWindowFlags_NoCollapse
|
ImGuiWindowFlags_NoSavedSettings
|
ImGuiWindowFlags_NoResize
)
;
{
ImGui
::
Checkbox
(
"Aimbot"
,
&
bAimbot
)
;
ImGui
::
Checkbox
(
"WH"
,
&
bAimbot
)
;
ImGui
::
Checkbox
(
"SpeedHack"
,
&
bAimbot
)
;
ImGui
::
Checkbox
(
"Что-то крутое"
,
&
bAimbot
)
;
}
ImGui
::
End
(
)
;
}
ImGui
::
EndFrame
(
)
;
ImGui
::
Render
(
)
;
ImGui_ImplDX9_RenderDrawData
(
ImGui
::
GetDrawData
(
)
)
;
SF
->
getRender
(
)
->
EndRender
(
)
;
}
return
true
;
}
HRESULT CALLBACK
Reset
(
D3DPRESENT_PARAMETERS
*
pPresentationParameters
)
{
return
true
;
}
bool
CALLBACK
WndProcHandler
(
HWND hwd
,
UINT msg
,
WPARAM wParam
,
LPARAM lParam
)
{
ImGui_ImplWin32_WndProcHandler
(
hwd
,
msg
,
wParam
,
lParam
)
;
return
true
;
}
void
CALLBACK
PluginFree
(
)
{
ImGui_ImplDX9_Shutdown
(
)
;
ImGui_ImplWin32_Shutdown
(
)
;
ImGui
::
DestroyContext
(
)
;
}
void
CALLBACK
mainloop
(
)
{
static
bool
init
=
false
;
if
(
!
init
)
{
if
(
GAME
==
nullptr
)
return
;
if
(
GAME
->
GetSystemState
(
)
!=
eSystemState
::
GS_PLAYING_GAME
)
return
;
if
(
!
SF
->
getSAMP
(
)
->
IsInitialized
(
)
)
return
;
ImGui
::
CreateContext
(
)
;
ImGuiIO
&
io
=
ImGui
::
GetIO
(
)
;
(
void
)
io
;
ImGui_ImplWin32_Init
(
GetActiveWindow
(
)
)
;
ImGui_ImplDX9_Init
(
SF
->
getRender
(
)
->
getD3DDevice
(
)
)
;
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
D3DCOLOR_XRGB
(
0
,
0xAA
,
0
)
,
"SAMPFUNCS Plugin loaded."
)
;
SF
->
getRender
(
)
->
registerD3DCallback
(
eDirect3DDeviceMethods
::
D3DMETHOD_PRESENT
,
Present
)
;
SF
->
getRender
(
)
->
registerD3DCallback
(
eDirect3DDeviceMethods
::
D3DMETHOD_RESET
,
Reset
)
;
SF
->
getGame
(
)
->
registerWndProcCallback
(
SFGame
::
MEDIUM_CB_PRIORITY
,
WndProcHandler
)
;
SF
->
getGame
(
)
->
registerGameDestructorCallback
(
PluginFree
)
;
init
=
true
;
}
}
BOOL APIENTRY
DllMain
(
HMODULE hModule
,
DWORD dwReasonForCall
,
LPVOID lpReserved
)
{
switch
(
dwReasonForCall
)
{
case
DLL_PROCESS_ATTACH
:
SF
->
initPlugin
(
mainloop
,
hModule
)
;
break
;
case
DLL_THREAD_ATTACH
:
case
DLL_THREAD_DETACH
:
case
DLL_PROCESS_DETACH
:
break
;
}
return
TRUE
;
}
LRESULT
ImGui_ImplWin32_WndProcHandler
(
HWND hWnd
,
UINT msg
,
WPARAM wParam
,
LPARAM lParam
)
{
return
LRESULT
(
)
;
}
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|