HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #6251  
Старый 23.07.2022, 16:11
Ya Zaregalsya
Постоянный
Регистрация: 29.05.2017
Сообщений: 394
С нами: 4714653

Репутация: 98
По умолчанию

Как скопировать битстрим (SAMPFUNCS)?
 
Ответить с цитированием

  #6252  
Старый 23.07.2022, 17:38
killian228
Новичок
Регистрация: 13.06.2022
Сообщений: 12
С нами: 2063554

Репутация: 1
По умолчанию

Как сделать так, чтобы персонаж всегда стоял как на поверхности? Делал так не работает:







C++:





Код:
*
reinterpret_cast

(
0xB6F5F0
+
0x46C
)
=
3
;
 
Ответить с цитированием

  #6253  
Старый 23.07.2022, 18:15
kin4stat
Флудер
Регистрация: 06.11.2017
Сообщений: 2,759
С нами: 4483143

Репутация: 183


По умолчанию

Цитата:
Сообщение от killian228  

Как сделать так, чтобы персонаж всегда стоял как на поверхности? Делал так не работает:







C++:





Код:
*
reinterpret_cast

(
0xB6F5F0
+
0x46C
)
=
3
;

plugin-sdk/plugin_sa/game_sa/CPhysical.h at 5b4133a6161bcd7c9fe5041d52ef9aff44f12892 · DK22Pac/plugin-sdk

An SDK for developing ASI/CLEO plugins for GTA San Andreas, GTA Vice City and GTA III - DK22Pac/plugin-sdk

github.com


plugin-sdk/plugin_sa/game_sa/CPed.h at 5b4133a6161bcd7c9fe5041d52ef9aff44f12892 · DK22Pac/plugin-sdk

An SDK for developing ASI/CLEO plugins for GTA San Andreas, GTA Vice City and GTA III - DK22Pac/plugin-sdk

github.com


plugin-sdk/plugin_sa/game_sa/CPed.h at 5b4133a6161bcd7c9fe5041d52ef9aff44f12892 · DK22Pac/plugin-sdk

An SDK for developing ASI/CLEO plugins for GTA San Andreas, GTA Vice City and GTA III - DK22Pac/plugin-sdk

github.com


Если хочется прям по адресам:

C++:





Код:
std
::
uint8_t
*
ped_ptr
=
FindPlayerPed
(
-
1
)
;
// *reinterpret_cast(0xB6F5F0);
// чтобы выставить
*
(
ped_ptr
+
0x46C
)
|=
0b11
;
*
(
ped_ptr
+
0x40
)
|=
0b10
;
// чтобы убрать
*
(
ped_ptr
+
0x46C
)
&=
~
0b11
;
*
(
ped_ptr
+
0x40
)
&=
~
0b10
;
 
Ответить с цитированием

  #6254  
Старый 24.07.2022, 22:03
killian228
Новичок
Регистрация: 13.06.2022
Сообщений: 12
С нами: 2063554

Репутация: 1
По умолчанию

При отправке 138 rpc он читает ид игрока и причину выхода и выводит в чат, но получает неправильный ид игрока. Что не так?

C++:





Код:
rakhook
::
on_receive_rpc
+=
[
]
(
unsigned
char
&
id
,
RakNet
::
BitStream
*
&&
bs
)
->
bool
{
if
(
RakNetns
)
{
if
(
id
==
138
)
{
int
PlayerId
;
int
Reason
;
bs
->
Read
(
PlayerId
)
;
bs
->
Read
(
Reason
)
;
char
Buffer
[
128
]
;
rakhook
::
emul_rpc
(
138
,
*
bs
)
;
// эмуляция RPC.
if
(
Reason
==
0
)
{
sprintf
(
Buffer
,
xorstr
(
"%s[%d] Cause left the server: Crash"
)
,
g_SAMP
->
GetPlayerPool
(
)
->
GetName
(
PlayerId
)
,
PlayerId
)
;
}
if
(
Reason
==
1
)
{
sprintf
(
Buffer
,
xorstr
(
"%s[%d] Cause left the server: /q"
)
,
g_SAMP
->
GetPlayerPool
(
)
->
GetName
(
PlayerId
)
,
PlayerId
)
;
}
if
(
Reason
==
2
)
{
sprintf
(
Buffer
,
xorstr
(
"%s[%d] Cause left the server: Kick/Ban"
)
,
g_SAMP
->
GetPlayerPool
(
)
->
GetName
(
PlayerId
)
,
PlayerId
)
;
}
add_chat_message
(
-
1
,
Buffer
)
;
}
}
return
true
;
}
;
 
Ответить с цитированием

  #6255  
Старый 25.07.2022, 00:55
4el0ve4ik
Познавший АНТИЧАТ
Регистрация: 12.11.2015
Сообщений: 1,560
С нами: 5526867

Репутация: 183


По умолчанию

Цитата:
Сообщение от killian228  

При отправке 138 rpc он читает ид игрока и причину выхода и выводит в чат, но получает неправильный ид игрока. Что не так?

C++:





Код:
rakhook
::
on_receive_rpc
+=
[
]
(
unsigned
char
&
id
,
RakNet
::
BitStream
*
&&
bs
)
->
bool
{
if
(
RakNetns
)
{
if
(
id
==
138
)
{
int
PlayerId
;
int
Reason
;
bs
->
Read
(
PlayerId
)
;
bs
->
Read
(
Reason
)
;
char
Buffer
[
128
]
;
rakhook
::
emul_rpc
(
138
,
*
bs
)
;
// эмуляция RPC.
if
(
Reason
==
0
)
{
sprintf
(
Buffer
,
xorstr
(
"%s[%d] Cause left the server: Crash"
)
,
g_SAMP
->
GetPlayerPool
(
)
->
GetName
(
PlayerId
)
,
PlayerId
)
;
}
if
(
Reason
==
1
)
{
sprintf
(
Buffer
,
xorstr
(
"%s[%d] Cause left the server: /q"
)
,
g_SAMP
->
GetPlayerPool
(
)
->
GetName
(
PlayerId
)
,
PlayerId
)
;
}
if
(
Reason
==
2
)
{
sprintf
(
Buffer
,
xorstr
(
"%s[%d] Cause left the server: Kick/Ban"
)
,
g_SAMP
->
GetPlayerPool
(
)
->
GetName
(
PlayerId
)
,
PlayerId
)
;
}
add_chat_message
(
-
1
,
Buffer
)
;
}
}
return
true
;
}
;

Parameters: UINT16 wPlayerID, UINT8 reason

а ты все как int читаешь.
 
Ответить с цитированием

  #6256  
Старый 25.07.2022, 18:05
Savchik Blazer
Постоянный
Регистрация: 20.03.2021
Сообщений: 666
С нами: 2711257

Репутация: 83


По умолчанию

Как проверить заспавнился ли локальный игрок
 
Ответить с цитированием

  #6257  
Старый 25.07.2022, 18:21
F0RQU1N and
Познавший АНТИЧАТ
Регистрация: 29.09.2018
Сообщений: 1,292
С нами: 4012500

Репутация: 138


По умолчанию

Цитата:
Сообщение от Savchik Blazer  

Как проверить заспавнился ли локальный игрок
на нуллптр проверь просто
 
Ответить с цитированием

  #6258  
Старый 25.07.2022, 18:27
Savchik Blazer
Постоянный
Регистрация: 20.03.2021
Сообщений: 666
С нами: 2711257

Репутация: 83


По умолчанию

Цитата:
Сообщение от F0RQU1N  

на нуллптр проверь просто
Не, ну это понятно, я функцию не могу найти, весь getPlayers() облазал
 
Ответить с цитированием

  #6259  
Старый 25.07.2022, 18:28
F0RQU1N and
Познавший АНТИЧАТ
Регистрация: 29.09.2018
Сообщений: 1,292
С нами: 4012500

Репутация: 138


По умолчанию

Цитата:
Сообщение от Savchik Blazer  

Не, ну это понятно, я функцию не могу найти, весь getPlayers() облазал
функция для проверки на нуллптр?😀
 
Ответить с цитированием

  #6260  
Старый 25.07.2022, 18:53
Ltall
Новичок
Регистрация: 19.06.2022
Сообщений: 14
С нами: 2055431

Репутация: 3
По умолчанию

Цитата:
Сообщение от Savchik Blazer  

Как проверить заспавнился ли локальный игрок
C++:





Код:
if
(
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
id
]
!=
NULL
)
{
//code
}
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Внести депозит

Введите сумму USDT:

Принимается только USDT TRC20. Fake/Flash USDT не засчитывается.

×

Вывести депозит

Сумма USDT:

Ваш USDT TRC20 кошелек:

Заявка будет отправлена администратору.