
25.06.2019, 00:50
|
|
Постоянный
Регистрация: 27.08.2018
Сообщений: 717
С нами:
4060346
Репутация:
43
|
|
Сообщение от social enemy
молодец. скрин сам скинешь?
зачем?
|
|
|

25.06.2019, 01:03
|
|
Постоянный
Регистрация: 27.08.2018
Сообщений: 717
С нами:
4060346
Репутация:
43
|
|
что именно там кидать тебе?
Сообщение от social enemy
молодец. скрин сам скинешь?

|
|
|

25.06.2019, 22:41
|
|
Новичок
Регистрация: 23.06.2019
Сообщений: 6
С нами:
3627563
Репутация:
1
|
|
Вопрос скорей всего не по SAMP'у.
На днях мне было необходимо создать графическое приложение. Можно использовать C++ вместе с MFC, либо переехать на QT Creator, либо.. Либо использовать C# вместе с C++. Я бы хотел спросить про третий случай.
Кто нибудь уже пробовал создавать графику в C# и вызывать из C# функции (какие-нибудь системные вычисления) из своей библиотеки C++? Что можно сказать про производительность?
Просто я не сильно доверяю QT Creator из-за незнания самого продукта.
|
|
|

28.06.2019, 08:31
|
|
Познающий
Регистрация: 22.07.2015
Сообщений: 58
С нами:
5689694
Репутация:
68
|
|
Сообщение от liefasm
Вопрос скорей всего не по SAMP'у.
На днях мне было необходимо создать графическое приложение. Можно использовать C++ вместе с MFC, либо переехать на QT Creator, либо.. Либо использовать C# вместе с C++. Я бы хотел спросить про третий случай.
Кто нибудь уже пробовал создавать графику в C# и вызывать из C# функции (какие-нибудь системные вычисления) из своей библиотеки C++? Что можно сказать про производительность?
Просто я не сильно доверяю QT Creator из-за незнания самого продукта.
Сам никогда совмещение не практиковал, но есть вариант на крестах написать библиотеку и вызывать ее функции уже из шарпа.
В процессе поиска выяснилось, что это не так и сложно, как мне показалось изначально.
Но т.к. сам я никогда такое не практиковал, то мои советы скорее всего будут с нулевой пользой и я буду выступать твоим личным гуглом.
SO1
SO2
|
|
|

28.06.2019, 15:04
|
|
Новичок
Регистрация: 23.06.2019
Сообщений: 6
С нами:
3627563
Репутация:
1
|
|
Сообщение от Roger571
Сам никогда совмещение не практиковал, но есть вариант на крестах написать библиотеку и вызывать ее функции уже из шарпа.
В процессе поиска выяснилось, что это не так и сложно, как мне показалось изначально.
Но т.к. сам я никогда такое не практиковал, то мои советы скорее всего будут с нулевой пользой и я буду выступать твоим личным гуглом.
SO1
SO2
Хотелось бы встретить человека который бы сравнил производительность программы, которая была написана только на C# и программы которая бы комбинировала два языка.
|
|
|

27.06.2019, 23:59
|
|
Познавший АНТИЧАТ
Регистрация: 02.08.2018
Сообщений: 1,295
С нами:
4095395
Репутация:
183
|
|
Не знаю, ответите ли вы, но всё же.
Имеется 2 функции, silentaim и wallhack, все производятся в цикле и в одном и том же void.
Но, вот, вх то ренедрит нормально, то есть работает всё, а вот сайлент нет, почему же так?
aim:
C++:
Код:
if
(
Cvars
::
aim
)
{
IEntityIt
*
pEntityIt
=
gEnv
->
pEntitySystem
->
GetEntityIterator
(
)
;
while
(
IEntity
*
pExp
=
pEntityIt
->
Next
(
)
)
{
IEntityClass
*
pEntClass
=
pExp
->
GetClass
(
)
;
if
(
!
pEntClass
)
continue
;
const
char
*
ClassName
=
pEntClass
->
GetName
(
)
;
const
char
*
Name
=
pExp
->
GetName
(
)
;
if
(
!
_strcmp
(
ClassName
,
"Dummy"
)
)
continue
;
IEntityRenderProxy
*
pRenderProxy
=
pExp
->
GetRenderProxy
(
)
;
if
(
!
pRenderProxy
)
continue
;
uint32 RenderFlags
=
pRenderProxy
->
GetFlags
(
)
;
if
(
RenderFlags
==
386
)
{
if
(
_strstr
(
Name
,
"laymore"
)
||
_strstr
(
Name
,
"apsule"
)
||
_strstr
(
Name
,
"smartmine"
)
||
_strstr
(
Name
,
"spidermine"
)
||
_strstr
(
Name
,
"mine"
)
||
_strstr
(
Name
,
"heavydroid_rocket"
)
)
{
AABB aabb
;
pExp
->
GetWorldBounds
(
aabb
)
;
Vec3 vBonePos
=
aabb
.
GetCenter
(
)
;
Vec3 Out
;
if
(
_strstr
(
Name
,
"laymore"
)
||
_strstr
(
Name
,
"apsule"
)
||
_strstr
(
Name
,
"smartmine"
)
||
_strstr
(
Name
,
"spidermine"
)
||
_strstr
(
Name
,
"mine"
)
||
_strstr
(
Name
,
"heavydroid_rocket"
)
)
{
gRender
->
ProjectToScreen
(
aabb
.
GetCenter
(
)
,
Out
)
;
if
(
IsAim
(
Name
,
ClassName
,
pExp
,
vBonePos
)
||
is_Visible
(
aabb
.
GetCenter
(
)
,
2.0f
)
&&
Priority
(
vBonePos
)
)
{
Aim
(
pWeaponPTR
,
Name
,
ClassName
,
m_pActor
,
m_pItem
,
aabb
.
GetCenter
(
)
)
;
}
continue
;
}
continue
;
}
}
if
(
IActor
*
pActor
=
pFramework
->
GetIActorSystem
(
)
->
GetActor
(
pExp
->
GetId
(
)
)
)
{
if
(
pActor
->
IsDead
(
)
||
pActor
==
m_pActor
||
pActor
->
IsDead
(
)
||
IsMyTeam
(
m_pActor
,
pActor
)
)
continue
;
Vec3 vBonePos
=
ZERO
;
Vec3 Out
;
gRender
->
ProjectToScreen
(
vBonePos
,
Out
)
;
if
(
IsAim
(
Name
,
ClassName
,
pExp
,
vBonePos
)
||
is_Visible
(
vBonePos
,
0.0f
)
&&
Priority
(
vBonePos
)
)
{
Aim
(
pWeaponPTR
,
Name
,
ClassName
,
m_pActor
,
m_pItem
,
vBonePos
)
;
}
}
}
}
wh:
C++:
Код:
if
(
Cvars
::
wallhack
)
{
IEntityIt
*
pEntityIt
=
gEnv
->
pEntitySystem
->
GetEntityIterator
(
)
;
while
(
IEntity
*
pExp
=
pEntityIt
->
Next
(
)
)
{
IEntityClass
*
pEntClass
=
pExp
->
GetClass
(
)
;
if
(
!
pEntClass
)
continue
;
const
char
*
ClassName
=
pEntClass
->
GetName
(
)
;
const
char
*
Name
=
pExp
->
GetName
(
)
;
if
(
!
_strcmp
(
ClassName
,
"Dummy"
)
)
continue
;
IEntityRenderProxy
*
pRenderProxy
=
pExp
->
GetRenderProxy
(
)
;
if
(
!
pRenderProxy
)
continue
;
uint32 RenderFlags
=
pRenderProxy
->
GetFlags
(
)
;
if
(
RenderFlags
==
386
)
{
if
(
_strstr
(
Name
,
"laymore"
)
||
_strstr
(
Name
,
"apsule"
)
||
_strstr
(
Name
,
"smartmine"
)
||
_strstr
(
Name
,
"spidermine"
)
||
_strstr
(
Name
,
"mine"
)
||
_strstr
(
Name
,
"heavydroid_rocket"
)
)
{
pRenderProxy
->
SetHUDSilhouettesParams
(
0xFF
,
0x00
,
0x0
)
;
}
}
if
(
IActor
*
pActor
=
pFramework
->
GetIActorSystem
(
)
->
GetActor
(
pExp
->
GetId
(
)
)
)
{
if
(
pActor
->
IsDead
(
)
||
pActor
==
m_pActor
||
pActor
->
IsDead
(
)
||
IsMyTeam
(
m_pActor
,
pActor
)
)
continue
;
pRenderProxy
->
SetHUDSilhouettesParams
(
0xFF
,
0x00
,
0x0
)
;
}
}
}
|
|
|

28.06.2019, 16:16
|
|
Постоянный
Регистрация: 18.03.2017
Сообщений: 410
С нами:
4818548
Репутация:
133
|
|
Хук по адресу samp.dll + 0x65C60(это FUNC_SAMP_SENDCMD) конфликтит с SF, вызывая, к примеру из Lua скрипта, функцию
sampSendChat - выбрасывается "opcode '0AF9' call caused an unhandled exception". Есть другой адрес?
|
|
|

28.06.2019, 16:40
|
|
Познавший АНТИЧАТ
Регистрация: 09.03.2013
Сообщений: 1,771
С нами:
6935121
Репутация:
233
|
|
Сообщение от Artur_iOS
Хук по адресу samp.dll + 0x65C60(это FUNC_SAMP_SENDCMD) конфликтит с SF, вызывая, к примеру из Lua скрипта, функцию
sampSendChat - выбрасывается "opcode '0AF9' call caused an unhandled exception". Есть другой адрес?
если хук нарушает вызовы хукнутой функции, то проблема однозначно в самом хуке.
|
|
|

29.06.2019, 13:05
|
|
Познавший АНТИЧАТ
Регистрация: 22.02.2017
Сообщений: 1,474
С нами:
4852492
Репутация:
88
|
|
Как вернуть массив из функции?
|
|
|

29.06.2019, 15:17
|
|
Познавший АНТИЧАТ
Регистрация: 02.08.2018
Сообщений: 1,295
С нами:
4095395
Репутация:
183
|
|
здрасте. почему код выполняет действие, даже не смотря на то, что я нажал кнопку?
C++:
Код:
if
(
Cvars
::
teleport
&&
GetAsyncKeyState
(
Cvars
::
tp_key
)
)
{
IEntity
*
entity
=
nullptr
;
if
(
Cvars
::
tp
==
1
)
entity
->
SetPos
(
Cvars
::
TeleportPositions1
)
;
if
(
Cvars
::
tp
==
2
)
entity
->
SetPos
(
Cvars
::
TeleportPositions2
)
;
if
(
Cvars
::
tp
==
3
)
entity
->
SetPos
(
Cvars
::
TeleportPositions3
)
;
if
(
Cvars
::
tp
==
4
)
entity
->
SetPos
(
Cvars
::
TeleportPositions4
)
;
}
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|