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

  #1  
Старый 29.07.2016, 09:55
Gabriel__
Постоянный
Регистрация: 23.06.2015
Сообщений: 411
С нами: 5731627

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

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

Какой смысл?
SAMPFUNCS вызывает деструктор во всех плагинах, вроде как.
Ну а свои как удалять ?
 
Ответить с цитированием

  #2  
Старый 28.07.2016, 21:15
Gabriel__
Постоянный
Регистрация: 23.06.2015
Сообщений: 411
С нами: 5731627

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

Удаляю глобальные объекты через delete в game destructor (вот delete SF; например ) но игра крашит при выходе а через pfree все норм.
 
Ответить с цитированием

  #3  
Старый 29.07.2016, 12:03
2Shae
Участник форума
Регистрация: 14.05.2014
Сообщений: 149
С нами: 6314183

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

Почему крашит?

Код:





Код:
SF->execConsoleCommand("pfree " + SF->getGame()->getPluginInfo()->getPluginName());
 
Ответить с цитированием

  #4  
Старый 29.07.2016, 12:31
Gabriel__
Постоянный
Регистрация: 23.06.2015
Сообщений: 411
С нами: 5731627

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

Цитата:
Сообщение от 2Shae  

Почему крашит?

Код:





Код:
SF->execConsoleCommand("pfree " + SF->getGame()->getPluginInfo()->getPluginName());

strcat_s юзай
 
Ответить с цитированием

  #5  
Старый 29.07.2016, 13:30
NarutoUA
Постоянный
Регистрация: 26.05.2013
Сообщений: 692
С нами: 6822856

Репутация: 213


По умолчанию

Нельзя самого себя выгружать из плагина
 
Ответить с цитированием

  #6  
Старый 30.07.2016, 00:34
iAmerican
Постоянный
Регистрация: 17.02.2014
Сообщений: 611
С нами: 6438231

Репутация: 133


По умолчанию

Как сделать постепенное исчезание ?

PHP:





Код:
pFont
-
>
Print
(
arr
[
0
]
,
D3DCOLOR_ARGB
(
255
,
255
,
255
,
0
)
,
1454
,
1000
,
false
)
;
 
Ответить с цитированием

  #7  
Старый 30.07.2016, 00:47
Woofing Giraffe
Постоянный
Регистрация: 14.06.2015
Сообщений: 402
С нами: 5744580

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

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

Как сделать постепенное исчезание ?

PHP:





Код:
pFont
-
>
Print
(
arr
[
0
]
,
D3DCOLOR_ARGB
(
255
,
255
,
255
,
0
)
,
1454
,
1000
,
false
)
;

Параметр A в цвете уменьшай
 
Ответить с цитированием

  #8  
Старый 30.07.2016, 02:31
iAmerican
Постоянный
Регистрация: 17.02.2014
Сообщений: 611
С нами: 6438231

Репутация: 133


По умолчанию

Цитата:
Сообщение от Woofing Giraffe  

Параметр A в цвете уменьшай
я шарю что его надо уменьшать , но не знаю как это реализовать.

Что бы после появления , через секунд 5 потихоньку исчезло .
 
Ответить с цитированием

  #9  
Старый 30.07.2016, 05:24
SR_team
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами: 6603505

Репутация: 183


По умолчанию

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

я шарю что его надо уменьшать , но не знаю как это реализовать.
Что бы после появления , через секунд 5 потихоньку исчезло .
например заменить его переменной, значение которой и будешь менять
 
Ответить с цитированием

  #10  
Старый 30.07.2016, 08:01
iAmerican
Постоянный
Регистрация: 17.02.2014
Сообщений: 611
С нами: 6438231

Репутация: 133


По умолчанию

Ну вот накидал так , с использованием таймера. Но очень быстро пропадает, текст даже не успевает появляться .

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

например заменить его переменной, значение которой и будешь менять
PHP:





Код:
#include 
#include 
#include 
#include 
#include "SAMPFUNCS_API.h"
#include "game_api\game_api.h"
SAMPFUNCS
*
SF
=
new
SAMPFUNCS
(
)
;
stFontInfo
*
pFont
;
bool bstarttext
=
false
;
int iA
;
DWORD
dgoiA
;
bool bgoiA
;
bool
CALLBACK
Present
(
CONST
RECT
*
pSourceRect
,
CONST
RECT
*
pDestRect
,
HWND
hDestWindowOverride
,
CONST
RGNDATA
*
pDirtyRegion
)
{
if
(
SUCCEEDED
(
SF
-
>
getRender
(
)
-
>
BeginRender
(
)
)
)
// если девайс готов к рисованию
{
if
(
!
SF
-
>
getGame
(
)
-
>
isGTAMenuActive
(
)
)
{
if
(
bstarttext
)
{
pFont
-
>
Print
(
"{87CEFA}iAmerican text invisibleeeeeeeeeeeeeeeeee"
,
D3DCOLOR_ARGB
(
iA
,
255
,
255
,
255
)
,
330
,
330
,
false
)
;
// A = 0
}
}
SF
-
>
getRender
(
)
-
>
EndRender
(
)
;
// завершаем рисование
}
;
return
true
;
// возвращаем положительный результат
}
;
void
Timers
(
)
{
if
(
bgoiA
)
{
if
(
GetTickCount
(
)
-
dgoiA
>
10
)
{
iA
=
0
;
bgoiA
=
false
;
}
}
}
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
;
SF
-
>
getSAMP
(
)
-
>
getChat
(
)
-
>
AddChatMessage
(
D3DCOLOR_XRGB
(
0
,
0xAA
,
0
)
,
"SAMPFUNCS Plugin loaded."
)
;
SF
-
>
getRender
(
)
-
>
registerD3DCallback
(
eDirect3DDeviceMethods
:
:
D3DMETHOD_PRESENT
,
Present
)
;
pFont
=
SF
-
>
getRender
(
)
-
>
CreateNewFont
(
"Comic Sans MS"
,
12
,
FCR_BORDER
)
;
init
=
true
;
}
Timers
(
)
;
if
(
SF
-
>
getGame
(
)
-
>
isKeyPressed
(
VK_F2
)
)
// Старт текста
{
if
(
bstarttext
)
{
bstarttext
=
false
;
}
else
{
bstarttext
=
true
;
dgoiA
=
GetTickCount
(
)
;
iA
=
255
;
bgoiA
=
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
;
}
 
Ответить с цитированием
Ответ





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


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




ANTICHAT ™ © 2001- Antichat Kft.

×

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

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

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

×

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

Сумма USDT:

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

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