SAMPFUNCS | как найти здоровье локального игрока?

user337567

Участник
Автор темы
91
10
как найти здоровье локального игрока? и как вообще взаимодействовать с GameAPI
 

kin4stat

mq-team · kin4@naebalovo.team
Всефорумный модератор
2,732
4,724
с СФ апи почти не знаком, но здоровье легко и без его использования:
C++:
float health = *(float*)((*(DWORD*)0xB6F5F0) + 0x540);
float armour = *(float*)((*(DWORD*)0xB6F5F0) + 0x548); // а так же вот так броню
Вот тебе и "Преимущество" C-style кастов. Куча скобок и разбирай какая куда относится
А вообще красиво можно сделать вот так:
C++:
float health = *reinterpret_cast<float**>(0xB6F5F0)[0x540 / sizeof(float)];
float armour = *reinterpret_cast<float**>(0xB6F5F0)[0x548 / sizeof(float)];
 
Последнее редактирование:
  • Нравится
Реакции: legendabrn, Vintik и sc6ut

Vintik

Мечтатель
Проверенный
1,485
943
Вот тебе и "Преимущество" C-style кастов. Куча скобок и разбирай какая куда относится
А вообще красиво можно сделать вот так:
C++:
float health = *reinterpret_cast<float**>(0xB6F5F0)[0x540 / 4];
float armour = *reinterpret_cast<float**>(0xB6F5F0)[0x548 / 4];
Верю, скобок много.
C++:
DWORD CPed = *(DWORD*)0xB6F5F0;
float health = *(float*)(CPed + 0x540);
float armour = *(float*)(Cped + 0x548);
Хотя твой вариант более элегантный, что ли.
 
  • Bug
  • Нравится
Реакции: MeG@LaDo[N] ^_^ и sc6ut

sc6ut

неизвестный
Модератор
382
1,076
float health = *reinterpret_cast<float**>(0xB6F5F0)[0x540 / sizeof(float)]; float armour = *reinterpret_cast<float**>(0xB6F5F0)[0x548 / sizeof(float)];
вообще-то так:
C++:
float health = (*reinterpret_cast<float**>(0xB6F5F0))[0x540 / sizeof(float)];
float armour = (*reinterpret_cast<float**>(0xB6F5F0))[0x548 / sizeof(float)];
 
  • Влюблен
Реакции: legendabrn

kin4stat

mq-team · kin4@naebalovo.team
Всефорумный модератор
2,732
4,724