
25.04.2021, 17:06
|
|
Флудер
Регистрация: 06.11.2017
Сообщений: 2,759
С нами:
4483143
Репутация:
183
|
|
Сообщение от PanSeek
В C++ я конечно не силен, но что-то мне подсказывает, что тут можно не использовать поток.
из DllMain WNDPROC хук не поставишь, если аси лоадером подргужать, к тому моменту окно игры еще не создано
|
|
|

25.04.2021, 18:55
|
|
Участник форума
Регистрация: 21.01.2020
Сообщений: 123
С нами:
3322808
Репутация:
78
|
|
Сообщение от PanSeek
В C++ я конечно не силен, но что-то мне подсказывает, что тут можно не использовать поток.
C++:
Код:
LRESULT CALLBACK
WindowProc
(
HWND hwnd
,
UINT uMsg
,
WPARAM wParam
,
LPARAM lParam
)
{
switch
(
uMsg
)
{
case
WM_KEYUP
:
{
switch
(
wParam
)
{
case
VK_END
:
{
sampapi
::
v037r3
::
RefNetGame
(
)
->
m_pSettings
->
m_bNoNametagsBehindWalls
=
false
;
break
;
}
}
}
}
return
CallWindowProcA
(
WNDPROC
(
DLLProject
.
PrevWndFunc
)
,
hwnd
,
uMsg
,
wParam
,
lParam
)
;
}
//WinAPI. Перерегистрировать WindowProc нужно
Спасибо за помощь друголек, однако я неправильно вызываю функцию в этом коде и я не знаю как.
|
|
|

26.04.2021, 23:20
|
|
Новичок
Регистрация: 03.11.2018
Сообщений: 23
С нами:
3961687
Репутация:
3
|
|
Ребят, может кто помочь фиксануть аимбот к ближайшей кости? У меня некоторые проблемки, черканите в лс, тк код не маленький
|
|
|

26.04.2021, 23:27
|
|
Постоянный
Регистрация: 28.06.2018
Сообщений: 676
С нами:
4145990
Репутация:
118
|
|
Как включить и выключить нормально такой курсор для ImGui окна без plugin sdk? Код kin4stat'a отсюда не выключает его

|
|
|

27.04.2021, 01:17
|
|
Постоянный
Регистрация: 05.08.2018
Сообщений: 372
С нами:
4091290
Репутация:
213
|
|
Сообщение от bottom_text
Как включить и выключить нормально такой курсор для ImGui окна без plugin sdk? Код kin4stat'a отсюда не выключает его
C++:
Код:
//enable
pSAMP
->
toggleSAMPCursor
(
1
)
;
ImGui
::
GetIO
(
)
.
MouseDrawCursor
=
1
;
ImGui
::
GetIO
(
)
.
ConfigFlags
&=
~
ImGuiConfigFlags_NoMouseCursorChange
;
//disable
pSAMP
->
toggleSAMPCursor
(
0
)
;
ImGui
::
GetIO
(
)
.
MouseDrawCursor
=
0
;
ImGui
::
GetIO
(
)
.
ConfigFlags
|=
ImGuiConfigFlags_NoMouseCursorChange
;
toggleSAMPCursor
|
|
|

27.04.2021, 00:05
|
|
Постоянный
Регистрация: 05.08.2018
Сообщений: 372
С нами:
4091290
Репутация:
213
|
|
Создал проект через plugin sdk, не вызывается
Events::gameProcessEvent += [] {
//...
};
|
|
|

27.04.2021, 00:09
|
|
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами:
6921957
Репутация:
183
|
|
Сообщение от AdCKuY_DpO4uLa
Создал проект через plugin sdk, не вызывается
Events::gameProcessEvent += [] {
//...
};
В сампе он не работает. Спасибо калхую за это.
|
|
|

27.04.2021, 13:51
|
|
Постоянный
Регистрация: 24.06.2016
Сообщений: 912
С нами:
5202871
Репутация:
163
|
|
SF. Как получить с радара определенную иконку? ID иконок - https://www.mta-resource.ru/wiki/article/id/13
Пробовал вот так:
Код:
GAME->GetRadar()->GetMarker(RADAR_SPRITE_MAP_HERE);
и вот так
Код:
GAME->GetRadar()->GetMarker(2);
При взаимодействии иконки, он работал с иконками других игроков/транспорта которые возле меня.
Если я правильно понял, то я получаю не иконки, а маркеры (я думал что одно и тоже). Как я понял мне нужны спрайты, а их получить не могу, только SetSprite есть.
|
|
|

27.04.2021, 16:01
|
|
Познавший АНТИЧАТ
Регистрация: 01.04.2018
Сообщений: 1,710
С нами:
4272230
Репутация:
183
|
|
|
|
|

28.04.2021, 18:57
|
|
Новичок
Регистрация: 03.11.2018
Сообщений: 23
С нами:
3961687
Репутация:
3
|
|
У меня есть функция:
GetAimingPlayer:
[CODE]
void
CAimbot
::
GetAimingPlayer
(
)
{
iTargetPlayer
=
-
1
;
float
fNearestDistance
=
9999.0f
;
// тут шлак бесполезный, смотри с нижнего комментария
if
(
g_Config
.
g_Aimbot
.
bAimbot
||
g_Config
.
g_Aimbot
.
bSmooth
||
g_Config
.
g_Aimbot
.
bSilent
||
g_Config
.
g_Aimbot
.
bProAim
)
{
CVector vecCamera
,
vecOrigin
,
vecTarget
;
Utils
::
getBonePosition
(
FindPlayerPed
(
)
,
BONE_RIGHTWRIST
,
&
vecOrigin
)
;
TheCamera
.
Find3rdPersonCamTargetVector
(
100.f
,
vecOrigin
,
&
vecCamera
,
&
vecTarget
)
;
for
(
int
i
=
0
;
i
isPlayerStreamed
(
i
)
)
continue
;
CPed
*
pPed
=
CPools
::
GetPed
(
pSAMP
->
getPlayers
(
)
->
pRemotePlayer
[
I
]
->
pPlayerData
->
pSAMP_Actor
->
ulGTAEntityHandle
)
;
if
(
!
pPed
||
!
pPed
->
IsAlive
(
)
)
continue
;
if
(
g_Config
.
g_Aimbot
.
bTeamProtect
&&
pSAMP
->
getPlayerColor
(
i
)
==
pSAMP
->
getPlayerColor
(
pSAMP
->
getPlayers
(
)
->
sLocalPlayerID
)
)
continue
;
if
(
!
g_Config
.
g_Aimbot
.
bIgnoreEverything
)
{
if
(
g_Config
.
g_Aimbot
.
bIgnoreAFK
&&
pSAMP
->
getPlayers
(
)
->
pRemotePlayer
[
I
]
->
pPlayerData
->
iAFKState
==
2
)
continue
;
float
fTargetDistance
=
Math
::
vect3_dist
(
&
pSAMP
->
getPlayers
(
)
->
pRemotePlayer
[
I
]
->
pPlayerData
->
pSAMP_Actor
->
pGTA_Ped
->
base
.
matrix
[
12
]
,
&
pSAMP
->
getPlayers
(
)
->
pLocalPlayer
->
pSAMP_Actor
->
pGTA_Ped
->
base
.
matrix
[
12
]
)
;
if
(
!
g_Config
.
g_Aimbot
.
bIgnoreMaxDistance
&&
fTargetDistance
>
fWeaponRange
[
pSAMP
->
getPlayers
(
)
->
pLocalPlayer
->
byteCurrentWeapon
]
)
continue
;
}
// Сам захват кости начинается отсюда
for
(
auto
iBone
:
iBoneList
)
{
CVector vecBone
,
vecBoneScreen
;
Utils
::
getBonePosition
(
pPed
,
(
ePedBones
)
iBone
,
&
vecBone
)
;
Utils
::
CalcScreenCoors
(
&
vecBone
,
&
vecBoneScreen
)
;
if
(
vecBoneScreen
.
z
=
(
float
)
g_Config
.
g_Aimbot
.
iAimbotConfig
[
pSAMP
->
getPlayers
(
)
->
pLocalPlayer
->
byteCurrentWeapon
]
[
CRANGE
]
*
1.5f
)
continue
;
if
(
!
g_Config
.
g_Aimbot
.
bIgnoreEverything
&&
!
g_Config
.
g_Aimbot
.
bLockThroughObjects
&&
!
CWorld
::
GetIsLineOfSightClear
(
vecCamera
,
vecBone
,
true
,
true
,
false
,
true
,
true
,
true
,
false
)
)
continue
;
if
(
fCentreDistance
Вот содержимое iBoneList[]:
C++:
Код:
static
int
iBoneList
[
]
{
BONE_PELVIS1
,
BONE_PELVIS
,
BONE_SPINE1
,
BONE_UPPERTORSO
,
BONE_NECK
,
BONE_HEAD2
,
BONE_HEAD1
,
BONE_HEAD
,
BONE_RIGHTUPPERTORSO
,
BONE_RIGHTSHOULDER
,
BONE_RIGHTELBOW
,
BONE_LEFTUPPERTORSO
,
BONE_LEFTSHOULDER
,
BONE_LEFTELBOW
,
BONE_LEFTHIP
,
BONE_LEFTKNEE
,
BONE_RIGHTHIP
,
BONE_RIGHTKNEE
,
}
;
И сама проблема в том, что при большом CRANGE - рендже аимбота, если первые 2-3 кости iBoneList[] в радиусе, то аим будет захватывать их, хотя по логике должен захватить ближайшую, подскажите пожалуйста, как это исправить :З
При маленьком все нормально захватывает.
Если нужно, то вот код Math::vect2_dist:
C++:
Код:
static
float
vect2_dist
(
CVector
*
point1
,
CVector
*
point2
)
{
return
sqrt
(
pow
(
point1
->
x
-
point2
->
x
,
2
)
+
pow
(
point1
->
y
-
point2
->
y
,
2
)
)
;
}
Код взят отсюда -> https://www.blast.hk/threads/63079/
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|