 |
|

26.03.2024, 09:45
|
|
Постоянный
Регистрация: 15.09.2021
Сообщений: 396
С нами:
2453766
Репутация:
68
|
|
Сообщение от why ega
Нет, просто я дурак и дал не верный ответ. Вот этот коддолжен работать
бывает, спасиб)
|
|
|

27.03.2024, 17:09
|
|
Постоянный
Регистрация: 15.09.2021
Сообщений: 396
С нами:
2453766
Репутация:
68
|
|
как заменять лоадинг скрин через хук
|
|
|

27.03.2024, 18:08
|
|
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами:
2055431
Репутация:
3
|
|
Сообщение от skrrt
как заменять лоадинг скрин через хук
иди в сторону функции CLoadingScreen::LoadSplashes, которая загружает txd в память -

|
|
|

27.03.2024, 18:28
|
|
Постоянный
Регистрация: 15.09.2021
Сообщений: 396
С нами:
2453766
Репутация:
68
|
|
Сообщение от why ega
иди в сторону функции CLoadingScreen::LoadSplashes, которая загружает txd в память -
а где можно чекать эти функции?
|
|
|

27.03.2024, 18:42
|
|
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами:
2055431
Репутация:
3
|
|
Сообщение от skrrt
а где можно чекать эти функции?
база для IDA, собранная другими людьми. одну из таких можно скачать из дискордканала plugin sdk. либо вотбаза, которой пользуюсь я (скорее всего она является первой же)
|
|
|

28.03.2024, 11:40
|
|
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами:
2055431
Репутация:
3
|
|
У меня есть проект с такой структурой:
src/
├── hooks.hpp
├── hooks.cpp
├── patch.hpp
├── patch.cpp
├── network.hpp
├── network.cpp
├── main.hpp
└── main.cpp
Как я могу грамотно организовать получение основного класса Plugin в остальных классах, которые находятся в одноименных файлах?
C++:
Код:
#ifndef MAIN_HPP
#define MAIN_HPP
#include
#include "sampapi/sampapi.h"
#include "hooks.hpp"
#include "patch.hpp"
#include "network.hpp"
class
Plugin
{
public
:
Plugin
(
)
;
~
Plugin
(
)
;
void
Initialize
(
)
;
// Инициализация указателей происходит в методах клсса Plugin
Patch
*
patch
;
Hooks
*
hooks
;
Network
*
network
;
//
std
::
uintptr_t SAMPHandle
;
std
::
vector
accessories
;
bool
isKeyDown
=
false
;
}
plugin
;
#endif
Покажу на примере класса Network (network.hpp):
C++:
Код:
#ifndef NETWORK_HPP
#define NETWORK_HPP
#include "rakhook/rakhook.hpp"
#include "sampapi/CPlayerPool.h"
class
Network
{
private
:
static
const
char
*
clientVersion
;
// Необходимо как-либо получить доступ к объявлению класса Plugin
Plugin
*
plugin
;
public
:
Network
(
Plugin
*
plugin
)
;
~
Network
(
)
;
bool
OnSendRPC
(
std
::
int32_t
&
id
,
RakNet
::
BitStream
*
bs
,
PacketPriority
&
priority
,
PacketReliability
&
reliability
,
char
&
orderingChannel
,
bool
&
sh_timestamp
)
;
bool
OnReceiveRPC
(
std
::
uint8_t
&
id
,
RakNet
::
BitStream
*
bs
)
;
}
;
#endif
|
|
|

28.03.2024, 13:22
|
|
Познавший АНТИЧАТ
Регистрация: 29.09.2018
Сообщений: 1,292
С нами:
4012500
Репутация:
138
|
|
Сообщение от why ega
У меня есть проект с такой структурой:
src/
├── hooks.hpp
├── hooks.cpp
├── patch.hpp
├── patch.cpp
├── network.hpp
├── network.cpp
├── main.hpp
└── main.cpp
Как я могу грамотно организовать получение основного класса Plugin в остальных классах, которые находятся в одноименных файлах?
C++:
Код:
#ifndef MAIN_HPP
#define MAIN_HPP
#include
#include "sampapi/sampapi.h"
#include "hooks.hpp"
#include "patch.hpp"
#include "network.hpp"
class
Plugin
{
public
:
Plugin
(
)
;
~
Plugin
(
)
;
void
Initialize
(
)
;
// Инициализация указателей происходит в методах клсса Plugin
Patch
*
patch
;
Hooks
*
hooks
;
Network
*
network
;
//
std
::
uintptr_t SAMPHandle
;
std
::
vector
accessories
;
bool
isKeyDown
=
false
;
}
plugin
;
#endif
Покажу на примере класса Network (network.hpp):
C++:
Код:
#ifndef NETWORK_HPP
#define NETWORK_HPP
#include "rakhook/rakhook.hpp"
#include "sampapi/CPlayerPool.h"
class
Network
{
private
:
static
const
char
*
clientVersion
;
// Необходимо как-либо получить доступ к объявлению класса Plugin
Plugin
*
plugin
;
public
:
Network
(
Plugin
*
plugin
)
;
~
Network
(
)
;
bool
OnSendRPC
(
std
::
int32_t
&
id
,
RakNet
::
BitStream
*
bs
,
PacketPriority
&
priority
,
PacketReliability
&
reliability
,
char
&
orderingChannel
,
bool
&
sh_timestamp
)
;
bool
OnReceiveRPC
(
std
::
uint8_t
&
id
,
RakNet
::
BitStream
*
bs
)
;
}
;
#endif
всм просто инклудни main.hpp в network
|
|
|

28.03.2024, 13:32
|
|
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами:
2055431
Репутация:
3
|
|
Сообщение от F0RQU1N and
всм просто инклудни main.hpp в network
в таком случае получаю подобную шнягу

|
|
|

28.03.2024, 16:44
|
|
Постоянный
Регистрация: 15.09.2021
Сообщений: 396
С нами:
2453766
Репутация:
68
|
|
как сделать функцию, которая будет загружаться только после загрузочного экрана
|
|
|

28.03.2024, 16:49
|
|
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами:
2055431
Репутация:
3
|
|
Сообщение от skrrt
как сделать функцию, которая будет загружаться только после загрузочного экрана
Если есть возможность, то можешь хукать самповский конструктор NetGame
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|