Code:
CPlayerInfo* CPlayerManager::GetPlayerInfoByIndex(int index)
{
if(index > 32) return NULL;
return (CPlayerInfo*)(0x009DC4AC + (index * 0x1CE0));
}
int CPlayerManager::GetLocalPlayerIndex()
{
DWORD *dwServPtr = (DWORD*)0x009A1DD8;
return *(int*)((*dwServPtr) + 0x160EC);
}
BYTE CPlayerManager::GetState(CPlayer* pPlayer)
{
BYTE status = pPlayer->state;
if(status == 0x47)
return STANDS;
if(status == 0x38 || status == 0x3b || status == 0x3b || status == 0x3e || status == 0x3c)
return PRONES;
if(status == 0x4b || status == 0x4a || status == 0x4c || status == 0x4d)
return MOVING;
if(status == 0x57 || status == 0x5d || status == 0x5c || status == 0x5e || status == 0x5f)
return KNEES;
if(status == 0x46)
return RUNS;
if(status == 0x54)
return JUMPS;
if(status == 0x25)
return ROLLS;
return 0;
}
char* szWeaponList[136] =
{
//This.. actually took some time lol :/
"DA_M7","DA_KNUCKLE","DA_STILETTO","DA_SWORD","DA_KNUCKLE_2","DA_SQUEAKY_HAMMER","DA_STILETTO_JP","DA_SWORD_JP","DB_COLT",
"DB_DESERT_EG","DB_MP5K","DB_MAGNUM","DB_GLOCK","DB_BERETTA_D","DB_THROWING_KNIFE","DB_MICRO_UZI","DB_BERETTA_M93R","DB_MP5K_GOLD",
"DB_MP5K_SW","DC_AK47","DC_K2","DC_M4A1","DC_FAMAS","DC_L85A1","DC_XM8 ","DC_TYPE89","DC_SIG550","DC_TAR_21","DC_M16A4","DC_AN94",
"DC_HK417","M16A4_Silver","AK47","DC_M4A1_GOLD","DD_G36C","DD_G36C_D","DD_AKS74U","DE_G36","DE_G36_D","DF_MP5","DF_P90","DF_UZI",
"DF_TMP9","DF_K1","DF_MP7A1","DF_SCORPION_D","DF_Spectre_M4","DF_MAC10","DF_UMP45","DF_CX4STORM","P90_Silver","DF_K1_GOLD","CX4STORM_SW",
"DG_PSG_1","DG_BARRETT_M82","DG_AUG","DG_SSG","DG_M24","DG_DRAGUNOV_SVD","DG_AI_AW","DG_AW50F","DG_M21","DG_WA2000","DG_SR25","DG_M40A1",
"DG_AI_AW_GOLD","PSG1_SW","SSG","DH_M60","DH_M249","DI_WINCHESTER_1300","DI_M4SUPER90","DJ_PZF_3","DJ_M136AT_4","DJ_RPG_7","DJ_JAVELIN",
"DJ_RPG_7_GOLD","RPG7_SW","DK_STINGER","DK_STINGER","DL_TMA_1A","DL_HA_SUPPLY","DM_K400_GRENADE","DN_K400_GRENADE_ASSULT","DN_SACRIFICE",
"DO_SMOKE_G","DO_FLASH_BANG_1","DO_FLASH_BANG_2","DP_CLAYMORE","DP_CLAYMORE_SWITCH","DP_PDA","DP_SWITCH_C4","C4","DQ_MEDIC_KIT_1","DQ_MEDIC_KIT_2",
"DQ_MEDIC_KIT_3","DR_SPANNER","DR_PIPE_WRENCH","DS_ADRENALINE","DS_PARACHUTE","DS_STAMINA","DS_HP_KIT","DS_DETECTOR","DS_TELESCOPE","DS_FLASH_MINE",
"DT_MG3","DT_M134","DT_MK1S","DT_HK69","HK69_Silver","DU_AMMO_BOX","DU_M14","DU_TEARGAS","DV_MEDIC_BOX","DW_K203","DW_TELESCOPE","DW_SILENCER",
"DU_NIPPERS","D2_SNOWBALL","D5_SCORPION_D_8TH","D5_G36C_D_8TH","D6_TMP9_8TH","D6_MP7A1_8TH","D7_AI_AW_8TH","D7_BARRETT_M82_8TH","D8_M60_8TH",
"D8_G36_8TH","D9_M249_8TH","D9_M134_8TH","XM8_RED ","SCORPION","MK1S_RED","BARRETT_M82_CAMO","HK69_CAMO","AK47EX","DAGGER"
};
char* CPlayerManager::WeaponEsp(CPlayerInfo* pInfo)
{
return szWeaponList[pInfo->weapon];
}
//so you can also calculate the head position for the aimbot
void CPlayerManager::AimCorrection(float &x, float &y, float &z, int State, int myState)
{
if(myState == STANDS)
{
if(State == PRONES)
//... work it out yourself : P
}
}
ps: there's some more infos in the CServer struct like ping and slots, i don't need that but if you want it then look around, kernel postet a bigger one some days ago