Ir para conteúdo
Sistema de Servidores de Jogos ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

[Ajuda]Hacker Soldier front 2


Posts Recomendados

Bom esta navegando na net tentando estudar um pouco sobre linguagem e programaçao mais nao consigo entender bem. :P

Quero fazer um simple wallhacker para soldier front 2, e achei alguns pointer e offset em um forum ingles e gostaria da ajuda de um programador para fazer esse wallhack para mim.

 

  • Source
  • GAME VERSION
    ------------
     
    SF2 EU (S.K.I.L.L)
     
    File Version: 1.0.58528.0
     
    Engine: Unreal Engine 3
     
     
    MEMORY ADDRESSES
    ----------------
     
    OBJECTS:
     
    POINTER: 141E350
    SIGNATURE: A1 ? ? ? ? 8B 04 ? 8B ? ? 25 00 02 00 00
    REF: 8919D5
     
    NAMES:
     
    POINTER: 141E308
    SIGNATURE: 8B ? 8B 0D ? ? ? ? 8B 04 81
    REF: 48B876
     
    PROCESSEVENT:
     
    FUNCTION LOCATION: 45CBB0
    SIGNATURE: 74 ? 83 C0 07 83 E0 F8 E8 ? ? ? ? 8B C4
    VTABLE INDEX: 68
    TABLE REF: 403048
     

 

 

  • Code
  • Soldier front 2

Code:

RAW DATA DUMPS

---------------

 

OBJECT DUMP [ 4th Object (0xC) ]:

 

0: c0 83 0e 01

4: 03 00 00 00

8: 00 42 10 00

c: 04 00 00 00

10: 00 00 00 00

14: 00 00 00 00

18: 00 00 00 00

1c: 00 00 00 00

20: ff ff ff ff

24: 01 00 00 00

28: 00 c0 0f 13

2c: 51 08 00 00

30: 00 00 00 00

34: 00 fe 99 0e

38: 00 00 00 00

3c: 00 00 00 00

-----------------------------------------------------------------------------------------------------------------------------------

 

 

Main.cpp

Code:

 

#include "stdafx.h"

using namespace std;

#include <iostream>

//==================================Defines============================================

#define ForceRecon (nNumVertices == 83 && nPrimitiveCount == 137 || nNumVertices == 79 && nPrimitiveCount == 105 || nNumVertices == 142 && nPrimitiveCount == 174 || nNumVertices == 278 && nPrimitiveCount == 462 || nNumVertices == 263 && nPrimitiveCount == 290 || nNumVertices == 316 && nPrimitiveCount == 556)

#define ForceReconAddons (nNumVertices == 432 && nPrimitiveCount == 354 || nNumVertices == 144 && nPrimitiveCount == 136 || nNumVertices == 299 && nPrimitiveCount == 311 || nNumVertices == 167 && nPrimitiveCount == 252 || nNumVertices == 298 && nPrimitiveCount == 506 || nNumVertices == 168 && nPrimitiveCount == 254 || nNumVertices == 860 && nNumVertices == 778 || nNumVertices == 648 && nPrimitiveCount == 710 || nNumVertices == 113 && nPrimitiveCount == 189 || nNumVertices == 142 && nPrimitiveCount == 172 || nNumVertices == 87 && nPrimitiveCount == 90 || nNumVertices == 79 && nPrimitiveCount == 105 || nNumVertices == 84 && nPrimitiveCount == 110 || nNumVertices == 70 && nPrimitiveCount == 70 || nNumVertices == 860 && nPrimitiveCount == 778 || nNumVertices == 85 && nPrimitiveCount == 137)

#define Mulan (nNumVertices == 118 && nPrimitiveCount == 126|| nNumVertices == 121 && nPrimitiveCount == 180|| nNumVertices == 124 && nPrimitiveCount == 126|| nNumVertices == 295 && nPrimitiveCount == 482|| nNumVertices == 299 && nPrimitiveCount == 452|| nNumVertices == 474 && nPrimitiveCount == 728)

#define MulanAddons (nNumVertices == 162 && nPrimitiveCount == 200|| nNumVertices == 120 && nPrimitiveCount == 188|| nNumVertices == 167 && nPrimitiveCount == 276|| nNumVertices == 108 && nPrimitiveCount == 198|| nNumVertices == 512 && nPrimitiveCount == 728|| nNumVertices == 790 && nPrimitiveCount == 881|| nNumVertices == 619 && nPrimitiveCount == 800|| nNumVertices == 399 && nPrimitiveCount == 532|| nNumVertices == 402 && nPrimitiveCount == 580|| nNumVertices == 102 && nPrimitiveCount == 170|| nNumVertices == 125 && nPrimitiveCount == 98|| nNumVertices == 116 && nPrimitiveCount == 128|| nNumVertices == 160 && nPrimitiveCount == 174)

//=====================================================================================================================================================================================================================================================================================================================//

#pragma warning(disable:4305)

//=====================================================================================

int nofog;

int XQZ;

int m_Stride;

int FullBright;

int texnum;

int nNumVertices;

int nPrimitiveCount;

LPDIRECT3DTEXTURE8 texRed,texGreen,texYellow,texOrange,texBlue,texCyan,texPink,texPurple,texWhite,texBlack,texSteelBlue,texBrown,texTeal,texLightSteelBlue,texLightBlue,texSalmon,texLime,texElectricLime,texGold,texOrangeRed,texGreenYellow,texAquaMarine,texSkyBlue,texSlateBlue,texCrimson,texDarkOliveGreen,texPaleGreen,texDarkGoldenRod,texFireBrick,texDarkBlue,texDarkerBlue,texDarkYellow,texLightYellow;

float ScreenCenterX = 0.0f;

float ScreenCenterY = 0.0f;

int xhair;

int chams;

bool Color = true;

D3DCOLOR redt = D3DCOLOR_XRGB( 255, 0, 0 );

int NoSmoke;

int NoFlash;

int WhiteWalls;

int AsusWalls;

int GlassWalls;

int ClearScope;

int Red;

int Orange;

int Green;

int Yellow;

int Blue;

int Cyan;

int Pink;

int Purple;

int White;

int Black;

int SteelBlue;

int LightSteelBlue;

int Brown;

int Teal;

int LightBlue;

int Salmon;

int Lime;

int ElectricLime;

int Gold;

int OrangeRed;

int GreenYellow;

int AquaMarine;

int SkyBlue;

int SlateBlue;

int Crimson;

int DarkOliveGreen;

int PaleGreen;

int DarkGoldenRod;

int FireBrick;

int DarkBlue;

int DarkerBlue;

int DarkYellow;

int LightYellow;

int Red2;

int Orange2;

int Green2;

int Yellow2;

int Blue2;

int Cyan2;

int Pink2;

int Purple2;

int White2;

int Black2;

int SteelBlue2;

int LightSteelBlue2;

int Brown2;

int Teal2;

int LightBlue2;

int Salmon2;

int Lime2;

int ElectricLime2;

int Gold2;

int OrangeRed2;

int GreenYellow2;

int AquaMarine2;

int SkyBlue2;

int SlateBlue2;

int Crimson2;

int DarkOliveGreen2;

int PaleGreen2;

int DarkGoldenRod2;

int FireBrick2;

int DarkBlue2;

int DarkerBlue2;

int DarkYellow2;

int LightYellow2;

//=====================================================================================

HRESULT GenerateTexture(IDirect3DDevice8 *pD3Ddev, IDirect3DTexture8 **ppD3Dtex, DWORD colour32)

{

if( FAILED(pD3Ddev->CreateTexture(8, 8, 1, 0, D3DFMT_A4R4G4B4, D3DPOOL_MANAGED, ppD3Dtex)) )

return E_FAIL;

 

WORD colour16 = ((WORD)((colour32>>28)&0xF)<<12)

|(WORD)(((colour32>>20)&0xF)<<8)

|(WORD)(((colour32>>12)&0xF)<<4)

|(WORD)(((colour32>>4)&0xF)<<0);

 

D3DLOCKED_RECT d3dlr;

(*ppD3Dtex)->LockRect(0, &d3dlr, 0, 0);

WORD *pDst16 = (WORD*)d3dlr.pBits;

 

for(int xy=0; xy < 8*8; xy++)

*pDst16++ = colour16;

 

(*ppD3Dtex)->UnlockRect(0);

 

return S_OK;

}

//=====================================================================================

typedef HRESULT (WINAPI* CreateDevice_Prototype) (LPDIRECT3D8, UINT, D3DDEVTYPE, HWND, DWORD, D3DPRESENT_PARAMETERS*, LPDIRECT3DDEVICE8*);

typedef HRESULT (WINAPI* Reset_Prototype) (LPDIRECT3DDEVICE8, D3DPRESENT_PARAMETERS*);

typedef HRESULT (WINAPI* EndScene_Prototype) (LPDIRECT3DDEVICE8);

typedef HRESULT (WINAPI* DrawIndexedPrimitive_Prototype)(LPDIRECT3DDEVICE8, D3DPRIMITIVETYPE, UINT, UINT, UINT, UINT);

typedef HRESULT (WINAPI* SetViewport_Prototype) (LPDIRECT3DDEVICE8 ,CONST D3DVIEWPORT8*);

CreateDevice_Prototype CreateDevice_Pointer ;

Reset_Prototype Reset_Pointer ;

EndScene_Prototype EndScene_Pointer ;

DrawIndexedPrimitive_Prototype DrawIndexedPrimitive_Pointer ;

SetViewport_Prototype SetViewport_Pointer ;

HRESULT WINAPI Direct3DCreate8_VMTable (VOID);

HRESULT WINAPI CreateDevice_Detour (LPDIRECT3D8, UINT, D3DDEVTYPE, HWND, DWORD, D3DPRESENT_PARAMETERS*, LPDIRECT3DDEVICE8*);

HRESULT WINAPI Reset_Detour (LPDIRECT3DDEVICE8, D3DPRESENT_PARAMETERS*);

HRESULT WINAPI EndScene_Detour (LPDIRECT3DDEVICE8);

HRESULT WINAPI DrawIndexedPrimitive_Detour(LPDIRECT3DDEVICE8, D3DPRIMITIVETYPE, UINT, UINT, UINT, UINT);

HRESULT WINAPI SetViewport_Detour (LPDIRECT3DDEVICE8 ,CONST D3DVIEWPORT8*);

PDWORD Direct3D_VMTable = NULL;

//=====================================================================================

 

BOOL WINAPI DllMain(HINSTANCE hinstModule, DWORD dwReason, LPVOID lpvReserved)

{

if(dwReason == DLL_PROCESS_ATTACH)

{

DisableThreadLibraryCalls(hinstModule);

 

if(Direct3DCreate8_VMTable() == D3D_OK)

return TRUE;

}

 

return FALSE;

}

 

//=====================================================================================

//=====================================================================================

CD3DFont *pFont=NULL;

 

void PreReset(LPDIRECT3DDEVICE8 Device_Interface)

{

if (pFont) {

pFont->InvalidateDeviceObjects();

pFont->DeleteDeviceObjects();

pFont = NULL;

}

}

void PostReset(LPDIRECT3DDEVICE8 Device_Interface)

{

pFont = new CD3DFont("Arial", 10, D3DFONT_BOLD);

if (pFont) {

pFont->InitDeviceObjects(Device_Interface);

pFont->RestoreDeviceObjects();

}

}

 

//=====================================================================================

//=====================================================================================

HRESULT WINAPI Reset_Detour(LPDIRECT3DDEVICE8 Device_Interface, D3DPRESENT_PARAMETERS* PresentationParameters)

{

PreReset(Device_Interface);

return Reset_Pointer(Device_Interface, PresentationParameters);

}

//=====================================================================================

HRESULT WINAPI EndScene_Detour(LPDIRECT3DDEVICE8 Device_Interface)

{

if(Color)

{

GenerateTexture(Device_Interface, &texGreen , D3DCOLOR_ARGB(255,0,255,0));

GenerateTexture(Device_Interface, &texRed , D3DCOLOR_ARGB(255,255,0,0));

GenerateTexture(Device_Interface, &texBlue , D3DCOLOR_ARGB(255,0,0,255));

GenerateTexture(Device_Interface, &texOrange , D3DCOLOR_ARGB(255,255,165,0));

GenerateTexture(Device_Interface, &texYellow , D3DCOLOR_ARGB(255,255,255,0));

GenerateTexture(Device_Interface, &texPink , D3DCOLOR_ARGB(255,255,192,203));

GenerateTexture(Device_Interface, &texCyan , D3DCOLOR_ARGB(255,0,255,255));

GenerateTexture(Device_Interface, &texPurple , D3DCOLOR_ARGB(255,160,32,240));

GenerateTexture(Device_Interface, &texBlack , D3DCOLOR_ARGB(255,0,0,0));

GenerateTexture(Device_Interface, &texWhite , D3DCOLOR_ARGB(255,255,255,255));

GenerateTexture(Device_Interface, &texSteelBlue , D3DCOLOR_ARGB(255,33,104,140));

GenerateTexture(Device_Interface, &texLightSteelBlue, D3DCOLOR_ARGB(255,201,255,255));

GenerateTexture(Device_Interface, &texLightBlue , D3DCOLOR_ARGB(255,26,140,306));

GenerateTexture(Device_Interface, &texSalmon , D3DCOLOR_ARGB(255,196,112,112));

GenerateTexture(Device_Interface, &texBrown , D3DCOLOR_ARGB(255,168,99,20));

GenerateTexture(Device_Interface, &texTeal , D3DCOLOR_ARGB(255,38,140,140));

GenerateTexture(Device_Interface, &texLime , D3DCOLOR_ARGB(255,50,205,50));

GenerateTexture(Device_Interface, &texElectricLime , D3DCOLOR_ARGB(255,204,255,0));

GenerateTexture(Device_Interface, &texGold , D3DCOLOR_ARGB(255,255, 215, 0));

GenerateTexture(Device_Interface, &texOrangeRed , D3DCOLOR_ARGB(255,255,69,0));

GenerateTexture(Device_Interface, &texGreenYellow , D3DCOLOR_ARGB(255,173,255,47));

GenerateTexture(Device_Interface, &texAquaMarine , D3DCOLOR_ARGB(255,127,255,212));

GenerateTexture(Device_Interface, &texSkyBlue , D3DCOLOR_ARGB(255,0,191,255));

GenerateTexture(Device_Interface, &texSlateBlue , D3DCOLOR_ARGB(255,132, 112, 255));

GenerateTexture(Device_Interface, &texCrimson , D3DCOLOR_ARGB(255,220,20,60));

GenerateTexture(Device_Interface, &texDarkOliveGreen, D3DCOLOR_ARGB(255,188,238,104 ));

GenerateTexture(Device_Interface, &texPaleGreen , D3DCOLOR_ARGB(255,154,255, 154));

GenerateTexture(Device_Interface, &texDarkGoldenRod , D3DCOLOR_ARGB(255,255, 185, 15 ));

GenerateTexture(Device_Interface, &texFireBrick , D3DCOLOR_ARGB(255,255,48,48));

GenerateTexture(Device_Interface, &texDarkBlue , D3DCOLOR_ARGB(255,0,0,204));

GenerateTexture(Device_Interface, &texDarkerBlue , D3DCOLOR_ARGB(255,0,0,153));

GenerateTexture(Device_Interface, &texDarkYellow , D3DCOLOR_ARGB(255,255,204,0));

GenerateTexture(Device_Interface, &texLightYellow , D3DCOLOR_ARGB(255,255,255,153));

Color=false;

}

if(xhair)

{

D3DRECT rec4 = {ScreenCenterX-35, ScreenCenterY, ScreenCenterX+ 35, ScreenCenterY+1};

D3DRECT rec5 = {ScreenCenterX, ScreenCenterY-35, ScreenCenterX+ 1,ScreenCenterY+35};

Device_Interface->Clear( 1, &rec4, D3DCLEAR_TARGET, D3DXCOLOR(0.62745098, 0.125490, 0.959999, 1.0), 0, 0 );//purple

Device_Interface->Clear( 1, &rec5, D3DCLEAR_TARGET, D3DXCOLOR(0.62745098, 0.125490, 0.959999, 1.0), 0, 0 );

D3DRECT rec6 = {ScreenCenterX-30, ScreenCenterY, ScreenCenterX+ 30, ScreenCenterY+1};

D3DRECT rec7 = {ScreenCenterX, ScreenCenterY-30, ScreenCenterX+ 1,ScreenCenterY+30};

Device_Interface->Clear( 1, &rec6, D3DCLEAR_TARGET, D3DXCOLOR(0.0, 0.0, 1.0, 1.0), 0, 0 );//blue

Device_Interface->Clear( 1, &rec7, D3DCLEAR_TARGET, D3DXCOLOR(0.0, 0.0, 1.0, 1.0), 0, 0 );

D3DRECT rec8 = {ScreenCenterX-25, ScreenCenterY, ScreenCenterX+ 25, ScreenCenterY+1};

D3DRECT rec9 = {ScreenCenterX, ScreenCenterY-25, ScreenCenterX+ 1,ScreenCenterY+25};

Device_Interface->Clear( 1, &rec8, D3DCLEAR_TARGET, D3DXCOLOR(0.0, 1.0, 1.0, 1.0), 0, 0 );//cyan

Device_Interface->Clear( 1, &rec9, D3DCLEAR_TARGET, D3DXCOLOR(0.0, 1.0, 1.0, 1.0), 0, 0 );

D3DRECT rec10 = {ScreenCenterX-20, ScreenCenterY, ScreenCenterX+ 20, ScreenCenterY+1};

D3DRECT rec11 = {ScreenCenterX, ScreenCenterY-20, ScreenCenterX+ 1,ScreenCenterY+20};

Device_Interface->Clear( 1, &rec10, D3DCLEAR_TARGET, D3DXCOLOR(0.0, 1.0, 0.0, 1.0), 0, 0 );// green

Device_Interface->Clear( 1, &rec11, D3DCLEAR_TARGET, D3DXCOLOR(0.0, 1.0, 0.0, 1.0), 0, 0 );

D3DRECT rec12 = {ScreenCenterX-15, ScreenCenterY, ScreenCenterX+ 15, ScreenCenterY+1};

D3DRECT rec13 = {ScreenCenterX, ScreenCenterY-15, ScreenCenterX+ 1,ScreenCenterY+15};

Device_Interface->Clear( 1, &rec12, D3DCLEAR_TARGET, D3DXCOLOR(1.0, 1.0, 0.0, 1.0), 0, 0 );// yellow

Device_Interface->Clear( 1, &rec13, D3DCLEAR_TARGET, D3DXCOLOR(1.0, 1.0, 0.0, 1.0), 0, 0 );

 

D3DRECT rec14 = {ScreenCenterX-10, ScreenCenterY, ScreenCenterX+ 10, ScreenCenterY+1};

D3DRECT rec15 = {ScreenCenterX, ScreenCenterY-10, ScreenCenterX+ 1,ScreenCenterY+10};

Device_Interface->Clear( 1, &rec14, D3DCLEAR_TARGET, D3DXCOLOR(1.0, 0.549019608, 0.0, 1.0), 0, 0 );// orange

Device_Interface->Clear( 1, &rec15, D3DCLEAR_TARGET, D3DXCOLOR(1.0, 0.549019608, 0.0, 1.0), 0, 0 );

D3DRECT rec16 = {ScreenCenterX-5, ScreenCenterY, ScreenCenterX+ 5, ScreenCenterY+1};

D3DRECT rec17 = {ScreenCenterX, ScreenCenterY-5, ScreenCenterX+ 1,ScreenCenterY+5};

Device_Interface->Clear( 1, &rec16, D3DCLEAR_TARGET, D3DXCOLOR(1.0, 0.0, 0.0, 1.0), 0, 0 );//red

Device_Interface->Clear( 1, &rec17, D3DCLEAR_TARGET, D3DXCOLOR(1.0, 0.0, 0.0, 1.0), 0, 0 );

}

 

/*

if (GetAsyncKeyState(VK_F8)&1) // if we click f8

{ xhair = !xhair; } // xhair = on

if (GetAsyncKeyState(VK_F1)&1) // if we click f1

{ chams = !chams; } // chams = on

if (GetAsyncKeyState(VK_F2)&1) // if we click f2

{ //then

nofog = !nofog; //nofog = on

} //end of then

if (GetAsyncKeyState(VK_F3)&1) // if we click f1

{ XQZ = !XQZ; } // XQZ = on

*/

 

if (pFont==NULL)

PostReset(Device_Interface); // Create font

else

DoMenu(Device_Interface);

return EndScene_Pointer(Device_Interface);

}

//=====================================================================================

void DrawBox(LPDIRECT3DDEVICE8 Device_Interface, int x, int y, int w, int h, D3DCOLOR col)

{

struct {

float x,y,z,rhw;

DWORD dwColor;

} qV[4] = { { (float)x , (float)(y+h), 0.0f, 0.0f, col},

{ (float)x , (float)y , 0.0f, 0.0f, col},

{ (float)(x+w), (float)(y+h), 0.0f, 0.0f, col},

{ (float)(x+w), (float)y , 0.0f, 0.0f, col} };

Device_Interface->SetPixelShader(NULL);

Device_Interface->SetRenderState(D3DRS_ALPHABLENDENABLE,true);

Device_Interface->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA);

Device_Interface->SetTexture(0, NULL);

Device_Interface->DrawPrimitiveUP(D3DPT_TRIANGLESTRIP,2,qV,sizeof(qV[0]));

}

//=====================================================================================

HRESULT WINAPI DrawIndexedPrimitive_Detour(LPDIRECT3DDEVICE8 Device_Interface, D3DPRIMITIVETYPE pType,

UINT nMinIndex, UINT nNumVertices, UINT nStartIndex, UINT nPrimitiveCount)

{

 

if(nofog)

{

Device_Interface->SetRenderState(D3DRS_FOGENABLE, false); // Disable the Fog

}

 

LPDIRECT3DVERTEXBUFFER8 Stream_Data;

UINT Stride = 40;

if(Device_Interface->GetStreamSource(0, &Stream_Data, &Stride) == D3D_OK)

Stream_Data->Release();

if(chams)

{

texnum = (nNumVertices*100000)+nPrimitiveCount;

if(Stride == 40 &&

 

(texnum==34900580)|| // Delta Force Head

(texnum==36100604)|| // Spetsnaz Head

(texnum==38000658)|| // Spetsnaz Legs

(texnum==18300268)|| // Spetsnaz Body

(texnum==36200604)|| // GIGN Head

(texnum==21200306)|| // GIGN Body

(texnum==35500568)|| // GSG9 Head

(texnum==2200024)|| // GSG9 Bangs

(texnum==8800105)|| // GSG9 Feet

(texnum==36900650)|| // GSG9 Legs

(texnum==19600314)|| // GSG9 Body

(texnum==36700612)|| // SAS Head

(texnum==8500105)|| // SAS Feet

(texnum==37000650)|| // SAS Legs

(texnum==18000274)|| // SAS Body

(texnum==35300556)|| // KSF Head

(texnum==7500121)|| // KSF Arms

(texnum==9200115)|| // KSF Feet

(texnum==12400168)|| // KSF Hands

(texnum==30100522)|| // KSF Legs

(texnum==18700288)|| // KSF Body

(texnum==40900594)|| // ARTC Head

(texnum==11700190)|| // ARTC Arms

(texnum==9100118)|| // ARTC Feet

(texnum==12500170)|| // ARTC Hands

(texnum==37000634)|| // ARTC Legs

(texnum==41700516)|| // ARTC Body

(texnum==19400260)|| // ROKMC Body

(texnum==37900592)|| // ROKMC Head

(texnum==36500642)|| // ROKMC Legs

(texnum==44800776)|| // SRG Head

(texnum==15900200)|| // SRG Left Arm

(texnum==10500168)|| // SRG Right Arm

(texnum==80401016)|| // SRG Body

(texnum==10000121)|| // SRG Feet

(texnum==13200180)|| // SRG Hands

(ForceRecon)|| // ForceRecon

(Mulan)||

(texnum==33800534)|| // SRG Leg

(texnum==13200212)|| // Delta Force Helmet

(texnum==13200212)|| // Delta Force Helmet 2

(texnum==34700538)|| // Delta Force Gas Mask

(texnum==19500352)|| // Delta Force Balaclava

(texnum==84900778)|| // Delta Force Clan BDU

(texnum==27500442)|| // Delta Force Body Armor

(texnum==42800576)|| // Delta Force Body Armor 2

(texnum==52100658)|| // Delta Force Tactical Vest

(texnum==12200196)|| // Spetsnaz Helmet

(texnum==27100464)|| // Spetsnaz Gas Mask

(texnum==33600552)|| // Spetsnaz Body Armor

(texnum==44100646)|| // Spetsnaz Tactical Vest

(texnum==17800292)|| // GIGN Red Bandana

(texnum==21300290)|| // GIGN Helmet

(texnum==2800036)|| // GIGN Helmet Lens

(texnum==35700558)|| // GIGN Gas Mask

(texnum==22100396)|| // GIGN Balaclava

(texnum==29700492)|| // GIGN Body Armor

(texnum==11200188)|| // ROKMC Beret

(texnum==12000194)|| // ROKMC Helmet

(texnum==29800450)|| // ROKMC Gas Mask

(texnum==27100394)|| // ROKMC Body Armor

(texnum==28700374)|| // ROKMC X Harness

(texnum==34700470)|| // ROKMC X Harness

(texnum==5100056)|| // ROKMC Pouch

(texnum==9900163)|| // ROKMC Left Arm

(texnum==18300163)|| // ROKMC Right Arm

(texnum==16400266)|| // GSG9 Red Bandana

(texnum==16200243)|| // GSG9 Helmet

(texnum==31900466)|| // GSG9 Gas Mask

(texnum==19300342)|| // GSG9 Balaclava

(texnum==83600752)|| // GSG9 Clan BDU

(texnum==33400477)|| // GSG9 Body Armor

(texnum==10500163)|| // GSG9 Rolled Up Sleeves

(texnum==38100666)|| // GSG9 Tactical Knee Pads

(texnum==9600172)|| // SAS Boonie Hat

(texnum==14200236)|| // SAS Helmet

(texnum==37800552)|| // SAS Gas Mask

(texnum==28100486)|| // SAS Balaclava

(texnum==62400752)|| // SAS Clan BDU

(texnum==27900456)|| // SAS Body Armor

(texnum==45700654)|| // SAS Tactical Vest

(texnum==39800532)|| // SAS Tactical Vest 2

(texnum==9200100)|| // SAS Holster

(texnum==4800040)|| // SAS Magazine Pouch

(texnum==4000044)|| // SAS Pouch

(texnum==6500110) || // KSF Boonie Hat

(texnum==12900208)|| // KSF Helmet

(texnum==29600448)|| // KSF Gas Mask

(texnum==31100398)|| // KSF Sunglasses

(texnum==84700776)|| // KSF Clan BDU

(texnum==600004)|| // KSF Clan BDU Logo

(texnum==36500606)|| // KSF Body Armor

(texnum==63100646)|| // KSF Tactical Vest

(texnum==19800163)|| // KSF Rolled Up Sleeves

(texnum==7000066)|| // KSF Holster

(texnum==10400190)|| // SRG Beret

(texnum==23800294)|| // SRG Deer Head

(texnum==11600180)|| // SRG NIJ IIIA Helmet

(texnum==17100278)|| // SRG Red Bandana

(texnum==14600198)|| // SRG Battle Cap

(texnum==18200266)|| // SRG Helmet

(texnum==19100106)|| // SRG Gas Mask

(texnum==54300350)|| // SRG Sunglasses

(texnum==30800380)|| // SRG Mid Class Sunglasses

(texnum==79300995)|| // SRG Clan BDU 1

(texnum==13300138)|| // SRG Clan BDU 2

(texnum==300001)|| // SRG Clan BDU 3

(texnum==1200012)|| // SRG Clan BDU Logo

(texnum==10900110)|| // SRG Bulletproof Vest

(texnum==6200064)|| // SRG Holster

(ForceReconAddons)||

(MulanAddons)||

(texnum==22700250)) // SRG Pouch

{

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_NEVER);

if(Red)

{

Device_Interface->SetTexture(0, texRed);

}

if(Green)

{

Device_Interface->SetTexture(0, texGreen);

}

if(Orange)

{

Device_Interface->SetTexture(0, texOrange);

}

if(Yellow)

{

Device_Interface->SetTexture(0, texYellow);

}

if(Blue)

{

Device_Interface->SetTexture(0, texBlue);

}

if(Cyan)

{

Device_Interface->SetTexture(0, texCyan);

}

if(Pink)

{

Device_Interface->SetTexture(0, texPink);

}

if(Purple)

{

Device_Interface->SetTexture(0, texPurple);

}

if(White)

{

Device_Interface->SetTexture(0, texWhite);

}

if(Black)

{

Device_Interface->SetTexture(0, texBlack);

}

if(LightSteelBlue)

{

Device_Interface->SetTexture(0, texLightSteelBlue);

}

if(SteelBlue)

{

Device_Interface->SetTexture(0, texSteelBlue);

}

if(LightBlue)

{

Device_Interface->SetTexture(0, texLightBlue);

}

if(Brown)

{

Device_Interface->SetTexture(0, texBrown);

}

if(Teal)

{

Device_Interface->SetTexture(0, texTeal);

}

if(Salmon)

{

Device_Interface->SetTexture(0, texSalmon);

}

if(Lime)

{

Device_Interface->SetTexture(0, texLime);

}

if(ElectricLime)

{

Device_Interface->SetTexture(0, texElectricLime);

}

if(Gold)

{

Device_Interface->SetTexture(0, texGold);

}

if(OrangeRed)

{

Device_Interface->SetTexture(0, texOrangeRed);

}

if(GreenYellow)

{

Device_Interface->SetTexture(0, texGreenYellow);

}

if(AquaMarine)

{

Device_Interface->SetTexture(0, texAquaMarine);

}

if(SkyBlue)

{

Device_Interface->SetTexture(0, texSkyBlue);

}

if(SlateBlue)

{

Device_Interface->SetTexture(0, texSlateBlue);

}

if(Crimson)

{

Device_Interface->SetTexture(0, texCrimson);

}

if(DarkOliveGreen)

{

Device_Interface->SetTexture(0, texDarkOliveGreen);

}

if(PaleGreen)

{

Device_Interface->SetTexture(0, texPaleGreen);

}

if(DarkGoldenRod)

{

Device_Interface->SetTexture(0, texDarkGoldenRod);

}

if(FireBrick)

{

Device_Interface->SetTexture(0, texFireBrick);

}

if(DarkBlue)

{

Device_Interface->SetTexture(0, texDarkBlue);

}

if(DarkerBlue)

{

Device_Interface->SetTexture(0, texDarkerBlue);

}

if(LightYellow)

{

Device_Interface->SetTexture(0, texLightYellow);

}

if(DarkYellow)

{

Device_Interface->SetTexture(0, texDarkYellow);

}

Device_Interface->SetRenderState(D3DRS_LIGHTING, false);

DrawIndexedPrimitive_Pointer(Device_Interface, pType, nMinIndex, nNumVertices, nStartIndex, nPrimitiveCount);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_LESSEQUAL);

if(Red2)

{

Device_Interface->SetTexture(0, texRed);

}

if(Green2)

{

Device_Interface->SetTexture(0, texGreen);

}

if(Orange2)

{

Device_Interface->SetTexture(0, texOrange);

}

if(Yellow2)

{

Device_Interface->SetTexture(0, texYellow);

}

if(Blue2)

{

Device_Interface->SetTexture(0, texBlue);

}

if(Cyan2)

{

Device_Interface->SetTexture(0, texCyan);

}

if(Pink2)

{

Device_Interface->SetTexture(0, texPink);

}

if(Purple2)

{

Device_Interface->SetTexture(0, texPurple);

}

if(White2)

{

Device_Interface->SetTexture(0, texWhite);

}

if(Black2)

{

Device_Interface->SetTexture(0, texBlack);

}

if(LightSteelBlue2)

{

Device_Interface->SetTexture(0, texLightSteelBlue);

}

if(SteelBlue2)

{

Device_Interface->SetTexture(0, texSteelBlue);

}

if(LightBlue2)

{

Device_Interface->SetTexture(0, texLightBlue);

}

if(Brown2)

{

Device_Interface->SetTexture(0, texBrown);

}

if(Teal2)

{

Device_Interface->SetTexture(0, texTeal);

}

if(Salmon2)

{

Device_Interface->SetTexture(0, texSalmon);

}

if(Red)

{

Device_Interface->SetTexture(0, texRed);

}

if(Green)

{

Device_Interface->SetTexture(0, texGreen);

}

if(Orange)

{

Device_Interface->SetTexture(0, texOrange);

}

if(Yellow)

{

Device_Interface->SetTexture(0, texYellow);

}

if(Blue)

{

Device_Interface->SetTexture(0, texBlue);

}

if(Cyan)

{

Device_Interface->SetTexture(0, texCyan);

}

if(Pink)

{

Device_Interface->SetTexture(0, texPink);

}

if(Purple)

{

Device_Interface->SetTexture(0, texPurple);

}

if(White)

{

Device_Interface->SetTexture(0, texWhite);

}

if(Black)

{

Device_Interface->SetTexture(0, texBlack);

}

if(LightSteelBlue)

{

Device_Interface->SetTexture(0, texLightSteelBlue);

}

if(SteelBlue)

{

Device_Interface->SetTexture(0, texSteelBlue);

}

if(LightBlue)

{

Device_Interface->SetTexture(0, texLightBlue);

}

if(Brown)

{

Device_Interface->SetTexture(0, texBrown);

}

if(Teal)

{

Device_Interface->SetTexture(0, texTeal);

}

if(Salmon)

{

Device_Interface->SetTexture(0, texSalmon);

}

if(Lime2)

{

Device_Interface->SetTexture(0, texLime);

}

if(ElectricLime2)

{

Device_Interface->SetTexture(0, texElectricLime);

}

if(Gold2)

{

Device_Interface->SetTexture(0, texGold);

}

if(OrangeRed2)

{

Device_Interface->SetTexture(0, texOrangeRed);

}

if(GreenYellow2)

{

Device_Interface->SetTexture(0, texGreenYellow);

}

if(AquaMarine2)

{

Device_Interface->SetTexture(0, texAquaMarine);

}

if(SkyBlue2)

{

Device_Interface->SetTexture(0, texSkyBlue);

}

if(SlateBlue2)

{

Device_Interface->SetTexture(0, texSlateBlue);

}

if(Crimson2)

{

Device_Interface->SetTexture(0, texCrimson);

}

if(DarkOliveGreen2)

{

Device_Interface->SetTexture(0, texDarkOliveGreen);

}

if(PaleGreen2)

{

Device_Interface->SetTexture(0, texPaleGreen);

}

if(DarkGoldenRod2)

{

Device_Interface->SetTexture(0, texDarkGoldenRod);

}

if(FireBrick2)

{

Device_Interface->SetTexture(0, texFireBrick);

}

if(DarkBlue2)

{

Device_Interface->SetTexture(0, texDarkBlue);

}

if(DarkerBlue2)

{

Device_Interface->SetTexture(0, texDarkerBlue);

}

if(LightYellow2)

{

Device_Interface->SetTexture(0, texLightYellow);

}

if(DarkYellow2)

{

Device_Interface->SetTexture(0, texDarkYellow);

}

}

if (nNumVertices == 213 && nPrimitiveCount == 174) // M67 Grenade =============== //

{

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_NEVER);

Device_Interface->SetTexture(0,texRed);

DrawIndexedPrimitive_Pointer(Device_Interface, pType, nMinIndex, nNumVertices, nStartIndex, nPrimitiveCount);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_LESSEQUAL);

Device_Interface->SetTexture(0,texGreen);

}

if (nNumVertices == 158 && nPrimitiveCount == 131) // Flashbang =============== //

{

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_NEVER);

Device_Interface->SetTexture(0,texRed);

DrawIndexedPrimitive_Pointer(Device_Interface, pType, nMinIndex, nNumVertices, nStartIndex, nPrimitiveCount);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_LESSEQUAL);

Device_Interface->SetTexture(0,texGreen);

}

if (nNumVertices == 171 && nPrimitiveCount == 143) // Smoke Grenade =============== //

{

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_NEVER);

Device_Interface->SetTexture(0,texRed);

DrawIndexedPrimitive_Pointer(Device_Interface, pType, nMinIndex, nNumVertices, nStartIndex, nPrimitiveCount);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_LESSEQUAL);

Device_Interface->SetTexture(0,texBlue);

}

if (nNumVertices == 271 && nPrimitiveCount == 257) // VX Grenade =============== //

{

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_NEVER);

Device_Interface->SetTexture(0,texRed);

DrawIndexedPrimitive_Pointer(Device_Interface, pType, nMinIndex, nNumVertices, nStartIndex, nPrimitiveCount);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_LESSEQUAL);

Device_Interface->SetTexture(0,texBlue);

}

if (nNumVertices == 338 && nPrimitiveCount == 339) // RGD-5 Grenade =============== //

{

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_NEVER);

Device_Interface->SetTexture(0,texRed);

DrawIndexedPrimitive_Pointer(Device_Interface, pType, nMinIndex, nNumVertices, nStartIndex, nPrimitiveCount);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_LESSEQUAL);

Device_Interface->SetTexture(0,texYellow);

}

 

 

if (Stride==40 && // Guns =============== //

(texnum==187200968)|| // GALIL

(texnum==187200968)|| // GALIL 2

(texnum==149701124)|| // UZI

(texnum==193701304)|| // M249

(texnum==232501431)|| // SIG551

(texnum==161500751)|| // FA-MAS

(texnum==107400724)|| // FR-F2

(texnum==141600900)|| // AN94

(texnum==145900805)|| // G36C

(texnum==42200339)|| // K1

(texnum==23400116)|| // K1 2

(texnum==17500073)|| // K1 3

(texnum==3200012)|| // K1 4

(texnum==2300012)|| // K1 5

(texnum==71900459)|| // MP5

(texnum==1800008)|| // MP5 2

(texnum==20300084)|| // MP5 3

(texnum==16700083)|| // MP5 4

(texnum==79100469)|| // M4A1

(texnum==12000044)|| // M4A1 2

(texnum==16800062)|| // M4A1 3

(texnum==2400008)|| // M4A1 4

(texnum==600002)|| // M4A1 5

(texnum==12800050)|| // M4A1 6

(texnum==2600010)|| // M4A1 7

(texnum==4200014)|| // M4A1 8

(texnum==1400008)|| // M4A1 9

(texnum==80600442)|| // M16A2

(texnum==13400052)|| // M16A2 2

(texnum==17600066)|| // M16A2 3

(texnum==5400018)|| // M16A2 4

(texnum==46200348)|| // STEYR_AUG

(texnum==27000133)|| // STEYR_AUG 2

(texnum==4100025)|| // STEYR_AUG 3

(texnum==1200006)|| // STEYR_AUG 4

(texnum==400002)|| // STEYR_AUG 5

(texnum==46800367)|| // PSG-1

(texnum==9600042)|| // PSG-1 2

(texnum==18800092)|| // PSG-1 3

(texnum==16900071)|| // PSG-1 4

(texnum==3400012)|| // PSG-1 5

(texnum==800004)|| // PSG-1 6

(texnum==40500383)|| // K2

(texnum==15800089)|| // K2 2

(texnum==2200012)|| // K2 3

(texnum==7000034)|| // K2 4

(texnum==60700349)|| // P90

(texnum==5500033)|| // P90 2

(texnum==47700227)|| // P90 3

(texnum==10300047)|| // P90 4

(texnum==3800014)|| // P90 5

(texnum==50300349)|| // AK-74

(texnum==14700071)|| // AK-74 2

(texnum==13100061)|| // AK-74 3

(texnum==194501145)|| // MG36

(texnum==116000670)|| // DESERT EAGLE

(texnum==182101089)|| // MR73

(texnum==62500454)|| // REMINGTON M870

(texnum==95200571)|| // BENELLI M1

(texnum==40700334)|| // GLOCK 23

(texnum==71500449)|| // BERETTA M92F

(texnum==11000044)|| // BERETTA M92F 2

(texnum==16500075)|| // BERETTA M92F 3

(texnum==4400020)|| // BERETTA M92F 4

(texnum==2800014)|| // BERETTA M92F 5

(texnum==92000543)|| // COLT 45

(texnum==239001276)) // DRAGONUV

{

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_NEVER);

Device_Interface->SetTexture(0,texBlue);

DrawIndexedPrimitive_Pointer(Device_Interface, pType, nMinIndex, nNumVertices, nStartIndex, nPrimitiveCount);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_LESSEQUAL);

Device_Interface->SetTexture(0,texOrange);

}

}

//============================================================================================================

if(XQZ)

{

texnum = (nNumVertices*100000)+nPrimitiveCount;

if(Stride == 40 &&

 

(texnum==34900580)|| // Delta Force Head

(texnum==36100604)|| // Spetsnaz Head

(texnum==38000658)|| // Spetsnaz Legs

(texnum==18300268)|| // Spetsnaz Body

(texnum==36200604)|| // GIGN Head

(texnum==21200306)|| // GIGN Body

(texnum==35500568)|| // GSG9 Head

(texnum==2200024)|| // GSG9 Bangs

(texnum==8800105)|| // GSG9 Feet

(texnum==36900650)|| // GSG9 Legs

(texnum==19600314)|| // GSG9 Body

(texnum==36700612)|| // SAS Head

(texnum==8500105)|| // SAS Feet

(texnum==37000650)|| // SAS Legs

(texnum==18000274)|| // SAS Body

(texnum==35300556)|| // KSF Head

(texnum==7500121)|| // KSF Arms

(texnum==9200115)|| // KSF Feet

(texnum==12400168)|| // KSF Hands

(texnum==30100522)|| // KSF Legs

(texnum==18700288)|| // KSF Body

(texnum==40900594)|| // ARTC Head

(texnum==11700190)|| // ARTC Arms

(texnum==9100118)|| // ARTC Feet

(texnum==12500170)|| // ARTC Hands

(texnum==37000634)|| // ARTC Legs

(texnum==41700516)|| // ARTC Body

(texnum==19400260)|| // ROKMC Body

(texnum==37900592)|| // ROKMC Head

(texnum==36500642)|| // ROKMC Legs

(texnum==44800776)|| // SRG Head

(texnum==15900200)|| // SRG Left Arm

(texnum==10500168)|| // SRG Right Arm

(texnum==80401016)|| // SRG Body

(texnum==10000121)|| // SRG Feet

(texnum==13200180)|| // SRG Hands

(ForceRecon)|| // ForceRecon

(Mulan)||

(texnum==33800534)) // SRG Leg

{

Device_Interface->SetRenderState(D3DRS_LIGHTING, false);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

}

if (nNumVertices == 213 && nPrimitiveCount == 174) // M67 Grenade =============== //

{

Device_Interface->SetRenderState(D3DRS_LIGHTING, false);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

}

if (nNumVertices == 158 && nPrimitiveCount == 131) // Flashbang =============== //

{

Device_Interface->SetRenderState(D3DRS_LIGHTING, false);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

}

if (nNumVertices == 171 && nPrimitiveCount == 143) // Smoke Grenade =============== //

{

Device_Interface->SetRenderState(D3DRS_LIGHTING, false);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

}

if (nNumVertices == 271 && nPrimitiveCount == 257) // VX Grenade =============== //

{

Device_Interface->SetRenderState(D3DRS_LIGHTING, false);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

}

if (nNumVertices == 338 && nPrimitiveCount == 339) // RGD-5 Grenade =============== //

{

Device_Interface->SetRenderState(D3DRS_LIGHTING, false);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

}

 

 

 

if (Stride==40 && // Equipment =============== //

(texnum==13200212)|| // Delta Force Helmet

(texnum==13200212)|| // Delta Force Helmet 2

(texnum==34700538)|| // Delta Force Gas Mask

(texnum==19500352)|| // Delta Force Balaclava

(texnum==84900778)|| // Delta Force Clan BDU

(texnum==27500442)|| // Delta Force Body Armor

(texnum==42800576)|| // Delta Force Body Armor 2

(texnum==52100658)|| // Delta Force Tactical Vest

(texnum==12200196)|| // Spetsnaz Helmet

(texnum==27100464)|| // Spetsnaz Gas Mask

(texnum==33600552)|| // Spetsnaz Body Armor

(texnum==44100646)|| // Spetsnaz Tactical Vest

(texnum==17800292)|| // GIGN Red Bandana

(texnum==21300290)|| // GIGN Helmet

(texnum==2800036)|| // GIGN Helmet Lens

(texnum==35700558)|| // GIGN Gas Mask

(texnum==22100396)|| // GIGN Balaclava

(texnum==29700492)|| // GIGN Body Armor

(texnum==11200188)|| // ROKMC Beret

(texnum==12000194)|| // ROKMC Helmet

(texnum==29800450)|| // ROKMC Gas Mask

(texnum==27100394)|| // ROKMC Body Armor

(texnum==28700374)|| // ROKMC X Harness

(texnum==34700470)|| // ROKMC X Harness

(texnum==5100056)|| // ROKMC Pouch

(texnum==9900163)|| // ROKMC Left Arm

(texnum==18300163)|| // ROKMC Right Arm

(texnum==16400266)|| // GSG9 Red Bandana

(texnum==16200243)|| // GSG9 Helmet

(texnum==31900466)|| // GSG9 Gas Mask

(texnum==19300342)|| // GSG9 Balaclava

(texnum==83600752)|| // GSG9 Clan BDU

(texnum==33400477)|| // GSG9 Body Armor

(texnum==10500163)|| // GSG9 Rolled Up Sleeves

(texnum==38100666)|| // GSG9 Tactical Knee Pads

(texnum==9600172)|| // SAS Boonie Hat

(texnum==14200236)|| // SAS Helmet

(texnum==37800552)|| // SAS Gas Mask

(texnum==28100486)|| // SAS Balaclava

(texnum==62400752)|| // SAS Clan BDU

(texnum==27900456)|| // SAS Body Armor

(texnum==45700654)|| // SAS Tactical Vest

(texnum==39800532)|| // SAS Tactical Vest 2

(texnum==9200100)|| // SAS Holster

(texnum==4800040)|| // SAS Magazine Pouch

(texnum==4000044)|| // SAS Pouch

(texnum==6500110) || // KSF Boonie Hat

(texnum==12900208)|| // KSF Helmet

(texnum==29600448)|| // KSF Gas Mask

(texnum==31100398)|| // KSF Sunglasses

(texnum==84700776)|| // KSF Clan BDU

(texnum==600004)|| // KSF Clan BDU Logo

(texnum==36500606)|| // KSF Body Armor

(texnum==63100646)|| // KSF Tactical Vest

(texnum==19800163)|| // KSF Rolled Up Sleeves

(texnum==7000066)|| // KSF Holster

(texnum==10400190)|| // SRG Beret

(texnum==23800294)|| // SRG Deer Head

(texnum==11600180)|| // SRG NIJ IIIA Helmet

(texnum==17100278)|| // SRG Red Bandana

(texnum==14600198)|| // SRG Battle Cap

(texnum==18200266)|| // SRG Helmet

(texnum==19100106)|| // SRG Gas Mask

(texnum==54300350)|| // SRG Sunglasses

(texnum==30800380)|| // SRG Mid Class Sunglasses

(texnum==79300995)|| // SRG Clan BDU 1

(texnum==13300138)|| // SRG Clan BDU 2

(texnum==300001)|| // SRG Clan BDU 3

(texnum==1200012)|| // SRG Clan BDU Logo

(texnum==10900110)|| // SRG Bulletproof Vest

(texnum==6200064)|| // SRG Holster

(ForceReconAddons)||

(MulanAddons)||

(texnum==22700250)) // SRG Pouch

{

Device_Interface->SetRenderState(D3DRS_LIGHTING, false);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

}

if (Stride==40 && // Guns =============== //

(texnum==187200968)|| // GALIL

(texnum==187200968)|| // GALIL 2

(texnum==149701124)|| // UZI

(texnum==193701304)|| // M249

(texnum==232501431)|| // SIG551

(texnum==161500751)|| // FA-MAS

(texnum==107400724)|| // FR-F2

(texnum==141600900)|| // AN94

(texnum==145900805)|| // G36C

(texnum==42200339)|| // K1

(texnum==23400116)|| // K1 2

(texnum==17500073)|| // K1 3

(texnum==3200012)|| // K1 4

(texnum==2300012)|| // K1 5

(texnum==71900459)|| // MP5

(texnum==1800008)|| // MP5 2

(texnum==20300084)|| // MP5 3

(texnum==16700083)|| // MP5 4

(texnum==79100469)|| // M4A1

(texnum==12000044)|| // M4A1 2

(texnum==16800062)|| // M4A1 3

(texnum==2400008)|| // M4A1 4

(texnum==600002)|| // M4A1 5

(texnum==12800050)|| // M4A1 6

(texnum==2600010)|| // M4A1 7

(texnum==4200014)|| // M4A1 8

(texnum==1400008)|| // M4A1 9

(texnum==80600442)|| // M16A2

(texnum==13400052)|| // M16A2 2

(texnum==17600066)|| // M16A2 3

(texnum==5400018)|| // M16A2 4

(texnum==46200348)|| // STEYR_AUG

(texnum==27000133)|| // STEYR_AUG 2

(texnum==4100025)|| // STEYR_AUG 3

(texnum==1200006)|| // STEYR_AUG 4

(texnum==400002)|| // STEYR_AUG 5

(texnum==46800367)|| // PSG-1

(texnum==9600042)|| // PSG-1 2

(texnum==18800092)|| // PSG-1 3

(texnum==16900071)|| // PSG-1 4

(texnum==3400012)|| // PSG-1 5

(texnum==800004)|| // PSG-1 6

(texnum==40500383)|| // K2

(texnum==15800089)|| // K2 2

(texnum==2200012)|| // K2 3

(texnum==7000034)|| // K2 4

(texnum==60700349)|| // P90

(texnum==5500033)|| // P90 2

(texnum==47700227)|| // P90 3

(texnum==10300047)|| // P90 4

(texnum==3800014)|| // P90 5

(texnum==50300349)|| // AK-74

(texnum==14700071)|| // AK-74 2

(texnum==13100061)|| // AK-74 3

(texnum==194501145)|| // MG36

(texnum==116000670)|| // DESERT EAGLE

(texnum==182101089)|| // MR73

(texnum==62500454)|| // REMINGTON M870

(texnum==95200571)|| // BENELLI M1

(texnum==40700334)|| // GLOCK 23

(texnum==71500449)|| // BERETTA M92F

(texnum==11000044)|| // BERETTA M92F 2

(texnum==16500075)|| // BERETTA M92F 3

(texnum==4400020)|| // BERETTA M92F 4

(texnum==2800014)|| // BERETTA M92F 5

(texnum==92000543)|| // COLT 45

(texnum==239001276)) // DRAGONUV

{

Device_Interface->SetRenderState(D3DRS_LIGHTING, false);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

}

}

if(FullBright)

{

if(Stride == 40)

{

Device_Interface->SetRenderState(D3DRS_LIGHTING, false);

}

 

}

if(NoSmoke)

{

if(nPrimitiveCount=4)

{

return D3D_OK;

}

}

if(NoFlash)

{

if(nNumVertices == 158 && nPrimitiveCount == 131)

{

return D3D_OK;

}

}

if(ClearScope)

{

if(texnum==40200000 && Stride == 28)

{

return D3D_OK;

}

}

if(AsusWalls)

{

if(Stride == 40)

{

Device_Interface->SetRenderState( D3DRS_SRCBLEND, 3 );

Device_Interface->SetRenderState( D3DRS_DESTBLEND, 4 );

Device_Interface->SetRenderState( D3DRS_ALPHABLENDENABLE, true );

}

}

if(WhiteWalls)

{

if(Stride == 40)

{

Device_Interface->SetTexture(0, texWhite);

}

}

if(GlassWalls)

{

if(Stride == 40)

{

return D3D_OK;

}

}

return DrawIndexedPrimitive_Pointer(Device_Interface, pType, nMinIndex, nNumVertices, nStartIndex, nPrimitiveCount);

}

 

//=====================================================================================

//========================================================================================

HRESULT WINAPI SetViewport_Detour(LPDIRECT3DDEVICE8 Device_Interface,CONST D3DVIEWPORT8* pViewport)

{

ScreenCenterX = ( float )pViewport->Width / 2;

ScreenCenterY = ( float )pViewport->Height / 2;

 

return SetViewport_Pointer(Device_Interface,pViewport);

}

//=====================================================================================

//=====================================================================================

char sFPS[20]="xxx Fps";

int CH_back = 2; // 40%

// group states

int CH_cheats = 1;

int CH_Chams = 0;

int CH_Chams2 = 0;

// item states

 

 

// none standard options

char *opt_Grp[] = { "+","-" };

char *opt_OffOn[] = { "Off","On" };

char *opt_Stamina[] = { "Off","Stealth","Full" };

char *opt_Back[] = { "Off","20%","40%","60%","80%","Solid" };

D3DMenu *pMenu=NULL;

 

// Change this to make your own menu

void RebuildMenu(void)

{

pMenu->AddItem("Background" , &CH_back , opt_Back, 6);

pMenu->AddText("Framerate", sFPS);

pMenu->AddGroup("[Cham Colors 1]" , &CH_Chams, opt_Grp);

pMenu->AddGroup("[Cham Colors 2]" , &CH_Chams2, opt_Grp);

pMenu->AddGroup("[Cheats]" , &CH_cheats, opt_Grp);

if (CH_cheats)

{

pMenu->AddItem("Chams" , &chams , opt_OffOn);

pMenu->AddItem("XQZ" , &XQZ , opt_OffOn);

pMenu->AddItem("NoFog" , &nofog , opt_OffOn);

pMenu->AddItem("Rainbow Crosshair" , &xhair , opt_OffOn);

pMenu->AddItem("FullBright" , &FullBright , opt_OffOn);

pMenu->AddItem("NoSmoke" , &NoSmoke , opt_OffOn);

pMenu->AddItem("NoFlash" , &NoFlash , opt_OffOn);

pMenu->AddItem("ClearScope" , &ClearScope , opt_OffOn);

pMenu->AddItem("AsusWallHack" , &AsusWalls , opt_OffOn);

pMenu->AddItem("GlassWalls" , &GlassWalls , opt_OffOn);

pMenu->AddItem("WhiteWalls" , &WhiteWalls , opt_OffOn);

}

 

if (CH_Chams)

{

pMenu->AddItem("Red" , &Red , opt_OffOn);

pMenu->AddItem("Yellow" , &Yellow , opt_OffOn);

pMenu->AddItem("Orange" , &Orange , opt_OffOn);

pMenu->AddItem("Green" , &Green , opt_OffOn);

pMenu->AddItem("Blue" , &Blue , opt_OffOn);

pMenu->AddItem("Cyan" , &Cyan , opt_OffOn);

pMenu->AddItem("Pink" , &Pink , opt_OffOn);

pMenu->AddItem("Purple" , &Purple , opt_OffOn);

pMenu->AddItem("White" , &White , opt_OffOn);

pMenu->AddItem("Black" , &Black , opt_OffOn);

pMenu->AddItem("SteelBlue" , &SteelBlue , opt_OffOn);

pMenu->AddItem("LightSteelBlue" , &LightSteelBlue , opt_OffOn);

pMenu->AddItem("LightBlue" , &LightBlue , opt_OffOn);

pMenu->AddItem("Salmon" , &Salmon , opt_OffOn);

pMenu->AddItem("Teal" , &Teal , opt_OffOn);

pMenu->AddItem("Brown" , &Brown , opt_OffOn);

pMenu->AddItem("Lime" , &Lime , opt_OffOn);

pMenu->AddItem("ElectricLime" , &ElectricLime , opt_OffOn);

pMenu->AddItem("Gold" , &Gold , opt_OffOn);

pMenu->AddItem("OrangeRed" , &OrangeRed , opt_OffOn);

pMenu->AddItem("GreenYellow" , &GreenYellow , opt_OffOn);

pMenu->AddItem("AquaMarine" , &AquaMarine , opt_OffOn);

pMenu->AddItem("SkyBlue" , &SkyBlue , opt_OffOn);

pMenu->AddItem("SlateBlue" , &SlateBlue , opt_OffOn);

pMenu->AddItem("Crimson" , &Crimson , opt_OffOn);

pMenu->AddItem("DarkOliveGreen" , &DarkOliveGreen , opt_OffOn);

pMenu->AddItem("PaleGreen" , &PaleGreen , opt_OffOn);

pMenu->AddItem("DarkGoldenRod" , &DarkGoldenRod , opt_OffOn);

pMenu->AddItem("FireBrick" , &FireBrick , opt_OffOn);

pMenu->AddItem("DarkBlue" , &DarkBlue , opt_OffOn);

pMenu->AddItem("DarkerBlue" , &DarkerBlue , opt_OffOn);

pMenu->AddItem("DarkYellow" , &DarkYellow , opt_OffOn);

pMenu->AddItem("LightYellow" , &LightYellow , opt_OffOn);

}

 

if (CH_Chams2)

{

pMenu->AddItem("Red" , &Red2 , opt_OffOn);

pMenu->AddItem("Yellow" , &Yellow2 , opt_OffOn);

pMenu->AddItem("Orange" , &Orange2 , opt_OffOn);

pMenu->AddItem("Green" , &Green2 , opt_OffOn);

pMenu->AddItem("Blue" , &Blue2 , opt_OffOn);

pMenu->AddItem("Cyan" , &Cyan2 , opt_OffOn);

pMenu->AddItem("Pink" , &Pink2 , opt_OffOn);

pMenu->AddItem("Purple" , &Purple2 , opt_OffOn);

pMenu->AddItem("White" , &White2 , opt_OffOn);

pMenu->AddItem("Black" , &Black2 , opt_OffOn);

pMenu->AddItem("SteelBlue" , &SteelBlue2 , opt_OffOn);

pMenu->AddItem("LightSteelBlue" , &LightSteelBlue2 , opt_OffOn);

pMenu->AddItem("LightBlue" , &LightBlue2 , opt_OffOn);

pMenu->AddItem("Salmon" , &Salmon2 , opt_OffOn);

pMenu->AddItem("Teal" , &Teal2 , opt_OffOn);

pMenu->AddItem("Brown" , &Brown2 , opt_OffOn);

pMenu->AddItem("Lime" , &Lime2 , opt_OffOn);

pMenu->AddItem("ElectricLime" , &ElectricLime2 , opt_OffOn);

pMenu->AddItem("Gold" , &Gold2 , opt_OffOn);

pMenu->AddItem("OrangeRed" , &OrangeRed2 , opt_OffOn);

pMenu->AddItem("GreenYellow" , &GreenYellow2 , opt_OffOn);

pMenu->AddItem("AquaMarine" , &AquaMarine2 , opt_OffOn);

pMenu->AddItem("SkyBlue" , &SkyBlue2 , opt_OffOn);

pMenu->AddItem("SlateBlue" , &SlateBlue2 , opt_OffOn);

pMenu->AddItem("Crimson" , &Crimson2 , opt_OffOn);

pMenu->AddItem("DarkOliveGreen" , &DarkOliveGreen2 , opt_OffOn);

pMenu->AddItem("PaleGreen" , &PaleGreen2 , opt_OffOn);

pMenu->AddItem("DarkGoldenRod" , &DarkGoldenRod2 , opt_OffOn);

pMenu->AddItem("FireBrick" , &FireBrick2 , opt_OffOn);

pMenu->AddItem("DarkBlue" , &DarkBlue2 , opt_OffOn);

pMenu->AddItem("DarkerBlue" , &DarkerBlue2 , opt_OffOn);

pMenu->AddItem("DarkYellow" , &DarkYellow2 , opt_OffOn);

pMenu->AddItem("LightYellow" , &LightYellow2 , opt_OffOn);

}

}

// --- simple FPS vars and function

int FPScounter = 0;

float FPSfLastTickCount = 0.0f;

float FPSfCurrentTickCount;

void FPScheck(char *str, char *format)

{

FPSfCurrentTickCount = clock() * 0.001f;

FPScounter++;

if((FPSfCurrentTickCount - FPSfLastTickCount) > 1.0f) {

FPSfLastTickCount = FPSfCurrentTickCount;

sprintf(str,format,FPScounter);

FPScounter = 0;

}

}

// Draw a background

void DrawGui(LPDIRECT3DDEVICE8 Device_Interface, DWORD col)

{

if (CH_back==5) // solid

col|=0xff000000;

else

col|=CH_back*0x30000000; // transparency

DrawBox(Device_Interface,pMenu->x-3,pMenu->y-2,pMenu->totwidth+6,pMenu->totheight+4 ,col);

DrawBox(Device_Interface,pMenu->x-3,pMenu->y-2,pMenu->totwidth+6,pMenu->titleheight+1,col|0xff000000);

}

// called with every EndScene

void DoMenu(LPDIRECT3DDEVICE8 Device_Interface)

{

if (pMenu==0) { // first time , create the menu

pMenu = new D3DMenu("== DarkApallow ==",100,160); // title, maxitems,width

pMenu->visible=1; // make it visible

pMenu->col_title=0xffffffff; // change title color to white

} else {

FPScheck(sFPS,"%d Fps");

if (pMenu->noitems==0) RebuildMenu();

if (pMenu->visible && CH_back) DrawGui(Device_Interface,0x000000); // black background

pMenu->Show(pFont);

pMenu->Nav();

}

}

//=======================================================================================

HRESULT WINAPI Direct3DCreate8_VMTable(VOID)

{

LPDIRECT3D8 Direct3D_Object = Direct3DCreate8(D3D_SDK_VERSION);

 

if(Direct3D_Object == NULL)

return D3DERR_INVALIDCALL;

 

Direct3D_VMTable = (PDWORD)*(PDWORD)Direct3D_Object;

Direct3D_Object->Release();

 

DWORD dwProtect;

 

if(VirtualProtect(&Direct3D_VMTable[15], sizeof(DWORD), PAGE_READWRITE, &dwProtect) != 0)

{

*(PDWORD)&CreateDevice_Pointer = Direct3D_VMTable[15];

*(PDWORD)&Direct3D_VMTable[15] = (DWORD)CreateDevice_Detour;

 

if(VirtualProtect(&Direct3D_VMTable[15], sizeof(DWORD), dwProtect, &dwProtect) == 0)

return D3DERR_INVALIDCALL;

}

else

return D3DERR_INVALIDCALL;

 

return D3D_OK;

}

 

//=====================================================================================

 

HRESULT WINAPI CreateDevice_Detour(LPDIRECT3D8 Direct3D_Object, UINT Adapter, D3DDEVTYPE DeviceType, HWND FocusWindow,

DWORD BehaviorFlags, D3DPRESENT_PARAMETERS* PresentationParameters,

LPDIRECT3DDEVICE8* Returned_Device_Interface)

{

HRESULT Returned_Result = CreateDevice_Pointer(Direct3D_Object, Adapter, DeviceType, FocusWindow, BehaviorFlags,

PresentationParameters, Returned_Device_Interface);

 

DWORD dwProtect;

 

if(VirtualProtect(&Direct3D_VMTable[15], sizeof(DWORD), PAGE_READWRITE, &dwProtect) != 0)

{

*(PDWORD)&Direct3D_VMTable[15] = *(PDWORD)&CreateDevice_Pointer;

CreateDevice_Pointer = NULL;

 

if(VirtualProtect(&Direct3D_VMTable[15], sizeof(DWORD), dwProtect, &dwProtect) == 0)

return D3DERR_INVALIDCALL;

}

else

return D3DERR_INVALIDCALL;

 

if(Returned_Result == D3D_OK)

{

Direct3D_VMTable = (PDWORD)*(PDWORD)*Returned_Device_Interface;

 

*(PDWORD)&Reset_Pointer = (DWORD)Direct3D_VMTable[14];

*(PDWORD)&EndScene_Pointer = (DWORD)Direct3D_VMTable[35];

*(PDWORD)&DrawIndexedPrimitive_Pointer = (DWORD)Direct3D_VMTable[71];

*(PDWORD)&SetViewport_Pointer = (DWORD)Direct3D_VMTable[40];

 

*(PDWORD)&Direct3D_VMTable[14] = (DWORD)Reset_Detour;

*(PDWORD)&Direct3D_VMTable[35] = (DWORD)EndScene_Detour;

*(PDWORD)&Direct3D_VMTable[71] = (DWORD)DrawIndexedPrimitive_Detour;

*(PDWORD)&Direct3D_VMTable[40] = (DWORD)SetViewport_Detour;

}

 

return Returned_Result;

}

d3dfont8.h

Code:

 

//-----------------------------------------------------------------------------

// File: D3DFont.h

// Desc: Texture-based font class

// Copyright © 1999-2001 Microsoft Corporation. All rights reserved.

//-----------------------------------------------------------------------------

#ifndef D3DFONT_H

#define D3DFONT_H

#include <tchar.h>

#include <d3d8.h>

 

// Font creation flags

#define D3DFONT_BOLD 0x0001

#define D3DFONT_ITALIC 0x0002

#define D3DFONT_ZENABLE 0x0004

// Font rendering flags

#define D3DFONT_CENTERED 0x0001

#define D3DFONT_TWOSIDED 0x0002

#define D3DFONT_FILTERED 0x0004

#define D3DFONT_RIGHT 0x0008 // non standard

#define D3DFONT_SHADOW 0x0010 // non standard

 

 

//-----------------------------------------------------------------------------

// Name: class CD3DFont

// Desc: Texture-based font class for doing text in a 3D scene.

//-----------------------------------------------------------------------------

class CD3DFont

{

TCHAR m_strFontName[80]; // Font properties

DWORD m_dwFontHeight;

DWORD m_dwFontFlags;

LPDIRECT3DDEVICE8 m_pd3dDevice; // A D3DDevice used for rendering

LPDIRECT3DTEXTURE8 m_pTexture; // The d3d texture for this font

LPDIRECT3DVERTEXBUFFER8 m_pVB; // VertexBuffer for rendering text

DWORD m_dwTexWidth; // Texture dimensions

DWORD m_dwTexHeight;

FLOAT m_fTextScale;

FLOAT m_fTexCoords[128-32][4];

DWORD m_dwSpacing; // Character pixel spacing per side

// Stateblocks for setting and restoring render states

DWORD m_dwSavedStateBlock;

DWORD m_dwDrawTextStateBlock;

public:

// 2D and 3D text drawing functions

HRESULT DrawText( FLOAT x, FLOAT y, DWORD dwColor,

TCHAR* strText, DWORD dwFlags=0L );

 

// Function to get extent of text

HRESULT GetTextExtent( TCHAR* strText, SIZE* pSize );

// Initializing and destroying device-dependent objects

HRESULT InitDeviceObjects( LPDIRECT3DDEVICE8 pd3dDevice );

HRESULT RestoreDeviceObjects();

HRESULT InvalidateDeviceObjects();

HRESULT DeleteDeviceObjects();

// Constructor / destructor

CD3DFont( TCHAR* strFontName, DWORD dwHeight, DWORD dwFlags=0L );

~CD3DFont();

};

 

 

 

#endif

Code:

 

menu2.h

 

// Project : Basic D3D Menu v1.4

// Author : Hans211

// Date : 11 April 2009

#ifndef _D3DMENU_H

#define _D3DMENU_H

#include "Soldierfront.h"

 

#ifndef D3DFONT_RIGHT

#define D3DFONT_RIGHT 0x0008

#endif

#ifndef D3DFONT_SHADOW

#define D3DFONT_SHADOW 0x0010

#endif

#define MENUGROUP 1

#define MENUTEXT 2

#define MENUITEM 3

#define MCOLOR_TITLE 0xffff1111

#define MCOLOR_CURRENT 0xffff0000

#define MCOLOR_GROUP 0xffffff00

#define MCOLOR_TEXT 0xffe0e0e0

#define MCOLOR_OFF 0xffa0a0a0

#define MCOLOR_ON 0xffffffff

typedef struct {

int typ; // type of menuline, folder, item

char *txt; // text to show

char **opt; // array of options

int *var; // variable containing current status

int maxval; // maximumvalue, normally 1 gives 0=off 1=on

} tMENU;

class D3DMenu

{

public:

D3DMenu(char *Name=0, int maxentries=99, int maxwidth=160)

{

title=Name;

maxitems=maxentries;

cur=noitems=visible=0;

x=y=15;

totwidth=ofs=maxwidth;

height=15;

titleheight=totheight=height+4;

col_title =MCOLOR_TITLE;

col_group =MCOLOR_GROUP;

col_text =MCOLOR_TEXT;

col_off =MCOLOR_OFF;

col_on =MCOLOR_ON;

col_current=MCOLOR_CURRENT;

// allocate menu array

MENU=(tMENU **)malloc(4*maxitems);

for (int i=0; i<maxitems; i++) MENU
=(tMENU *)malloc(sizeof(tMENU));

}

~D3DMenu() {

for (int i=0; i<maxitems; i++) free(MENU
);

free(MENU);

}

// colors

DWORD col_title;

DWORD col_group;

DWORD col_text;

DWORD col_off;

DWORD col_on;

DWORD col_current;

// position and sizes

int x,y; // current position of the menu

int totwidth,totheight; // total width and height of menu

int height; // height of 1 menuline

int titleheight; // some extra height for a title

int ofs; // offset for option text

// menu vars

char *title; // some menu title

int cur; // current highlighted menuitem

int noitems; // number of menu items

int visible; // 1 = menu is visible

tMENU **MENU;

 

void AddItem (char *txt, int *var, char **opt, int maxvalue=2, int typ=MENUITEM);

void AddGroup(char *txt, int *var, char **opt, int maxvalue=2);

void AddText (char *txt, char *opt="");

void Show(CD3DFont *pFont);

void Nav(void);

private:

int maxitems;

};

#endif

Soldierfront.h

Code:

 

#include "menu2.h"

#include "stdafx.h"

extern CD3DFont *pFont;

void DrawBox(LPDIRECT3DDEVICE8 pDevice, int x, int y, int w, int h, D3DCOLOR color);

void PreReset (LPDIRECT3DDEVICE8 pDevice);

void PostReset(LPDIRECT3DDEVICE8 pDevice);

extern int noFPS;

void RebuildMenu(void);

void DoMenu(LPDIRECT3DDEVICE8 pDevice);

stdafx.h

Code:

 

// stdafx.h : include file for standard system include files,

// or project specific include files that are used frequently, but

// are changed infrequently

//

#pragma once

#include "targetver.h"

#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers

// Windows Header Files:

#include <windows.h>

#include <d3d8.h>

#pragma comment(lib, "d3d8.lib")

#include <d3dx8.h>

#include "d3dfont8.h"

#pragma comment(lib, "d3dx8.lib")

#include "menu2.h"

#include "d3dfont8.h"

#include "Soldierfront.h"

#include <stdio.h>

#include <time.h>

#include <mmsystem.h>

#include <stdio.h>

#include <fstream>

#pragma comment(lib, "winmm.lib")

#include <iostream>

// TODO: reference additional headers your program requires here

Menu2.cpp

 

Code:

 

#include "stdafx.h"

#include "menu2.h"

// Adding items, group, text to the menu

void D3DMenu::AddItem(char *txt, int *var, char **opt, int maxval, int typ)

{

if (noitems>=(maxitems-1)) return;

MENU[noitems]->typ=typ;

MENU[noitems]->txt=txt;

MENU[noitems]->opt=opt;

MENU[noitems]->var=var;

MENU[noitems]->maxval=maxval;

noitems++;

totheight=(noitems*height)+titleheight;

}

void D3DMenu::AddGroup(char *txt, int *var, char **opt, int maxval)

{

AddItem(txt, var, opt, maxval, MENUGROUP);

}

void D3DMenu::AddText(char *txt, char *opt)

{

AddItem(txt,0,(char **)opt,0,MENUTEXT);

}

// Show the Menu

void D3DMenu::Show(CD3DFont *pFont)

{

int i,val,cy;

DWORD color;

 

if (!visible) return;

cy=y;

if (title) {

pFont->DrawText((float)(x+totwidth/2), (float)cy+1, col_title,title,D3DFONT_SHADOW|D3DFONT_CENTERED);

cy+=titleheight;

}

for (i=0; i<noitems; i++) {

if (MENU
->typ==MENUTEXT) {

pFont->DrawText((float)x, (float)cy, col_text,MENU
->txt,D3DFONT_SHADOW);

if (MENU
->opt) {

pFont->DrawText((float)(x+ofs), (float)cy, col_text,(char *)MENU
->opt, D3DFONT_RIGHT|D3DFONT_SHADOW);

}

} else {

val=(MENU
->var)?(*MENU
->var):0;

// determine color

if (i==cur)

color=col_current;

else if (MENU
->typ==MENUGROUP)

color=col_group;

else

color=(val)?col_on:col_off;

pFont->DrawText((float)x, (float)cy, color,MENU
->txt,D3DFONT_SHADOW);

if (MENU
->opt) {

pFont->DrawText((float)(x+ofs), (float)cy, color,(char *)MENU
->opt[val],D3DFONT_RIGHT|D3DFONT_SHADOW);

}

}

cy+=height;

}

}

// check for Menu navigation keys

void D3DMenu::Nav(void)

{

if (GetAsyncKeyState(VK_INSERT)&1) visible=(!visible);

if (!visible) return;

if (GetAsyncKeyState(VK_CONTROL) ) {

if (GetAsyncKeyState(VK_UP)&1 ) y-=10;

if (GetAsyncKeyState(VK_DOWN)&1 ) y+=10;

if (GetAsyncKeyState(VK_LEFT)&1 ) x-=10;

if (GetAsyncKeyState(VK_RIGHT)&1) x+=10;

} else {

if (GetAsyncKeyState(VK_UP)&1) {

do {

cur--;

if (cur<0) cur=noitems-1;

} while (MENU[cur]->typ==MENUTEXT); // skip textitems

} else if (GetAsyncKeyState(VK_DOWN)&1) {

do {

cur++;

if (cur==noitems) cur=0;

} while (MENU[cur]->typ==MENUTEXT); // skip textitems

} else if (MENU[cur]->var) {

int dir=0;

// bugfix: thx to Dxt-Wieter20

if (GetAsyncKeyState(VK_LEFT )&1 && *MENU[cur]->var > 0 ) dir=-1;

if (GetAsyncKeyState(VK_RIGHT)&1 && *MENU[cur]->var < (MENU[cur]->maxval-1)) dir=1;

if (dir) {

*MENU[cur]->var += dir;

if (MENU[cur]->typ==MENUGROUP) noitems=0; // change on menufolder, force a rebuild

}

}

}

}

d3dfont8.cpp

 

Code:

 

// -----------------------------------------------------------------------------

// File: D3DFont.cpp

// Desc: Texture-based font class

// Copyright © 1999-2001 Microsoft Corporation. All rights reserved.

//

// Changes by Hans211

// - Added D3D_FONT_RIGHT

// - Stripped not needed functions

// -----------------------------------------------------------------------------

#include"stdafx.h"

#include<windows.h>

#include<d3d8.h>

#pragmacomment(lib, "d3d8.lib")

#include<d3dx8.h>

#pragmacomment(lib, "d3dx8.lib")

#include<stdio.h>

#include"menu2.h"

#include"d3dfont8.h"

#include<time.h>

#include"Soldierfront.h"

#include<mmsystem.h>

#include<stdio.h>

#include<fstream>

#pragmacomment(lib, "winmm.lib")

//-----------------------------------------------------------------------------

// Custom vertex types for rendering text

//-----------------------------------------------------------------------------

#define MAX_NUM_VERTICES 50*6

struct FONT2DVERTEX { D3DXVECTOR4 p; DWORD color; FLOAT tu, tv; };

struct FONT3DVERTEX { D3DXVECTOR3 p; D3DXVECTOR3 n; FLOAT tu, tv; };

#define D3DFVF_FONT2DVERTEX (D3DFVF_XYZRHW|D3DFVF_DIFFUSE|D3DFVF_TEX1)

#define D3DFVF_FONT3DVERTEX (D3DFVF_XYZ|D3DFVF_NORMAL|D3DFVF_TEX1)

inline FONT2DVERTEX InitFont2DVertex( const D3DXVECTOR4& p, D3DCOLOR color,

FLOAT tu, FLOAT tv )

{

FONT2DVERTEX v; v.p = p; v.color = color; v.tu = tu; v.tv = tv;

return v;

}

inline FONT3DVERTEX InitFont3DVertex( const D3DXVECTOR3& p, const D3DXVECTOR3& n,

FLOAT tu, FLOAT tv )

{

FONT3DVERTEX v; v.p = p; v.n = n; v.tu = tu; v.tv = tv;

return v;

}

 

 

 

//-----------------------------------------------------------------------------

// Name: CD3DFont()

// Desc: Font class constructor

//-----------------------------------------------------------------------------

CD3DFont::CD3DFont( TCHAR* strFontName, DWORD dwHeight, DWORD dwFlags )

{

strcpy( m_strFontName, strFontName );

m_dwFontHeight = dwHeight;

m_dwFontFlags = dwFlags;

m_pd3dDevice = NULL;

m_pTexture = NULL;

m_pVB = NULL;

m_dwSavedStateBlock = 0L;

m_dwDrawTextStateBlock = 0L;

}

 

 

 

//-----------------------------------------------------------------------------

// Name: ~CD3DFont()

// Desc: Font class destructor

//-----------------------------------------------------------------------------

CD3DFont::~CD3DFont()

{

InvalidateDeviceObjects();

DeleteDeviceObjects();

}

 

 

 

//-----------------------------------------------------------------------------

// Name: InitDeviceObjects()

// Desc: Initializes device-dependent objects, including the vertex buffer used

// for rendering text and the texture map which stores the font image.

//-----------------------------------------------------------------------------

HRESULT CD3DFont::InitDeviceObjects( LPDIRECT3DDEVICE8 pd3dDevice )

{

HRESULT hr;

// Keep a local copy of the device

m_pd3dDevice = pd3dDevice;

// Establish the font and texture size

m_fTextScale = 1.0f; // Draw fonts into texture without scaling

// Large fonts need larger textures

if( m_dwFontHeight > 40 )

m_dwTexWidth = m_dwTexHeight = 1024;

elseif( m_dwFontHeight > 20 )

m_dwTexWidth = m_dwTexHeight = 512;

else

m_dwTexWidth = m_dwTexHeight = 256;

// If requested texture is too big, use a smaller texture and smaller font,

// and scale up when rendering.

D3DCAPS8 d3dCaps;

m_pd3dDevice->GetDeviceCaps( &d3dCaps );

if( m_dwTexWidth > d3dCaps.MaxTextureWidth )

{

m_fTextScale = (FLOAT)d3dCaps.MaxTextureWidth / (FLOAT)m_dwTexWidth;

m_dwTexWidth = m_dwTexHeight = d3dCaps.MaxTextureWidth;

}

// Create a new texture for the font

hr = m_pd3dDevice->CreateTexture( m_dwTexWidth, m_dwTexHeight, 1,

0, D3DFMT_A4R4G4B4,

D3DPOOL_MANAGED, &m_pTexture );

if( FAILED(hr) )

return hr;

// Prepare to create a bitmap

DWORD* pBitmapBits;

BITMAPINFO bmi;

ZeroMemory( &bmi.bmiHeader, sizeof(BITMAPINFOHEADER) );

bmi.bmiHeader.biSize = sizeof(BITMAPINFOHEADER);

bmi.bmiHeader.biWidth = (int)m_dwTexWidth;

bmi.bmiHeader.biHeight = -(int)m_dwTexHeight;

bmi.bmiHeader.biPlanes = 1;

bmi.bmiHeader.biCompression = BI_RGB;

bmi.bmiHeader.biBitCount = 32;

// Create a DC and a bitmap for the font

HDC hDC = CreateCompatibleDC( NULL );

HBITMAP hbmBitmap = CreateDIBSection( hDC, &bmi, DIB_RGB_COLORS,

(VOID**)&pBitmapBits, NULL, 0 );

SetMapMode( hDC, MM_TEXT );

// Create a font. By specifying ANTIALIASED_QUALITY, we might get an

// antialiased font, but this is not guaranteed.

INT nHeight = -MulDiv( m_dwFontHeight,

(INT)(GetDeviceCaps(hDC, LOGPIXELSY) * m_fTextScale), 72 );

DWORD dwBold = (m_dwFontFlags&D3DFONT_BOLD) ? FW_BOLD : FW_NORMAL;

DWORD dwItalic = (m_dwFontFlags&D3DFONT_ITALIC) ? TRUE : FALSE;

HFONT hFont = CreateFont( nHeight, 0, 0, 0, dwBold, dwItalic,

FALSE, FALSE, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS,

CLIP_DEFAULT_PRECIS, ANTIALIASED_QUALITY,

VARIABLE_PITCH, m_strFontName );

if( NULL==hFont )

return E_FAIL;

SelectObject( hDC, hbmBitmap );

SelectObject( hDC, hFont );

// Set text properties

SetTextColor( hDC, RGB(255,255,255) );

SetBkColor( hDC, 0x00000000 );

SetTextAlign( hDC, TA_TOP );

// Loop through all printable character and output them to the bitmap..

// Meanwhile, keep track of the corresponding tex coords for each character.

DWORD x = 0;

DWORD y = 0;

TCHAR str[2] = _T("x");

SIZE size;

// Calculate the spacing between characters based on line height

GetTextExtentPoint32( hDC, TEXT(" "), 1, &size );

x = m_dwSpacing = (DWORD) ceil(size.cy * 0.3f);

for( TCHAR c=32; c<127; c++ )

{

str[0] = c;

GetTextExtentPoint32( hDC, str, 1, &size );

if( (DWORD)(x+size.cx+1) > m_dwTexWidth )

{

x = m_dwSpacing;

y += size.cy+1;

}

ExtTextOut( hDC, x+0, y+0, ETO_OPAQUE, NULL, str, 1, NULL );

m_fTexCoords[c-32][0] = ((FLOAT)(x+0 -m_dwSpacing))/m_dwTexWidth;

m_fTexCoords[c-32][1] = ((FLOAT)(y+0 +0 ))/m_dwTexHeight;

m_fTexCoords[c-32][2] = ((FLOAT)(x+size.cx+m_dwSpacing))/m_dwTexWidth;

m_fTexCoords[c-32][3] = ((FLOAT)(y+size.cy+0 ))/m_dwTexHeight;

x += size.cx+(2 * m_dwSpacing);

}

// Lock the surface and write the alpha values for the set pixels

D3DLOCKED_RECT d3dlr;

m_pTexture->LockRect( 0, &d3dlr, 0, 0 );

BYTE* pDstRow = (BYTE*)d3dlr.pBits;

WORD* pDst16;

BYTE bAlpha; // 4-bit measure of pixel intensity

for( y=0; y < m_dwTexHeight; y++ )

{

pDst16 = (WORD*)pDstRow;

for( x=0; x < m_dwTexWidth; x++ )

{

bAlpha = (BYTE)((pBitmapBits[m_dwTexWidth*y + x] & 0xff) >> 4);

if (bAlpha > 0)

{

*pDst16++ = (bAlpha << 12) | 0x0fff;

}

else

{

*pDst16++ = 0x0000;

}

}

pDstRow += d3dlr.Pitch;

}

// Done updating texture, so clean up used objects

m_pTexture->UnlockRect(0);

DeleteObject( hbmBitmap );

DeleteDC( hDC );

DeleteObject( hFont );

return S_OK;

}

 

 

 

//-----------------------------------------------------------------------------

// Name: RestoreDeviceObjects()

// Desc:

//-----------------------------------------------------------------------------

HRESULT CD3DFont::RestoreDeviceObjects()

{

HRESULT hr;

// Create vertex buffer for the letters

if( FAILED( hr = m_pd3dDevice->CreateVertexBuffer( MAX_NUM_VERTICES*sizeof(FONT2DVERTEX),

D3DUSAGE_WRITEONLY | D3DUSAGE_DYNAMIC, 0,

D3DPOOL_DEFAULT, &m_pVB ) ) )

{

return hr;

}

// Create the state blocks for rendering text

for( UINT which=0; which<2; which++ )

{

m_pd3dDevice->BeginStateBlock();

m_pd3dDevice->SetTexture( 0, m_pTexture );

if ( D3DFONT_ZENABLE & m_dwFontFlags )

m_pd3dDevice->SetRenderState( D3DRS_ZENABLE, TRUE );

else

m_pd3dDevice->SetRenderState( D3DRS_ZENABLE, FALSE );

m_pd3dDevice->SetRenderState( D3DRS_ALPHABLENDENABLE, TRUE );

m_pd3dDevice->SetRenderState( D3DRS_SRCBLEND, D3DBLEND_SRCALPHA );

m_pd3dDevice->SetRenderState( D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA );

m_pd3dDevice->SetRenderState( D3DRS_ALPHATESTENABLE, TRUE );

m_pd3dDevice->SetRenderState( D3DRS_ALPHAREF, 0x08 );

m_pd3dDevice->SetRenderState( D3DRS_ALPHAFUNC, D3DCMP_GREATEREQUAL );

m_pd3dDevice->SetRenderState( D3DRS_FILLMODE, D3DFILL_SOLID );

m_pd3dDevice->SetRenderState( D3DRS_CULLMODE, D3DCULL_CCW );

m_pd3dDevice->SetRenderState( D3DRS_STENCILENABLE, FALSE );

m_pd3dDevice->SetRenderState( D3DRS_CLIPPING, TRUE );

m_pd3dDevice->SetRenderState( D3DRS_EDGEANTIALIAS, FALSE );

m_pd3dDevice->SetRenderState( D3DRS_CLIPPLANEENABLE, FALSE );

m_pd3dDevice->SetRenderState( D3DRS_VERTEXBLEND, FALSE );

m_pd3dDevice->SetRenderState( D3DRS_INDEXEDVERTEXBLENDENABLE, FALSE );

m_pd3dDevice->SetRenderState( D3DRS_FOGENABLE, FALSE );

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLOROP, D3DTOP_MODULATE );

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG1, D3DTA_TEXTURE );

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_COLORARG2, D3DTA_DIFFUSE );

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAOP, D3DTOP_MODULATE );

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE );

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_ALPHAARG2, D3DTA_DIFFUSE );

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_MINFILTER, D3DTEXF_POINT );

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_MAGFILTER, D3DTEXF_POINT );

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_MIPFILTER, D3DTEXF_NONE );

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_TEXCOORDINDEX, 0 );

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_TEXTURETRANSFORMFLAGS, D3DTTFF_DISABLE );

m_pd3dDevice->SetTextureStageState( 1, D3DTSS_COLOROP, D3DTOP_DISABLE );

m_pd3dDevice->SetTextureStageState( 1, D3DTSS_ALPHAOP, D3DTOP_DISABLE );

if( which==0 )

m_pd3dDevice->EndStateBlock( &m_dwSavedStateBlock );

else

m_pd3dDevice->EndStateBlock( &m_dwDrawTextStateBlock );

}

return S_OK;

}

 

 

 

//-----------------------------------------------------------------------------

// Name: InvalidateDeviceObjects()

// Desc: Destroys all device-dependent objects

//-----------------------------------------------------------------------------

HRESULT CD3DFont::InvalidateDeviceObjects()

{

m_pVB->Release();

// Delete the state blocks

if( m_pd3dDevice )

{

if( m_dwSavedStateBlock )

m_pd3dDevice->DeleteStateBlock( m_dwSavedStateBlock );

if( m_dwDrawTextStateBlock )

m_pd3dDevice->DeleteStateBlock( m_dwDrawTextStateBlock );

}

m_dwSavedStateBlock = 0L;

m_dwDrawTextStateBlock = 0L;

return S_OK;

}

 

 

 

//-----------------------------------------------------------------------------

// Name: DeleteDeviceObjects()

// Desc: Destroys all device-dependent objects

//-----------------------------------------------------------------------------

HRESULT CD3DFont::DeleteDeviceObjects()

{

m_pTexture->Release();

m_pd3dDevice = NULL;

return S_OK;

}

 

 

 

//-----------------------------------------------------------------------------

// Name: GetTextExtent()

// Desc: Get the dimensions of a text string

//-----------------------------------------------------------------------------

HRESULT CD3DFont::GetTextExtent( TCHAR* strText, SIZE* pSize )

{

if( NULL==strText || NULL==pSize )

return E_FAIL;

FLOAT fRowWidth = 0.0f;

FLOAT fRowHeight = (m_fTexCoords[0][3]-m_fTexCoords[0][1])*m_dwTexHeight;

FLOAT fWidth = 0.0f;

FLOAT fHeight = fRowHeight;

while( *strText )

{

TCHAR c = *strText++;

if( c == _T('\n') )

{

fRowWidth = 0.0f;

fHeight += fRowHeight;

}

if( (c-32) < 0 || (c-32) >= 128-32 )

continue;

FLOAT tx1 = m_fTexCoords[c-32][0];

FLOAT tx2 = m_fTexCoords[c-32][2];

fRowWidth += (tx2-tx1)*m_dwTexWidth - 2*m_dwSpacing;

if( fRowWidth > fWidth )

fWidth = fRowWidth;

}

pSize->cx = (int)fWidth;

pSize->cy = (int)fHeight;

return S_OK;

}

 

//-----------------------------------------------------------------------------

// Name: DrawText()

// Desc: Draws 2D text

//-----------------------------------------------------------------------------

HRESULT CD3DFont::DrawText( FLOAT sx, FLOAT sy, DWORD dwColor,

TCHAR* strText, DWORD dwFlags )

{

if( m_pd3dDevice == NULL )

return E_FAIL;

// Setup renderstate

m_pd3dDevice->CaptureStateBlock( m_dwSavedStateBlock );

m_pd3dDevice->ApplyStateBlock( m_dwDrawTextStateBlock );

m_pd3dDevice->SetVertexShader( D3DFVF_FONT2DVERTEX );

m_pd3dDevice->SetPixelShader( NULL );

m_pd3dDevice->SetStreamSource( 0, m_pVB, sizeof(FONT2DVERTEX) );

// Set filter states

if( dwFlags & D3DFONT_FILTERED )

{

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_MINFILTER, D3DTEXF_LINEAR );

m_pd3dDevice->SetTextureStageState( 0, D3DTSS_MAGFILTER, D3DTEXF_LINEAR );

}

// Hans211: small adaption for right an centered alignment

if( dwFlags & D3DFONT_RIGHT ) {

SIZE sz;

GetTextExtent( strText, &sz );

sx -= (FLOAT)sz.cx;

} elseif( dwFlags & D3DFONT_CENTERED ) {

SIZE sz;

GetTextExtent( strText, &sz );

sx -= (FLOAT)sz.cx/2.0f;

}

// Adjust for character spacing

sx -= m_dwSpacing;

FLOAT fStartX = sx;

// Fill vertex buffer

FONT2DVERTEX* pVertices = NULL;

DWORD dwNumTriangles = 0;

m_pVB->Lock( 0, 0, (BYTE**)&pVertices, D3DLOCK_DISCARD );

while( *strText )

{

TCHAR c = *strText++;

if( c == _T('\n') )

{

sx = fStartX;

sy += (m_fTexCoords[0][3]-m_fTexCoords[0][1])*m_dwTexHeight;

}

if( (c-32) < 0 || (c-32) >= 128-32 )

continue;

FLOAT tx1 = m_fTexCoords[c-32][0];

FLOAT ty1 = m_fTexCoords[c-32][1];

FLOAT tx2 = m_fTexCoords[c-32][2];

FLOAT ty2 = m_fTexCoords[c-32][3];

FLOAT w = (tx2-tx1) * m_dwTexWidth / m_fTextScale;

FLOAT h = (ty2-ty1) * m_dwTexHeight / m_fTextScale;

if( c != _T(' ') )

{

*pVertices++ = InitFont2DVertex( D3DXVECTOR4(sx+0-0.5f,sy+h-0.5f,0.9f,1.0f), dwColor, tx1, ty2 );

*pVertices++ = InitFont2DVertex( D3DXVECTOR4(sx+0-0.5f,sy+0-0.5f,0.9f,1.0f), dwColor, tx1, ty1 );

*pVertices++ = InitFont2DVertex( D3DXVECTOR4(sx+w-0.5f,sy+h-0.5f,0.9f,1.0f), dwColor, tx2, ty2 );

*pVertices++ = InitFont2DVertex( D3DXVECTOR4(sx+w-0.5f,sy+0-0.5f,0.9f,1.0f), dwColor, tx2, ty1 );

*pVertices++ = InitFont2DVertex( D3DXVECTOR4(sx+w-0.5f,sy+h-0.5f,0.9f,1.0f), dwColor, tx2, ty2 );

*pVertices++ = InitFont2DVertex( D3DXVECTOR4(sx+0-0.5f,sy+0-0.5f,0.9f,1.0f), dwColor, tx1, ty1 );

dwNumTriangles += 2;

if( dwNumTriangles*3 > (MAX_NUM_VERTICES-6) )

{

// Unlock, render, and relock the vertex buffer

m_pVB->Unlock();

m_pd3dDevice->DrawPrimitive( D3DPT_TRIANGLELIST, 0, dwNumTriangles );

pVertices = NULL;

m_pVB->Lock( 0, 0, (BYTE**)&pVertices, D3DLOCK_DISCARD );

dwNumTriangles = 0L;

}

}

sx += w - (2 * m_dwSpacing);

}

// Unlock and render the vertex buffer

m_pVB->Unlock();

if( dwNumTriangles > 0 )

m_pd3dDevice->DrawPrimitive( D3DPT_TRIANGLELIST, 0, dwNumTriangles );

// Restore the modified renderstates

m_pd3dDevice->ApplyStateBlock( m_dwSavedStateBlock );

return S_OK;

}

Credits to Hans for the menu, Roverturbo for the hook, and fatboy for the model rec. Thanks to anyone else who helped.

 

Consists of :

 

Chams(Player, Nades, Smoke, Flashbang, Special Nades, Guns)

Adjustable Cham Colors(More than the usual)

FullBright(Player, Guns, Throwing weapons)

NoFog

NoSmoke

NoFlash

AsusWallHack

GlassWalls

WhiteWalls

XQZ Wallhack(Xray, players and guns)

ClearScope

Rainbow Xhair

 

Optional all through hans menu

 

 

Feel Free to add WireFrame in there...

 

Globals:

 

int WireFrame;

 

Dip:

 

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_NEVER);

Device_Interface->SetRenderState(D3DRS_FILLMODE, D3DFILL_WIREFRAME);

Device_Interface->SetRenderState(D3DRS_CULLMODE, D3DCULL_CW);

Device_Interface->SetRenderState(D3DRS_CULLMODE, D3DCULL_CCW);

DrawIndexedPrimitive_Pointer(Device_Interface, Type,BaseIndex, MinIndex, NumVertices, StartIndex, PrimitiveCount);

Device_Interface->SetRenderState(D3DRS_FILLMODE, D3DFILL_SOLID);

Device_Interface->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE);

Device_Interface->SetRenderState(D3DRS_ZFUNC,D3DCMP_LESSEQUAL);

Device_Interface->SetRenderState(D3DRS_CULLMODE, D3DCULL_CW);

Device_Interface->SetRenderState(D3DRS_CULLMODE, D3DCULL_CCW);

Link para o comentário
https://www.webcheats.com.br/topic/2175499-ajudahacker-soldier-front-2/
Compartilhar em outros sites

Pelo que vi não e so de wallhack esses códigos recomendo que use o c++ para criar o walhack tem algumas aulas ensinando a mexer no c++

Entre e me ajude pf =

 

l8Pa0EV.jpg

Link para o comentário
https://www.webcheats.com.br/topic/2175499-ajudahacker-soldier-front-2/#findComment-8664640
Compartilhar em outros sites

Bom pelo o que eu vi esses códigos são para o C++ pois se repara há títulos com .cpp no final... e como dito o Kolunial2 não é somente o wall é muitas outras coisas como gold, HP e Menu D3D.

Sugiro que aprenda a mexer com programação (mais especificadamente C++ pois é mais fácil aprender o algoritmo na minha opinião), depois aprender a mexer com Cheats engine e por fim com VB pois é mais fácil e também possui modulo prontos na net em que você só joga o Pointer e Offsets e o programa já faz o resto.

Sugiro que comece com jogos offline como NFS,RE...

 

Flw boa sorte no seus Cheats.

Link para o comentário
https://www.webcheats.com.br/topic/2175499-ajudahacker-soldier-front-2/#findComment-8664809
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.