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

  #1  
Старый 08.08.2018, 12:36
CleanLegend
Постоянный
Регистрация: 28.03.2013
Сообщений: 495
С нами: 6908018

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

Введение

Объясню поподробней назначение функции mainloop.

При загрузке плагина указатель на эту функцию сохраняется в памяти и затем вызывается в главном цикле игры, то есть эта функция исполняется, пока работает приложение gta_sa.exe. В итоге каждому плагину предоставляется цикличная функция, в которой желательно выполнять весь код.

Dialog Hider

Снова открываете файл main.cpp.

В тело функции mainloop после закрытия условного блока if( !init ) вставляем этот код:

C++:





Код:
if
(
SF
->
getGame
(
)
->
isKeyPressed
(
'H'
)
)
// если нажата клавиша H (англ)
{
int
&
iDialogStatus
=
SF
->
getSAMP
(
)
->
getDialog
(
)
->
iIsActive
;
// сохраняем ссылку на переменную, в которой хранится текущий статус диалога.
iDialogStatus
^=
true
;
// меняем значение на обратное, т.е. если был true, то станет false, а если был false — то true.
if
(
!
iDialogStatus
)
// если статус был сменен на false (то есть закрылся диалог)
SF
->
getSAMP
(
)
->
getMisc
(
)
->
ToggleCursor
(
false
)
;
// отключаем курсор, который мешает двигаться.
}
;
}


Компилируйте, заходите в игру, проверяйте.

Автор: urShadow
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема

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


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




ANTICHAT ™ © 2001- Antichat Kft.