[ICVar] Тип боя

Эксперт
Статус
Оффлайн
Регистрация
12 Июн 2014
Сообщения
991
Реакции[?]
1,209
Поинты[?]
3K
В дополнение темы AzeDonLees

1) ищем: IsSameTeam
2) переходим по указанному "сабу":


3) Переходим по следующему:


Видим следующее:


Код:
class ICVar
{
public:
    void  i_pelletsDisp(float a1) {
        *(float*)((DWORD)this + 308) = a1;
    }
    void  i_unlimitedammo(int a1) {
        *(int*)((DWORD)this + 316) = a1;
    }
    int   g_victoryCondition() {
        return *(int*)((DWORD)this + 0x574);
    }

    static ICVar* Singleton() {
        return *(ICVar**)(0x1B36E94);
    }
};
g_victoryCondition это флаг типа боя. Имеет следующие значения:
Код:
enum iVictoryCondition : int
{
    eLobby = 0,  //лобби
    eDeathmatch, //команды
    eOccupation, //захват
    ePVE,        //ПВЕ
    eUndermining,//подрыв
    eStorm,      //Штурм
    eChopper,    //Мясорубка
    eDestruction,//уничтожение
    eDomination, //доминация
    eSurvival    //выживание
    //для королевской битвы  сами ищите
};
Использовать так:
Код:
bool IsPVE() {
    return (IСVar::Singleton()->g_victoryCondition() == iVictoryCondition::ePVE);
}


IСVar::Singleton()->i_unlimitedammo(1);
IСVar::Singleton()->i_pelletsDisp(29.f);
Код:
 if(IsPVE())
  //мы на ПВЕ
     else
  //мы на ПВП
 
Сверху Снизу