Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Hacks.h
- #pragma once
- #include <Windows.h>
- #include "d3d9.h"
- #include <ctime> //for the clock
- #include <iostream>
- #define D3DHOOK_TEXTURES //comment this to disable texture hooking
- #define MAX_MENU_ITEMS 6 //so you limit up to make sure everything else run smoothly
- //MOVE THESE to the top
- //these are just examples you can do your own
- #define WALLHACK 0
- #define CUSTOM_CROSSHAIR 1
- #define NO_RECOIL 2
- #define UNLIM_AMMO 3
- #define AUTO_FIRE 4
- #define HIDE_MENU 5
- const BYTE bRed[60] =
- {
- 0x42, 0x4D, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
- 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
- 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x12, 0x0B, 0x00, 0x00, 0x12, 0x0B, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xFF, 0x00, 0x00, 0x50};
- const BYTE bGreen[60] =
- {
- 0x42, 0x4D, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
- 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
- 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x12, 0x0B, 0x00, 0x00, 0x12, 0x0B, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x20, 0xA0, 0x00, 0x00, 0xFF, 0xFF
- };
- const BYTE bBlue[60] =
- {
- 0x42, 0x4D, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
- 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
- 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x12, 0x0B, 0x00, 0x00, 0x12, 0x0B, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00
- };
- const BYTE bWhite[58] =
- {
- 0x42, 0x4D, 0x3A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x36, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
- 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01,
- 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xFF, 0xFF, 0xFF, 0x00
- };
- //-----------------------------------------------
- //primitives and textures to set chams in
- #define WHITETAIL_MALE (( NumVertices == 1111 && primCount == 1384))
- #define MULE_MALE (( NumVertices == 1141 && primCount == 1666))
- #define COYOTE_MALE (( NumVertices == 422 && primCount == 511 ))
- #define BEAR_MALE (( NumVertices == 422 && primCount == 649))
- #define Animals ((WHITETAIL_MALE || MULE_MALE || COYOTE_MALE || BEAR_MALE))
- //------------------------------------------------
- class Hacks
- {
- public:
- int m_Stride;
- /*Function prototypes*/
- void Hacks::CreateFont(IDirect3DDevice9 *d3dDevice, std::string choiceFont);
- void Hacks::InitializeMenuItems();
- void Hacks::CreateTexture(IDirect3DDevice9 *d3dDevice, LPCVOID colour, UINT ColourSize, LPDIRECT3DTEXTURE9 *texture);
- void Hacks::Draw_Text(LPCSTR TextToDraw, int x, int y, D3DCOLOR Colour);
- void Hacks::DrawMenu(IDirect3DDevice9 *d3dDevice);
- void Hacks::DrawFilledRect(int x, int y, int w, int h, D3DCOLOR color, IDirect3DDevice9* d3dDevice);
- void Hacks::DrawBorderBox( int x, int y, int w, int h, int thickness, D3DCOLOR Colour, IDirect3DDevice9 *d3dDevice);
- void Hacks::KeyboardInput();
- void Hacks::ApllyWallHack(IDirect3DDevice9 *d3dDevice, D3DPRIMITIVETYPE device, INT BaseVertexIndex, UINT MinVertexIndex, UINT NumVertices, UINT startIndex, UINT primCount);
- //our colours For the chams textures
- //Spetznas and opfor
- LPDIRECT3DTEXTURE9 texRed;
- LPDIRECT3DTEXTURE9 texGreen;
- //Marines and SAS
- LPDIRECT3DTEXTURE9 texBlue;
- LPDIRECT3DTEXTURE9 texWhite;
- //used to get window size and other info
- D3DVIEWPORT9 g_ViewPort;
- //our font
- LPD3DXFONT m_font;
- //everything each hack needs bay bay
- struct d3dMenuHack
- {
- bool on;
- std::string name;
- };
- d3dMenuHack hack[MAX_MENU_ITEMS];
- };
- -------------------------------------------
- Hacks.cpp
- #include "hacks.h";
- /*--------------CHEAT RELATED VARS-------------------*/
- int MenuIndex = 0;
- // Create a colour for the text
- D3DCOLOR fontRed = D3DCOLOR_ARGB(255, 255, 0, 0);
- D3DCOLOR fontGreen = D3DCOLOR_ARGB(255, 0, 255, 0);
- D3DCOLOR fontBlue = D3DCOLOR_ARGB(255, 0, 42, 255);
- D3DCOLOR fontWhite = D3DCOLOR_ARGB(255, 255, 255, 255);
- D3DCOLOR fontBlack = D3DCOLOR_ARGB(255, 0, 0, 0);
- /*---------------------------------------------------*/
- void Hacks::CreateFont(IDirect3DDevice9 *d3dDevice, std::string choiceFont)
- {
- D3DXCreateFont( d3dDevice, 20, 0, FW_BOLD, 0, FALSE, DEFAULT_CHARSET,
- OUT_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE,
- choiceFont.c_str(), &m_font );
- }
- void Hacks::InitializeMenuItems()
- {
- hack[WALLHACK].name = " WallHack and chams";
- hack[CUSTOM_CROSSHAIR].name = " Show custom crosshair";
- hack[NO_RECOIL].name = " No Recoil";
- hack[UNLIM_AMMO].name = " Unlimited equipment";
- hack[AUTO_FIRE].name = "All guns Automatic";
- hack[HIDE_MENU].name = " Hide hack [INSERT]";
- //make the hack visible by default
- hack[HIDE_MENU].on = false; //shows hack by default
- }
- void Hacks::CreateTexture(IDirect3DDevice9 *d3dDevice, LPCVOID colour, UINT ColourSize, LPDIRECT3DTEXTURE9 *texture);
- {
- D3DXCreateTextureFromFileInMemory(d3dDevice, colour, ColourSize, texture);
- }
- void Hacks::DrawMenu(IDirect3DDevice9 *d3dDevice)
- {
- if(!hack[HIDE_MENU].on)
- {
- //Add game name here, and put border around it
- DrawFilledRect( 55, 20, 200, 50, fontBlue, d3dDevice );
- DrawBorderBox(55, 20, 200, 50, 4, fontBlack, d3dDevice );
- Draw_Text("COD 4 MP hack", 190, 30, fontWhite);
- //draw back of our hack, transparent black
- DrawFilledRect( 30, 55, 250, (62*MAX_MENU_ITEMS),fontBlue, d3dDevice );
- //draw hack border
- DrawBorderBox(30, 55, 250, (62*MAX_MENU_ITEMS), 6/*was 6*/, fontBlack, d3dDevice );
- //Reset our time and update the text again in 2 secs
- int y = 40;
- for(int i = 0; i < MAX_MENU_ITEMS; i ++)
- {
- //Draw each box's back colour, this will be based on whether the hack is on e.g.
- //red means off and green means on
- DrawFilledRect( 45, 30+y, 220, 40, hack[i].on ? fontGreen : fontRed, d3dDevice );
- //draw box Around Each hack item If the item is highlighted it will show with a white border
- DrawBorderBox(45, 30+y, 220, 40, 4, fontBlack, d3dDevice );
- //draw White border to show the user which hack item is currently selected
- if(MenuIndex == i)
- {
- DrawBorderBox(41, 26+y, 228, 48, 4, fontWhite, d3dDevice );
- }
- //Ternary at its finest, if the hack is on we display the text colour in green
- //otherwise its green
- //Draw_Text(hack[i].KeyAssigned.c_str(), 160 , 32+y, fontWhite);
- Draw_Text(hack[i].name.c_str(), 170 , 39+y, fontBlack);
- //Draw_Text(hack[i].state. c_str(), 355 , 32+y, hack[i].on ? fontGreen : fontRed);
- //used to position the next item below by 30 height units
- y+= 50;
- }
- Draw_Text("Select using arrow keys", 170, ((62*MAX_MENU_ITEMS)+7), fontWhite);
- Draw_Text("Turn ON/OFF [END] key", 170, ((62*MAX_MENU_ITEMS)+27), fontWhite);
- }
- }
- void Hacks::DrawBorderBox( int x, int y, int w, int h, int thickness, D3DCOLOR Colour, IDirect3DDevice9 *pDevice)
- {
- //Top horiz line
- DrawFilledRect( x, y, w, thickness, Colour, pDevice );
- //Left vertical line
- DrawFilledRect( x, y, thickness, h, Colour, pDevice );
- //right vertical line
- DrawFilledRect( (x + w), y, thickness, h, Colour, pDevice );
- //bottom horiz line
- DrawFilledRect( x, y + h, w+thickness, thickness, Colour, pDevice );
- }
- //We receive the 2-D Coordinates the colour and the device we want to use to draw those colours with
- void Hacks::DrawFilledRect(int x, int y, int w, int h, D3DCOLOR color, IDirect3DDevice9* dev)
- {
- //We create our rectangle to draw on screen
- D3DRECT BarRect = { x, y, x + w, y + h };
- //We clear that portion of the screen and display our rectangle
- dev->Clear(1, &BarRect, D3DCLEAR_TARGET | D3DCLEAR_TARGET, color, 0, 0);
- }
- void Hacks::Draw_Text(LPCSTR TextToDraw, int x, int y, D3DCOLOR Colour)
- {
- // Create a rectangle to indicate where on the screen it should be drawn
- RECT rct = {x- 120, y, x+ 120, y + 15};
- // Draw some text
- m_font->DrawText(NULL, TextToDraw, -1, &rct, DT_NOCLIP, Colour );
- }
- void Hacks::KeyboardInput()
- {
- if(GetAsyncKeyState(VK_UP)&1)
- {
- if(MenuIndex > 0)
- {
- MenuIndex--;
- }
- }
- if(GetAsyncKeyState(VK_DOWN)&1)
- {
- if(MenuIndex < MAX_MENU_ITEMS-1)
- {
- MenuIndex++;
- }
- }
- if(GetAsyncKeyState(VK_END)&1)
- {
- hack[MenuIndex].on = !hack[MenuIndex].on;
- if(MenuIndex == NO_RECOIL)
- {
- //this is where we write memory, these are nop values
- }
- if(MenuIndex == UNLIM_AMMO)
- {
- //this is where we write memory
- }
- }
- if(GetAsyncKeyState(VK_INSERT)&1)
- {
- //TEXT DOESNT CHANGE as the hack is either hidden or not
- //and if its hidden you cant tell the user to turn hack on(at least we wont)
- hack[HIDE_MENU].on = !hack[HIDE_MENU].on;
- }
- }
- void Hacks::ApllyWallHack(IDirect3DDevice9 *d3dDevice, D3DPRIMITIVETYPE device, INT BaseVertexIndex, UINT MinVertexIndex, UINT NumVertices, UINT startIndex, UINT primCount);
- {
- if(WHITETAIL_MALE)
- {
- d3dDevice->SetRenderState(D3DRS_ZENABLE,false);
- d3dDevice->SetTexture(0, texRed);
- d3dDevice->DrawIndexedPrimitive(device, DRAW BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
- d3dDevice->SetRenderState(D3DRS_ZENABLE,true);
- }
- if(MULE_MALE)
- {
- d3dDevice->SetRenderState(D3DRS_ZENABLE,false);
- d3dDevice->SetTexture(0, texRed);
- d3dDevice->DrawIndexedPrimitive(device, DRAW BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
- d3dDevice->SetRenderState(D3DRS_ZENABLE,true);
- }
- if(COYOTE_MALE)
- {
- //d3dDevice->SetRenderState(D3DRS_ZENABLE,false);
- //d3dDevice->SetTexture(0, texRed);
- //d3dDevice->DrawIndexedPrimitive(device, DRAW BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
- //d3dDevice->SetRenderState(D3DRS_ZENABLE,true);
- }
- if(BEAR_MALE)
- {
- d3dDevice->SetRenderState(D3DRS_ZENABLE,false);
- d3dDevice->SetTexture(0, texRed);
- d3dDevice->DrawIndexedPrimitive(device, DRAW BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
- d3dDevice->SetRenderState(D3DRS_ZENABLE,true);
- }
- };
- ---------------------------------------------
- d3d9dev.cpp
- #include <iostream>
- #include <windows.h>
- #include "main.h"
- #include "d3d9.h"
- #include <ctime> //for the clock
- #include "Hacks.h"
- Hacks hacks;
- HRESULT CD3DManager::Initialize()
- {
- /*
- initialize Resources such as textures
- (managed and unmanaged [D3DPOOL]),
- vertex buffers, and other D3D rendering resources
- ...
- m_pD3Ddev->CreateTexture(..., ..., &m_pD3Dtexture);
- */
- //create our font
- hacks.CreateFont(m_pD3Ddev, "Moire");
- return S_OK;
- }
- HRESULT CD3DManager::PreReset()
- {
- /*
- release all UNMANAGED [D3DPOOL_DEFAULT]
- textures, vertex buffers, and other
- volitile resources
- ...
- _SAFE_RELEASE(m_pD3Dtexture);
- */
- return S_OK;
- }
- HRESULT CD3DManager::PostReset()
- {
- /*
- re-initialize all UNMANAGED [D3DPOOL_DEFAULT]
- textures, vertex buffers, and other volitile
- resources
- ...
- m_pD3Ddev->CreateTexture(..., ..., &m_pD3Dtexture);
- */
- return S_OK;
- }
- HRESULT CD3DManager::Release()
- {
- /*
- Release all textures, vertex buffers, and
- other resources
- ...
- _SAFE_RELEASE(m_pD3Dtexture);
- */
- return S_OK;
- }
- //-----------------------------------------------------------------------------
- HRESULT APIENTRY hkIDirect3DDevice9::QueryInterface(REFIID riid, LPVOID *ppvObj)
- {
- return m_pD3Ddev->QueryInterface(riid, ppvObj);
- }
- ULONG APIENTRY hkIDirect3DDevice9::AddRef()
- {
- m_refCount++;
- return m_pD3Ddev->AddRef();
- }
- HRESULT APIENTRY hkIDirect3DDevice9::BeginScene()
- {
- static bool RunOnce = true;
- if(RunOnce)
- {
- RunOnce = false;
- hacks.CreateTexture(m_pD3Ddev, (LPCVOID)&bRed, sizeof(bRed), &texRed);
- hacks.InitializeMenuItems();
- }
- return m_pD3Ddev->BeginScene();
- }
- HRESULT APIENTRY hkIDirect3DDevice9::BeginStateBlock()
- {
- return m_pD3Ddev->BeginStateBlock();
- }
- HRESULT APIENTRY hkIDirect3DDevice9::Clear(DWORD Count, CONST D3DRECT *pRects, DWORD Flags, D3DCOLOR Color, float Z, DWORD Stencil)
- {
- return m_pD3Ddev->Clear(Count, pRects, Flags, Color, Z, Stencil);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::ColorFill(IDirect3DSurface9* pSurface,CONST RECT* pRect, D3DCOLOR color)
- {
- return m_pD3Ddev->ColorFill(pSurface,pRect,color);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreateAdditionalSwapChain(D3DPRESENT_PARAMETERS *pPresentationParameters, IDirect3DSwapChain9 **ppSwapChain)
- {
- return m_pD3Ddev->CreateAdditionalSwapChain(pPresentationParameters, ppSwapChain);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreateCubeTexture(UINT EdgeLength,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DCubeTexture9** ppCubeTexture,HANDLE* pSharedHandle)
- {
- return m_pD3Ddev->CreateCubeTexture(EdgeLength, Levels, Usage, Format, Pool, ppCubeTexture,pSharedHandle);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreateDepthStencilSurface(UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Discard,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle)
- {
- return m_pD3Ddev->CreateDepthStencilSurface(Width, Height, Format, MultiSample, MultisampleQuality,Discard,ppSurface, pSharedHandle);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreateIndexBuffer(UINT Length,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DIndexBuffer9** ppIndexBuffer,HANDLE* pSharedHandle)
- {
- return m_pD3Ddev->CreateIndexBuffer(Length, Usage, Format, Pool, ppIndexBuffer,pSharedHandle);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreateOffscreenPlainSurface(UINT Width,UINT Height,D3DFORMAT Format,D3DPOOL Pool,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle)
- {
- return m_pD3Ddev->CreateOffscreenPlainSurface(Width,Height,Format,Pool,ppSurface,pSharedHandle);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreatePixelShader(CONST DWORD* pFunction,IDirect3DPixelShader9** ppShader)
- {
- return m_pD3Ddev->CreatePixelShader(pFunction, ppShader);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreateQuery(D3DQUERYTYPE Type,IDirect3DQuery9** ppQuery)
- {
- return m_pD3Ddev->CreateQuery(Type,ppQuery);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreateRenderTarget(UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Lockable,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle)
- {
- return m_pD3Ddev->CreateRenderTarget(Width, Height, Format, MultiSample,MultisampleQuality, Lockable, ppSurface,pSharedHandle);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreateStateBlock(D3DSTATEBLOCKTYPE Type,IDirect3DStateBlock9** ppSB)
- {
- return m_pD3Ddev->CreateStateBlock(Type, ppSB);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreateTexture(UINT Width,UINT Height,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DTexture9** ppTexture,HANDLE* pSharedHandle)
- {
- HRESULT ret = m_pD3Ddev->CreateTexture(Width, Height, Levels, Usage, Format, Pool, ppTexture, pSharedHandle);
- #ifdef D3DHOOK_TEXTURES
- if(ret == D3D_OK) { new hkIDirect3DTexture9(ppTexture, this, Width, Height, Format); }
- #endif
- return ret;
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreateVertexBuffer(UINT Length,DWORD Usage,DWORD FVF,D3DPOOL Pool,IDirect3DVertexBuffer9** ppVertexBuffer,HANDLE* pSharedHandle)
- {
- return m_pD3Ddev->CreateVertexBuffer(Length, Usage, FVF, Pool, ppVertexBuffer,pSharedHandle);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreateVertexDeclaration(CONST D3DVERTEXELEMENT9* pVertexElements,IDirect3DVertexDeclaration9** ppDecl)
- {
- return m_pD3Ddev->CreateVertexDeclaration(pVertexElements,ppDecl);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreateVertexShader(CONST DWORD* pFunction,IDirect3DVertexShader9** ppShader)
- {
- return m_pD3Ddev->CreateVertexShader(pFunction, ppShader);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::CreateVolumeTexture(UINT Width,UINT Height,UINT Depth,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DVolumeTexture9** ppVolumeTexture,HANDLE* pSharedHandle)
- {
- return m_pD3Ddev->CreateVolumeTexture(Width, Height, Depth, Levels, Usage, Format, Pool, ppVolumeTexture,pSharedHandle);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::DeletePatch(UINT Handle)
- {
- return m_pD3Ddev->DeletePatch(Handle);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::DrawIndexedPrimitive(D3DPRIMITIVETYPE device,INT BaseVertexIndex,UINT MinVertexIndex,UINT NumVertices,UINT startIndex,UINT primCount)
- {
- HRESULT hRet = m_pD3Ddev->DrawIndexedPrimitive(device, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
- hacks.ApllyWallHack(m_pD3Ddev, device, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
- return hRet;
- }
- HRESULT APIENTRY hkIDirect3DDevice9::DrawIndexedPrimitiveUP(D3DPRIMITIVETYPE PrimitiveType, UINT MinIndex, UINT NumVertices, UINT PrimitiveCount, CONST void *pIndexData, D3DFORMAT IndexDataFormat, CONST void *pVertexStreamZeroData, UINT VertexStreamZeroStride)
- {
- return m_pD3Ddev->DrawIndexedPrimitiveUP(PrimitiveType, MinIndex, NumVertices, PrimitiveCount, pIndexData, IndexDataFormat, pVertexStreamZeroData, VertexStreamZeroStride);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::DrawPrimitive(D3DPRIMITIVETYPE PrimitiveType, UINT StartVertex, UINT PrimitiveCount)
- {
- return m_pD3Ddev->DrawPrimitive(PrimitiveType, StartVertex, PrimitiveCount);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::DrawPrimitiveUP(D3DPRIMITIVETYPE PrimitiveType, UINT PrimitiveCount, CONST void *pVertexStreamZeroData, UINT VertexStreamZeroStride)
- {
- return m_pD3Ddev->DrawPrimitiveUP(PrimitiveType, PrimitiveCount, pVertexStreamZeroData, VertexStreamZeroStride);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::DrawRectPatch(UINT Handle, CONST float *pNumSegs, CONST D3DRECTPATCH_INFO *pRectPatchInfo)
- {
- return m_pD3Ddev->DrawRectPatch(Handle, pNumSegs, pRectPatchInfo);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::DrawTriPatch(UINT Handle, CONST float *pNumSegs, CONST D3DTRIPATCH_INFO *pTriPatchInfo)
- {
- return m_pD3Ddev->DrawTriPatch(Handle, pNumSegs, pTriPatchInfo);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::EndScene()
- {
- //Move our menu through keyboard import
- hacks.KeyboardInput();
- //Draws our menu with a ton of different colours
- hacks.DrawMenu(m_pD3Ddev);
- return m_pD3Ddev->EndScene();
- }
- HRESULT APIENTRY hkIDirect3DDevice9::EndStateBlock(IDirect3DStateBlock9** ppSB)
- {
- return m_pD3Ddev->EndStateBlock(ppSB);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::EvictManagedResources()
- {
- return m_pD3Ddev->EvictManagedResources();
- }
- UINT APIENTRY hkIDirect3DDevice9::GetAvailableTextureMem()
- {
- return m_pD3Ddev->GetAvailableTextureMem();
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetBackBuffer(UINT iSwapChain,UINT iBackBuffer,D3DBACKBUFFER_TYPE Type,IDirect3DSurface9** ppBackBuffer)
- {
- return m_pD3Ddev->GetBackBuffer(iSwapChain,iBackBuffer, Type, ppBackBuffer);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetClipPlane(DWORD Index, float *pPlane)
- {
- return m_pD3Ddev->GetClipPlane(Index, pPlane);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetClipStatus(D3DCLIPSTATUS9 *pClipStatus)
- {
- return m_pD3Ddev->GetClipStatus(pClipStatus);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetCreationParameters(D3DDEVICE_CREATION_PARAMETERS *pParameters)
- {
- return m_pD3Ddev->GetCreationParameters(pParameters);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetCurrentTexturePalette(UINT *pPaletteNumber)
- {
- return m_pD3Ddev->GetCurrentTexturePalette(pPaletteNumber);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetDepthStencilSurface(IDirect3DSurface9 **ppZStencilSurface)
- {
- return m_pD3Ddev->GetDepthStencilSurface(ppZStencilSurface);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetDeviceCaps(D3DCAPS9 *pCaps)
- {
- return m_pD3Ddev->GetDeviceCaps(pCaps);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetDirect3D(IDirect3D9 **ppD3D9)
- {
- HRESULT hRet = m_pD3Ddev->GetDirect3D(ppD3D9);
- if( SUCCEEDED(hRet) )
- *ppD3D9 = m_pD3Dint;
- return hRet;
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetDisplayMode(UINT iSwapChain,D3DDISPLAYMODE* pMode)
- {
- return m_pD3Ddev->GetDisplayMode(iSwapChain,pMode);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetFrontBufferData(UINT iSwapChain,IDirect3DSurface9* pDestSurface)
- {
- return m_pD3Ddev->GetFrontBufferData(iSwapChain,pDestSurface);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetFVF(DWORD* pFVF)
- {
- return m_pD3Ddev->GetFVF(pFVF);
- }
- void APIENTRY hkIDirect3DDevice9::GetGammaRamp(UINT iSwapChain,D3DGAMMARAMP* pRamp)
- {
- m_pD3Ddev->GetGammaRamp(iSwapChain,pRamp);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetIndices(IDirect3DIndexBuffer9** ppIndexData)
- {
- return m_pD3Ddev->GetIndices(ppIndexData);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetLight(DWORD Index, D3DLIGHT9 *pLight)
- {
- return m_pD3Ddev->GetLight(Index, pLight);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetLightEnable(DWORD Index, BOOL *pEnable)
- {
- return m_pD3Ddev->GetLightEnable(Index, pEnable);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetMaterial(D3DMATERIAL9 *pMaterial)
- {
- return m_pD3Ddev->GetMaterial(pMaterial);
- }
- float APIENTRY hkIDirect3DDevice9::GetNPatchMode()
- {
- return m_pD3Ddev->GetNPatchMode();
- }
- unsigned int APIENTRY hkIDirect3DDevice9::GetNumberOfSwapChains()
- {
- return m_pD3Ddev->GetNumberOfSwapChains();
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetPaletteEntries(UINT PaletteNumber, PALETTEENTRY *pEntries)
- {
- return m_pD3Ddev->GetPaletteEntries(PaletteNumber, pEntries);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetPixelShader(IDirect3DPixelShader9** ppShader)
- {
- return m_pD3Ddev->GetPixelShader(ppShader);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetPixelShaderConstantB(UINT StartRegister,BOOL* pConstantData,UINT BoolCount)
- {
- return m_pD3Ddev->GetPixelShaderConstantB(StartRegister,pConstantData,BoolCount);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetPixelShaderConstantF(UINT StartRegister,float* pConstantData,UINT Vector4fCount)
- {
- return m_pD3Ddev->GetPixelShaderConstantF(StartRegister,pConstantData,Vector4fCount);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetPixelShaderConstantI(UINT StartRegister,int* pConstantData,UINT Vector4iCount)
- {
- return m_pD3Ddev->GetPixelShaderConstantI(StartRegister,pConstantData,Vector4iCount);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetRasterStatus(UINT iSwapChain,D3DRASTER_STATUS* pRasterStatus)
- {
- return m_pD3Ddev->GetRasterStatus(iSwapChain,pRasterStatus);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetRenderState(D3DRENDERSTATETYPE State, DWORD *pValue)
- {
- return m_pD3Ddev->GetRenderState(State, pValue);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetRenderTarget(DWORD RenderTargetIndex,IDirect3DSurface9** ppRenderTarget)
- {
- return m_pD3Ddev->GetRenderTarget(RenderTargetIndex,ppRenderTarget);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetRenderTargetData(IDirect3DSurface9* pRenderTarget,IDirect3DSurface9* pDestSurface)
- {
- return m_pD3Ddev->GetRenderTargetData(pRenderTarget,pDestSurface);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetSamplerState(DWORD Sampler,D3DSAMPLERSTATETYPE Type,DWORD* pValue)
- {
- return m_pD3Ddev->GetSamplerState(Sampler,Type,pValue);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetScissorRect(RECT* pRect)
- {
- return m_pD3Ddev->GetScissorRect(pRect);
- }
- BOOL APIENTRY hkIDirect3DDevice9::GetSoftwareVertexProcessing()
- {
- return m_pD3Ddev->GetSoftwareVertexProcessing();
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetStreamSource(UINT StreamNumber,IDirect3DVertexBuffer9** ppStreamData,UINT* OffsetInBytes,UINT* pStride)
- {
- return m_pD3Ddev->GetStreamSource(StreamNumber, ppStreamData,OffsetInBytes, pStride);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetStreamSourceFreq(UINT StreamNumber,UINT* Divider)
- {
- return m_pD3Ddev->GetStreamSourceFreq(StreamNumber,Divider);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetSwapChain(UINT iSwapChain,IDirect3DSwapChain9** pSwapChain)
- {
- return m_pD3Ddev->GetSwapChain(iSwapChain,pSwapChain);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetTexture(DWORD Stage, IDirect3DBaseTexture9 **ppTexture)
- {
- return m_pD3Ddev->GetTexture(Stage, ppTexture);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetTextureStageState(DWORD Stage, D3DTEXTURESTAGESTATETYPE Type, DWORD *pValue)
- {
- return m_pD3Ddev->GetTextureStageState(Stage, Type, pValue);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetTransform(D3DTRANSFORMSTATETYPE State, D3DMATRIX *pMatrix)
- {
- return m_pD3Ddev->GetTransform(State, pMatrix);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetVertexDeclaration(IDirect3DVertexDeclaration9** ppDecl)
- {
- return m_pD3Ddev->GetVertexDeclaration(ppDecl);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetVertexShader(IDirect3DVertexShader9** ppShader)
- {
- return m_pD3Ddev->GetVertexShader(ppShader);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetVertexShaderConstantB(UINT StartRegister,BOOL* pConstantData,UINT BoolCount)
- {
- return m_pD3Ddev->GetVertexShaderConstantB(StartRegister,pConstantData,BoolCount);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetVertexShaderConstantF(UINT StartRegister,float* pConstantData,UINT Vector4fCount)
- {
- return m_pD3Ddev->GetVertexShaderConstantF(StartRegister,pConstantData,Vector4fCount);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetVertexShaderConstantI(UINT StartRegister,int* pConstantData,UINT Vector4iCount)
- {
- return m_pD3Ddev->GetVertexShaderConstantI(StartRegister,pConstantData,Vector4iCount);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::GetViewport(D3DVIEWPORT9 *pViewport)
- {
- return m_pD3Ddev->GetViewport(pViewport);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::LightEnable(DWORD LightIndex, BOOL bEnable)
- {
- return m_pD3Ddev->LightEnable(LightIndex, bEnable);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::MultiplyTransform(D3DTRANSFORMSTATETYPE State, CONST D3DMATRIX *pMatrix)
- {
- return m_pD3Ddev->MultiplyTransform(State, pMatrix);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::Present(CONST RECT *pSourceRect, CONST RECT *pDestRect, HWND hDestWindowOverride, CONST RGNDATA *pDirtyRegion)
- {
- return m_pD3Ddev->Present(pSourceRect, pDestRect, hDestWindowOverride, pDirtyRegion);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::ProcessVertices(UINT SrcStartIndex,UINT DestIndex,UINT VertexCount,IDirect3DVertexBuffer9* pDestBuffer,IDirect3DVertexDeclaration9* pVertexDecl,DWORD Flags)
- {
- return m_pD3Ddev->ProcessVertices(SrcStartIndex, DestIndex, VertexCount, pDestBuffer,pVertexDecl, Flags);
- }
- ULONG APIENTRY hkIDirect3DDevice9::Release()
- {
- if( --m_refCount == 0 )
- m_pManager->Release();
- return m_pD3Ddev->Release();
- }
- HRESULT APIENTRY hkIDirect3DDevice9::Reset(D3DPRESENT_PARAMETERS *pPresentationParameters)
- {
- m_pManager->PreReset();
- HRESULT hRet = m_pD3Ddev->Reset(pPresentationParameters);
- if( SUCCEEDED(hRet) )
- {
- m_PresentParam = *pPresentationParameters;
- m_pManager->PostReset();
- }
- return hRet;
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetClipPlane(DWORD Index, CONST float *pPlane)
- {
- return m_pD3Ddev->SetClipPlane(Index, pPlane);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetClipStatus(CONST D3DCLIPSTATUS9 *pClipStatus)
- {
- return m_pD3Ddev->SetClipStatus(pClipStatus);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetCurrentTexturePalette(UINT PaletteNumber)
- {
- return m_pD3Ddev->SetCurrentTexturePalette(PaletteNumber);
- }
- void APIENTRY hkIDirect3DDevice9::SetCursorPosition(int X, int Y, DWORD Flags)
- {
- m_pD3Ddev->SetCursorPosition(X, Y, Flags);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetCursorProperties(UINT XHotSpot, UINT YHotSpot, IDirect3DSurface9 *pCursorBitmap)
- {
- return m_pD3Ddev->SetCursorProperties(XHotSpot, YHotSpot, pCursorBitmap);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetDepthStencilSurface(IDirect3DSurface9* pNewZStencil)
- {
- return m_pD3Ddev->SetDepthStencilSurface(pNewZStencil);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetDialogBoxMode(BOOL bEnableDialogs)
- {
- return m_pD3Ddev->SetDialogBoxMode(bEnableDialogs);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetFVF(DWORD FVF)
- {
- return m_pD3Ddev->SetFVF(FVF);
- }
- void APIENTRY hkIDirect3DDevice9::SetGammaRamp(UINT iSwapChain,DWORD Flags,CONST D3DGAMMARAMP* pRamp)
- {
- m_pD3Ddev->SetGammaRamp(iSwapChain,Flags, pRamp);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetIndices(IDirect3DIndexBuffer9* pIndexData)
- {
- return m_pD3Ddev->SetIndices(pIndexData);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetLight(DWORD Index, CONST D3DLIGHT9 *pLight)
- {
- return m_pD3Ddev->SetLight(Index, pLight);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetMaterial(CONST D3DMATERIAL9 *pMaterial)
- {
- return m_pD3Ddev->SetMaterial(pMaterial);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetNPatchMode(float nSegments)
- {
- return m_pD3Ddev->SetNPatchMode(nSegments);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetPaletteEntries(UINT PaletteNumber, CONST PALETTEENTRY *pEntries)
- {
- return m_pD3Ddev->SetPaletteEntries(PaletteNumber, pEntries);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetPixelShader(IDirect3DPixelShader9* pShader)
- {
- return m_pD3Ddev->SetPixelShader(pShader);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetPixelShaderConstantB(UINT StartRegister,CONST BOOL* pConstantData,UINT BoolCount)
- {
- return m_pD3Ddev->SetPixelShaderConstantB(StartRegister,pConstantData,BoolCount);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetPixelShaderConstantF(UINT StartRegister,CONST float* pConstantData,UINT Vector4fCount)
- {
- return m_pD3Ddev->SetPixelShaderConstantF(StartRegister,pConstantData,Vector4fCount);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetPixelShaderConstantI(UINT StartRegister,CONST int* pConstantData,UINT Vector4iCount)
- {
- return m_pD3Ddev->SetPixelShaderConstantI(StartRegister,pConstantData,Vector4iCount);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetRenderState(D3DRENDERSTATETYPE State, DWORD Value)
- {
- return m_pD3Ddev->SetRenderState(State, Value);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetRenderTarget(DWORD RenderTargetIndex, IDirect3DSurface9* pRenderTarget)
- {
- return m_pD3Ddev->SetRenderTarget(RenderTargetIndex,pRenderTarget);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetSamplerState(DWORD Sampler,D3DSAMPLERSTATETYPE Type,DWORD Value)
- {
- return m_pD3Ddev->SetSamplerState(Sampler,Type,Value);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetScissorRect(CONST RECT* pRect)
- {
- return m_pD3Ddev->SetScissorRect(pRect);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetSoftwareVertexProcessing(BOOL bSoftware)
- {
- return m_pD3Ddev->SetSoftwareVertexProcessing(bSoftware);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetStreamSource(UINT StreamNumber,IDirect3DVertexBuffer9* pStreamData,UINT OffsetInBytes,UINT Stride)
- {
- return m_pD3Ddev->SetStreamSource(StreamNumber, pStreamData,OffsetInBytes, Stride);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetStreamSourceFreq(UINT StreamNumber,UINT Divider)
- {
- return m_pD3Ddev->SetStreamSourceFreq(StreamNumber,Divider);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetTexture(DWORD Stage, IDirect3DBaseTexture9 *pTexture)
- {
- #ifdef D3DHOOK_TEXTURES
- IDirect3DDevice9 *dev = NULL;
- if(pTexture != NULL && ((hkIDirect3DTexture9*)(pTexture))->GetDevice(&dev) == D3D_OK)
- {
- if(dev == this)
- return m_pD3Ddev->SetTexture(Stage, ((hkIDirect3DTexture9*)(pTexture))->m_D3Dtex);
- }
- #endif
- return m_pD3Ddev->SetTexture(Stage, pTexture);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetTextureStageState(DWORD Stage, D3DTEXTURESTAGESTATETYPE Type, DWORD Value)
- {
- return m_pD3Ddev->SetTextureStageState(Stage, Type, Value);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetTransform(D3DTRANSFORMSTATETYPE State, CONST D3DMATRIX *pMatrix)
- {
- return m_pD3Ddev->SetTransform(State, pMatrix);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetVertexDeclaration(IDirect3DVertexDeclaration9* pDecl)
- {
- return m_pD3Ddev->SetVertexDeclaration(pDecl);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetVertexShader(IDirect3DVertexShader9* pShader)
- {
- return m_pD3Ddev->SetVertexShader(pShader);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetVertexShaderConstantB(UINT StartRegister,CONST BOOL* pConstantData,UINT BoolCount)
- {
- return m_pD3Ddev->SetVertexShaderConstantB(StartRegister,pConstantData,BoolCount);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetVertexShaderConstantF(UINT StartRegister,CONST float* pConstantData,UINT Vector4fCount)
- {
- return m_pD3Ddev->SetVertexShaderConstantF(StartRegister,pConstantData,Vector4fCount);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetVertexShaderConstantI(UINT StartRegister,CONST int* pConstantData,UINT Vector4iCount)
- {
- return m_pD3Ddev->SetVertexShaderConstantI(StartRegister,pConstantData,Vector4iCount);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::SetViewport(CONST D3DVIEWPORT9 *pViewport)
- {
- return m_pD3Ddev->SetViewport(pViewport);
- }
- BOOL APIENTRY hkIDirect3DDevice9::ShowCursor(BOOL bShow)
- {
- return m_pD3Ddev->ShowCursor(bShow);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::StretchRect(IDirect3DSurface9* pSourceSurface,CONST RECT* pSourceRect,IDirect3DSurface9* pDestSurface,CONST RECT* pDestRect,D3DTEXTUREFILTERTYPE Filter)
- {
- return m_pD3Ddev->StretchRect(pSourceSurface,pSourceRect,pDestSurface,pDestRect,Filter);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::TestCooperativeLevel()
- {
- return m_pD3Ddev->TestCooperativeLevel();
- }
- HRESULT APIENTRY hkIDirect3DDevice9::UpdateSurface(IDirect3DSurface9* pSourceSurface,CONST RECT* pSourceRect,IDirect3DSurface9* pDestinationSurface,CONST POINT* pDestPoint)
- {
- return m_pD3Ddev->UpdateSurface(pSourceSurface,pSourceRect,pDestinationSurface,pDestPoint);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::UpdateTexture(IDirect3DBaseTexture9 *pSourceTexture, IDirect3DBaseTexture9 *pDestinationTexture)
- {
- return m_pD3Ddev->UpdateTexture(pSourceTexture, pDestinationTexture);
- }
- HRESULT APIENTRY hkIDirect3DDevice9::ValidateDevice(DWORD *pNumPasses)
- {
- return m_pD3Ddev->ValidateDevice(pNumPasses);
- }
- ----------------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement