
03.04.2025, 15:39
|
|
Познавший АНТИЧАТ
Регистрация: 12.11.2015
Сообщений: 1,560
С нами:
5526867
Репутация:
183
|
|
Сообщение от tanksoftik
C++:
Код:
int
AddParticle
(
FxSystem_c
*
particle
,
RwV3d
*
position
,
RwV3d
*
velocity
,
float
unk
,
FxPrtMult_c
*
particleData
,
float
a6
,
float
brightness
,
float
a8
,
int
a9
)
{
particle
->
AddParticle
(
position
,
velocity
,
unk
,
particleData
,
a6
,
brightness
,
a8
,
a9
)
;
return
1
;
}
C++:
Код:
patch
::
RedirectCall
(
0x6DF303
,
AddParticle
)
;
patch
::
RedirectCall
(
0x6DEE83
,
AddParticle
)
;
patch
::
RedirectCall
(
0x6DF0C3
,
AddParticle
)
;
функцию AddParticle что в ней передается брал фулл из ida
Сообщение от Спойлер
psevdocode:
Код:
int __thiscall FxSystem_c::AddParticle(
FxSystem_c *particle,
CVector *position,
CVector *velocity,
float unk,
FxPrtMult_c *particleData,
float a6,
float brightness,
float a8,
int a9)
{
int v10; // esi
int result; // eax
FxPrim_c *particlePrim; // ecx
float v13; // [esp+18h] [ebp-8h]
int i; // [esp+3Ch] [ebp+1Ch]
v10 = (rand() * 0.000030517578 * 100.0);
result = Fx_c::GetFxQuality(&g_fx);
if ( result || v10 >= 50 )
{
result = Fx_c::GetFxQuality(&g_fx);
if ( result != FX_MEDIUM || v10 >= 25 )
{
v13 = 1.0;
if ( brightness m_pBluePrint->m_nNumEmitters; i = ++result )
{
particlePrim = particle->PrimsList[result];
if ( particlePrim->m_bEnabled )
{
(particlePrim->vtable->field_14)(
particlePrim,
position,
velocity,
LODWORD(unk),
particleData,
LODWORD(a6),
COERCE_FLOAT(LODWORD(v13)),
a9);
result = i;
}
}
}
}
return result;
}
но почему то крашит, пробовал пустую функцию делать все равно крашит
Потому что нужно соглашение о вызове указать.
C++:
Код:
int
__fastcall
AddParticle
(
FxSystem_c
*
particle
,
void
*
unused
,
RwV3d
*
position
,
RwV3d
*
velocity
,
float
unk
,
FxPrtMult_c
*
particleData
,
float
a6
,
float
brightness
,
float
a8
,
int
a9
)
{
particle
->
AddParticle
(
position
,
velocity
,
unk
,
particleData
,
a6
,
brightness
,
a8
,
a9
)
;
return
1
;
}
Кстати почему ты возвращаешь единицу, а не то что тебе отдает оригинальная функция, это задумка или проёб?
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|