diff --git a/uMod_DX9/uMod_DX9_dll.cpp b/uMod_DX9/uMod_DX9_dll.cpp
index 99254da..fd34280 100644
--- a/uMod_DX9/uMod_DX9_dll.cpp
+++ b/uMod_DX9/uMod_DX9_dll.cpp
@@ -226,7 +226,7 @@ DWORD WINAPI D3DPERF_GetStatus( void )
IDirect3D9 *APIENTRY uMod_Direct3DCreate9(UINT SDKVersion)
{
- Message("uMod_Direct3DCreate9: original %lu, uMod %lu\n", Direct3DCreate9_fn, uMod_Direct3DCreate9);
+ Message("uMod_Direct3DCreate9: original %p, uMod %p\n", Direct3DCreate9_fn, uMod_Direct3DCreate9);
// in the Internet are many tutorials for detouring functions and all of them will work without the following 5 marked lines
// but somehow, for me it only works, if I retour the function and calling afterward the original function
@@ -272,7 +272,7 @@ IDirect3D9 *APIENTRY uMod_Direct3DCreate9(UINT SDKVersion)
HRESULT APIENTRY uMod_Direct3DCreate9Ex( UINT SDKVersion, IDirect3D9Ex **ppD3D)
{
- Message( "uMod_Direct3DCreate9Ex: original %lu, uMod %lu\n", Direct3DCreate9Ex_fn, uMod_Direct3DCreate9Ex);
+ Message( "uMod_Direct3DCreate9Ex: original %p, uMod %p\n", Direct3DCreate9Ex_fn, uMod_Direct3DCreate9Ex);
// in the Internet are many tutorials for detouring functions and all of them will work without the following 5 marked lines
// but somehow, for me it only works, if I retour the function and calling afterward the original function
diff --git a/uMod_DX9/uMod_IDirect3D9.cpp b/uMod_DX9/uMod_IDirect3D9.cpp
index dd1e700..7af53de 100644
--- a/uMod_DX9/uMod_IDirect3D9.cpp
+++ b/uMod_DX9/uMod_IDirect3D9.cpp
@@ -30,14 +30,14 @@ along with Universal Modding Engine. If not, see
uMod_IDirect3D9::uMod_IDirect3D9( IDirect3D9 *pOriginal, uMod_TextureServer* server)
{
- Message( PRE_MESSAGE "::" PRE_MESSAGE "( %lu, %lu): %lu\n", pOriginal, server, this);
+ Message( PRE_MESSAGE "::" PRE_MESSAGE "( %p, %p): %p\n", pOriginal, server, this);
m_pIDirect3D9 = pOriginal;
uMod_Server = server;
}
uMod_IDirect3D9::~uMod_IDirect3D9(void)
{
- Message( PRE_MESSAGE "::~" PRE_MESSAGE "(): %lu\n", this);
+ Message( PRE_MESSAGE "::~" PRE_MESSAGE "(): %p\n", this);
}
HRESULT __stdcall uMod_IDirect3D9::QueryInterface(REFIID riid, void** ppvObj)
@@ -143,7 +143,7 @@ HMONITOR __stdcall uMod_IDirect3D9::GetAdapterMonitor(UINT Adapter)
HRESULT __stdcall uMod_IDirect3D9::CreateDevice(UINT Adapter,D3DDEVTYPE DeviceType,HWND hFocusWindow,DWORD BehaviorFlags,D3DPRESENT_PARAMETERS* pPresentationParameters,IDirect3DDevice9** ppReturnedDeviceInterface)
{
- Message( PRE_MESSAGE "::CreateDevice(): %lu\n", this);
+ Message( PRE_MESSAGE "::CreateDevice(): %p\n", this);
// we intercept this call and provide our own "fake" Device Object
HRESULT hres = m_pIDirect3D9->CreateDevice( Adapter, DeviceType, hFocusWindow, BehaviorFlags, pPresentationParameters, ppReturnedDeviceInterface);
diff --git a/uMod_DX9/uMod_IDirect3D9Ex.cpp b/uMod_DX9/uMod_IDirect3D9Ex.cpp
index f9ce98a..4abc8f8 100644
--- a/uMod_DX9/uMod_IDirect3D9Ex.cpp
+++ b/uMod_DX9/uMod_IDirect3D9Ex.cpp
@@ -39,7 +39,7 @@ along with Universal Modding Engine. If not, see
HRESULT __stdcall uMod_IDirect3D9Ex::CreateDeviceEx( UINT Adapter, D3DDEVTYPE DeviceType, HWND hFocusWindow, DWORD BehaviorFlags, D3DPRESENT_PARAMETERS *pPresentationParameters, D3DDISPLAYMODEEX *pFullscreenDisplayMode, IDirect3DDevice9Ex **ppReturnedDeviceInterface)
{
- Message( "uMod_IDirect3D9Ex::CreateDeviceEx: %lu\n", this);
+ Message( "uMod_IDirect3D9Ex::CreateDeviceEx: %p\n", this);
// we intercept this call and provide our own "fake" Device Object
HRESULT hres = m_pIDirect3D9Ex->CreateDeviceEx( Adapter, DeviceType, hFocusWindow, BehaviorFlags, pPresentationParameters, pFullscreenDisplayMode, ppReturnedDeviceInterface);
diff --git a/uMod_DX9/uMod_IDirect3DCubeTexture9.cpp b/uMod_DX9/uMod_IDirect3DCubeTexture9.cpp
index 0873f0d..a6caedb 100644
--- a/uMod_DX9/uMod_IDirect3DCubeTexture9.cpp
+++ b/uMod_DX9/uMod_IDirect3DCubeTexture9.cpp
@@ -70,7 +70,7 @@ ULONG APIENTRY uMod_IDirect3DCubeTexture9::AddRef()
//this function yields for the non switched texture object
ULONG APIENTRY uMod_IDirect3DCubeTexture9::Release()
{
- Message("uMod_IDirect3DCubeTexture9::Release(): %lu\n", this);
+ Message("uMod_IDirect3DCubeTexture9::Release(): %p\n", this);
void *cpy;
long ret = m_D3Ddev->QueryInterface( IID_IDirect3DTexture9, &cpy);
diff --git a/uMod_DX9/uMod_IDirect3DDevice9.cpp b/uMod_DX9/uMod_IDirect3DDevice9.cpp
index 18d39a3..50b50b1 100644
--- a/uMod_DX9/uMod_IDirect3DDevice9.cpp
+++ b/uMod_DX9/uMod_IDirect3DDevice9.cpp
@@ -156,7 +156,6 @@ int uMod_IDirect3DDevice9::CreateSingleTexture(void)
int uMod_IDirect3DDevice9::ComputetHash( DWORD64 &CRC64, DWORD32 &CRC32, IDirect3DSurface9 *surface, bool compute_crc)
{
-
IDirect3DSurface9 *offscreen_surface = NULL;
D3DLOCKED_RECT d3dlr;
D3DSURFACE_DESC desc;
@@ -310,6 +309,29 @@ int uMod_IDirect3DDevice9::ComputetHash( DWORD64 &CRC64, DWORD32 &CRC32, IDirect
}
+int uMod_IDirect3DDevice9::CheckForChangeSurface(uMod_IDirect3DSurface9 *surface)
+{
+ if (surface!=NULL)
+ {
+ if (surface->m_D3DTex!=NULL)
+ {
+ DWORD64 crc64 = surface->m_D3DTex->CRC64;
+ DWORD32 crc32 = surface->m_D3DTex->CRC32;
+ surface->m_D3DTex->ComputetHash(crc32>0);
+ if (crc64!=surface->m_D3DTex->CRC64)
+ uMod_Client->CRCHasChanged(surface->m_D3DTex);
+ }
+ else if (surface->m_D3DCubeTex!=NULL)
+ {
+ DWORD64 crc64 = surface->m_D3DCubeTex->CRC64;
+ DWORD32 crc32 = surface->m_D3DCubeTex->CRC32;
+ surface->m_D3DCubeTex->ComputetHash(crc32>0);
+ if (crc64!=surface->m_D3DCubeTex->CRC64)
+ uMod_Client->CRCHasChanged(surface->m_D3DCubeTex);
+ }
+ }
+ return (0);
+}
@@ -453,6 +475,15 @@ HRESULT uMod_IDirect3DDevice9::GetCreationParameters(D3DDEVICE_CREATION_PARAMETE
HRESULT uMod_IDirect3DDevice9::SetCursorProperties(UINT XHotSpot,UINT YHotSpot,IDirect3DSurface9* pCursorBitmap)
{
+ IDirect3DSurface9* cpy;
+ if( pCursorBitmap != NULL )
+ {
+ long int ret = pCursorBitmap->QueryInterface( IID_IDirect3D9, (void**) &cpy);
+ if (ret == 0x01000000L)
+ {
+ pCursorBitmap = ((uMod_IDirect3DSurface9*)pCursorBitmap)->m_D3Dsurf;
+ }
+ }
return(m_pIDirect3DDevice9->SetCursorProperties(XHotSpot,YHotSpot,pCursorBitmap));
}
@@ -832,22 +863,93 @@ HRESULT uMod_IDirect3DDevice9::UpdateTexture(IDirect3DBaseTexture9* pSourceTextu
HRESULT uMod_IDirect3DDevice9::GetRenderTargetData(IDirect3DSurface9* pRenderTarget,IDirect3DSurface9* pDestSurface)
{
- return(m_pIDirect3DDevice9->GetRenderTargetData(pRenderTarget,pDestSurface));
+ Message( PRE_MESSAGE "::GetRenderTargetData( %p, %p): %p\n", pRenderTarget, pDestSurface, this);
+ IDirect3DSurface9* cpy;
+ uMod_IDirect3DSurface9 *DestSurf=NULL;
+ if( pRenderTarget != NULL )
+ {
+ long int ret = pRenderTarget->QueryInterface( IID_IDirect3D9, (void**) &cpy);
+ if (ret == 0x01000000L)
+ {
+ pRenderTarget = ((uMod_IDirect3DSurface9*)pRenderTarget)->m_D3Dsurf;
+ }
+ }
+ if( pDestSurface != NULL )
+ {
+ long int ret = pDestSurface->QueryInterface( IID_IDirect3D9, (void**) &cpy);
+ if (ret == 0x01000000L)
+ {
+ DestSurf = ((uMod_IDirect3DSurface9*)pDestSurface);
+ pDestSurface = DestSurf->m_D3Dsurf;
+ }
+ }
+ HRESULT ret = (m_pIDirect3DDevice9->GetRenderTargetData(pRenderTarget,pDestSurface));
+
+ CheckForChangeSurface(DestSurf);
+ return ret;
}
HRESULT uMod_IDirect3DDevice9::GetFrontBufferData(UINT iSwapChain,IDirect3DSurface9* pDestSurface)
{
+ Message( PRE_MESSAGE "::GetFrontBufferData( %u, %p): %p\n", iSwapChain, pDestSurface, this);
+ IDirect3DSurface9* cpy;
+ if( pDestSurface != NULL )
+ {
+ long int ret = pDestSurface->QueryInterface( IID_IDirect3D9, (void**) &cpy);
+ if (ret == 0x01000000L)
+ {
+ pDestSurface = ((uMod_IDirect3DSurface9*)pDestSurface)->m_D3Dsurf;
+ }
+ }
return(m_pIDirect3DDevice9->GetFrontBufferData(iSwapChain,pDestSurface));
}
HRESULT uMod_IDirect3DDevice9::StretchRect(IDirect3DSurface9* pSourceSurface,CONST RECT* pSourceRect,IDirect3DSurface9* pDestSurface,CONST RECT* pDestRect,D3DTEXTUREFILTERTYPE Filter)
{
- return(m_pIDirect3DDevice9->StretchRect(pSourceSurface,pSourceRect,pDestSurface,pDestRect,Filter));
+ Message( PRE_MESSAGE "::StretchRect( %p, %p, %p, %p): %p\n", pSourceSurface, pSourceRect, pDestSurface, pDestRect, this);
+ IDirect3DSurface9* cpy;
+ uMod_IDirect3DSurface9 *DestSurf=NULL;
+ if( pSourceSurface != NULL )
+ {
+ long int ret = pSourceSurface->QueryInterface( IID_IDirect3D9, (void**) &cpy);
+ if (ret == 0x01000000L)
+ {
+ pSourceSurface = ((uMod_IDirect3DSurface9*)pSourceSurface)->m_D3Dsurf;
+ }
+ }
+ if( pDestSurface != NULL )
+ {
+ long int ret = pDestSurface->QueryInterface( IID_IDirect3D9, (void**) &cpy);
+ if (ret == 0x01000000L)
+ {
+ DestSurf = ((uMod_IDirect3DSurface9*)pDestSurface);
+ pDestSurface = DestSurf->m_D3Dsurf;
+ }
+ }
+ HRESULT ret = (m_pIDirect3DDevice9->StretchRect(pSourceSurface,pSourceRect,pDestSurface,pDestRect,Filter));
+
+ CheckForChangeSurface(DestSurf);
+ return (ret);
}
HRESULT uMod_IDirect3DDevice9::ColorFill(IDirect3DSurface9* pSurface,CONST RECT* pRect,D3DCOLOR color)
{
- return(m_pIDirect3DDevice9->ColorFill(pSurface,pRect,color));
+ Message( PRE_MESSAGE "::ColorFill( %p, %u): %p\n", pSurface, color, this);
+ IDirect3DSurface9* cpy;
+ uMod_IDirect3DSurface9 *Surf=NULL;
+ if( pSurface != NULL )
+ {
+ long int ret = pSurface->QueryInterface( IID_IDirect3D9, (void**) &cpy);
+ if (ret == 0x01000000L)
+ {
+ Surf = ((uMod_IDirect3DSurface9*)pSurface);
+ pSurface = Surf->m_D3Dsurf;
+ }
+ }
+ HRESULT ret = (m_pIDirect3DDevice9->ColorFill(pSurface,pRect,color));
+
+ CheckForChangeSurface(Surf);
+ return (ret);
}
HRESULT uMod_IDirect3DDevice9::CreateOffscreenPlainSurface(UINT Width,UINT Height,D3DFORMAT Format,D3DPOOL Pool,IDirect3DSurface9** ppSurface,HANDLE* pSharedHandle)
@@ -857,6 +959,7 @@ HRESULT uMod_IDirect3DDevice9::CreateOffscreenPlainSurface(UINT Width,UINT Heigh
HRESULT uMod_IDirect3DDevice9::SetRenderTarget(DWORD RenderTargetIndex,IDirect3DSurface9* pRenderTarget)
{
+ Message( PRE_MESSAGE "::SetRenderTarget( %u, %p): %p\n", RenderTargetIndex, pRenderTarget, this);
{
IDirect3DSurface9 *back_buffer;
NormalRendering = false;
@@ -867,6 +970,15 @@ HRESULT uMod_IDirect3DDevice9::SetRenderTarget(DWORD RenderTargetIndex,IDirect3D
back_buffer->Release();
}
}
+ IDirect3DSurface9* cpy;
+ if( pRenderTarget != NULL )
+ {
+ long int ret = pRenderTarget->QueryInterface( IID_IDirect3D9, (void**) &cpy);
+ if (ret == 0x01000000L)
+ {
+ pRenderTarget = ((uMod_IDirect3DSurface9*)pRenderTarget)->m_D3Dsurf;
+ }
+ }
return (m_pIDirect3DDevice9->SetRenderTarget(RenderTargetIndex,pRenderTarget));
}
@@ -877,6 +989,16 @@ HRESULT uMod_IDirect3DDevice9::GetRenderTarget(DWORD RenderTargetIndex,IDirect3D
HRESULT uMod_IDirect3DDevice9::SetDepthStencilSurface(IDirect3DSurface9* pNewZStencil)
{
+ Message( PRE_MESSAGE "::SetDepthStencilSurface( %p): %p\n", pNewZStencil, this);
+ IDirect3DSurface9* cpy;
+ if( pNewZStencil != NULL )
+ {
+ long int ret = pNewZStencil->QueryInterface( IID_IDirect3D9, (void**) &cpy);
+ if (ret == 0x01000000L)
+ {
+ pNewZStencil = ((uMod_IDirect3DSurface9*)pNewZStencil)->m_D3Dsurf;
+ }
+ }
return(m_pIDirect3DDevice9->SetDepthStencilSurface(pNewZStencil));
}
diff --git a/uMod_DX9/uMod_IDirect3DDevice9.h b/uMod_DX9/uMod_IDirect3DDevice9.h
index fe68b1c..eef6778 100644
--- a/uMod_DX9/uMod_IDirect3DDevice9.h
+++ b/uMod_DX9/uMod_IDirect3DDevice9.h
@@ -33,6 +33,7 @@ along with Universal Modding Engine. If not, see
#include "uMod_IDirect3DTexture9.h"
#include "uMod_IDirect3DVolumeTexture9.h"
#include "uMod_IDirect3DCubeTexture9.h"
+#include "uMod_IDirect3DSurface9.h"
class uMod_TextureClient_DX9;
@@ -183,6 +184,7 @@ public:
uMod_IDirect3DCubeTexture9* GetSingleCubeTexture(void) {return (SingleCubeTexture);}
int ComputetHash( DWORD64 &CRC64, DWORD32 &CRC32, IDirect3DSurface9 *surface, bool compute_crc);
+ int CheckForChangeSurface(uMod_IDirect3DSurface9 *surface);
void SetNextTextureIsFake(void) {NextTextureIsFake=true;}
diff --git a/uMod_DX9/uMod_IDirect3DDevice9Ex.cpp b/uMod_DX9/uMod_IDirect3DDevice9Ex.cpp
index e49262a..b956bb7 100644
--- a/uMod_DX9/uMod_IDirect3DDevice9Ex.cpp
+++ b/uMod_DX9/uMod_IDirect3DDevice9Ex.cpp
@@ -48,7 +48,30 @@ HRESULT __stdcall uMod_IDirect3DDevice9Ex::CheckResourceResidency( IDirect3DReso
HRESULT __stdcall uMod_IDirect3DDevice9Ex::ComposeRects( IDirect3DSurface9 *pSource, IDirect3DSurface9 *pDestination, IDirect3DVertexBuffer9 *pSrcRectDescriptors, UINT NumRects, IDirect3DVertexBuffer9 *pDstRectDescriptors, D3DCOMPOSERECTSOP Operation, INT XOffset, INT YOffset)
{
- return(m_pIDirect3DDevice9Ex->ComposeRects( pSource, pDestination, pSrcRectDescriptors, NumRects, pDstRectDescriptors, Operation, XOffset, YOffset));
+ Message( PRE_MESSAGE "::ComposeRects( %p, %p, %p, %u, %p, ...): %p\n", pSource, pDestination, pSrcRectDescriptors, NumRects, this);
+ IDirect3DSurface9* cpy;
+ uMod_IDirect3DSurface9 *DestSurf=NULL;
+ if( pSource != NULL )
+ {
+ long int ret = pSource->QueryInterface( IID_IDirect3D9, (void**) &cpy);
+ if (ret == 0x01000000L)
+ {
+ pSource = ((uMod_IDirect3DSurface9*)pSource)->m_D3Dsurf;
+ }
+ }
+ if( pDestination != NULL )
+ {
+ long int ret = pDestination->QueryInterface( IID_IDirect3D9, (void**) &cpy);
+ if (ret == 0x01000000L)
+ {
+ DestSurf = ((uMod_IDirect3DSurface9*)pDestination);
+ pDestination = DestSurf->m_D3Dsurf;
+ }
+ }
+ HRESULT ret = (m_pIDirect3DDevice9Ex->ComposeRects( pSource, pDestination, pSrcRectDescriptors, NumRects, pDstRectDescriptors, Operation, XOffset, YOffset));
+
+ CheckForChangeSurface(DestSurf);
+ return (ret);
}
HRESULT __stdcall uMod_IDirect3DDevice9Ex::CreateDepthStencilSurfaceEx( UINT Width, UINT Height, D3DFORMAT Format, D3DMULTISAMPLE_TYPE MultiSample, DWORD MultisampleQuality, BOOL Discard, IDirect3DSurface9 **ppSurface, HANDLE *pSharedHandle, DWORD Usage)
diff --git a/uMod_DX9/uMod_IDirect3DDevice9Ex.h b/uMod_DX9/uMod_IDirect3DDevice9Ex.h
index 72b51f8..4325c8d 100644
--- a/uMod_DX9/uMod_IDirect3DDevice9Ex.h
+++ b/uMod_DX9/uMod_IDirect3DDevice9Ex.h
@@ -25,6 +25,7 @@ along with Universal Modding Engine. If not, see
#include "uMod_IDirect3DTexture9.h"
#include "uMod_IDirect3DVolumeTexture9.h"
#include "uMod_IDirect3DCubeTexture9.h"
+#include "uMod_IDirect3DSurface9.h"
class uMod_TextureClient_DX9;
@@ -195,6 +196,7 @@ public:
uMod_IDirect3DCubeTexture9* GetSingleCubeTexture(void) {return (SingleCubeTexture);}
int ComputetHash( DWORD64 &CRC64, DWORD32 &CRC32, IDirect3DSurface9 *surface, bool compute_crc);
+ int CheckForChangeSurface(uMod_IDirect3DSurface9 *surface);
void SetNextTextureIsFake(void) {NextTextureIsFake=true;}
diff --git a/uMod_DX9/uMod_IDirect3DTexture9.cpp b/uMod_DX9/uMod_IDirect3DTexture9.cpp
index 0cbd3a6..28b333f 100644
--- a/uMod_DX9/uMod_IDirect3DTexture9.cpp
+++ b/uMod_DX9/uMod_IDirect3DTexture9.cpp
@@ -70,7 +70,7 @@ ULONG APIENTRY uMod_IDirect3DTexture9::AddRef()
//this function yields for the non switched texture object
ULONG APIENTRY uMod_IDirect3DTexture9::Release()
{
- Message("uMod_IDirect3DTexture9::Release(): %lu\n", this);
+ Message("uMod_IDirect3DTexture9::Release(): %p\n", this);
void *cpy;
long ret = m_D3Ddev->QueryInterface( IID_IDirect3DTexture9, &cpy);
@@ -124,7 +124,7 @@ ULONG APIENTRY uMod_IDirect3DTexture9::Release()
delete(this);
}
- Message("uMod_IDirect3DTexture9::Release() end: %lu\n", this);
+ Message("uMod_IDirect3DTexture9::Release() end: %p\n", this);
return (count);
}
diff --git a/uMod_DX9/uMod_IDirect3DVolumeTexture9.cpp b/uMod_DX9/uMod_IDirect3DVolumeTexture9.cpp
index 98745c3..bce8e86 100644
--- a/uMod_DX9/uMod_IDirect3DVolumeTexture9.cpp
+++ b/uMod_DX9/uMod_IDirect3DVolumeTexture9.cpp
@@ -68,7 +68,7 @@ ULONG APIENTRY uMod_IDirect3DVolumeTexture9::AddRef()
//this function yields for the non switched texture object
ULONG APIENTRY uMod_IDirect3DVolumeTexture9::Release()
{
- Message("uMod_IDirect3DVolumeTexture9::Release(): %lu\n", this);
+ Message("uMod_IDirect3DVolumeTexture9::Release(): %p\n", this);
void *cpy;
long ret = m_D3Ddev->QueryInterface( IID_IDirect3DTexture9, &cpy);
diff --git a/uMod_DXMain/uMod_ArrayHandler.cpp b/uMod_DXMain/uMod_ArrayHandler.cpp
index b345b2a..df8c34f 100644
--- a/uMod_DXMain/uMod_ArrayHandler.cpp
+++ b/uMod_DXMain/uMod_ArrayHandler.cpp
@@ -29,7 +29,7 @@ along with Universal Modding Engine. If not, see
uMod_FileHandler::uMod_FileHandler(void)
{
- Message("uMod_FileHandler(void): %lu\n", this);
+ Message("uMod_FileHandler(void): %p\n", this);
Number = 0;
FieldCounter = 0;
Files = NULL;
@@ -37,7 +37,7 @@ uMod_FileHandler::uMod_FileHandler(void)
uMod_FileHandler::~uMod_FileHandler(void)
{
- Message("~uMod_FileHandler(void): %lu\n", this);
+ Message("~uMod_FileHandler(void): %p\n", this);
if (Files!=NULL)
{
for (int i=0; iReference>=0) return (RETURN_UPDATE_ALLREADY_ADDED);
@@ -92,7 +92,7 @@ int uMod_FileHandler::Add(TextureFileStruct* file)
int uMod_FileHandler::Remove(TextureFileStruct* file)
{
- Message("uMod_FileHandler::Remove(%lu): %lu\n", file, this);
+ Message("uMod_FileHandler::Remove(%p): %p\n", file, this);
if (gl_ErrorState & uMod_ERROR_FATAL) return (RETURN_FATAL_ERROR);
int ref = file->Reference;
diff --git a/uMod_DXMain/uMod_ArrayHandler.h b/uMod_DXMain/uMod_ArrayHandler.h
index 7baebe2..230aece 100644
--- a/uMod_DXMain/uMod_ArrayHandler.h
+++ b/uMod_DXMain/uMod_ArrayHandler.h
@@ -101,7 +101,7 @@ typedef uMod_TextureHandler uMod_FileHandler;
template
uMod_TextureHandler::uMod_TextureHandler(void)
{
- Message("uMod_TextureHandler(void): %lu\n", this);
+ Message("uMod_TextureHandler(void): %p\n", this);
Number = 0;
FieldCounter = 0;
@@ -111,7 +111,7 @@ uMod_TextureHandler::uMod_TextureHandler(void)
template
uMod_TextureHandler::~uMod_TextureHandler(void)
{
- Message("~uMod_TextureHandler(void): %lu\n", this);
+ Message("~uMod_TextureHandler(void): %p\n", this);
if (Content!=NULL)
{
for (int i=0; i::~uMod_TextureHandler(void)
template
int uMod_TextureHandler::Add(T* entry)
{
- Message("uMod_TextureHandler::Add( %lu): %lu\n", entry, this);
+ Message("uMod_TextureHandler::Add( %p): %p\n", entry, this);
if (gl_ErrorState & uMod_ERROR_FATAL) return (RETURN_FATAL_ERROR);
if (entry->Reference>=0) return (RETURN_TEXTURE_ALLREADY_ADDED);
@@ -168,7 +168,7 @@ int uMod_TextureHandler::Add(T* entry)
template
int uMod_TextureHandler::Remove(T* entry) //will be called, if a texture is completely released
{
- Message("uMod_TextureHandler::Remove( %lu): %lu\n", entry, this);
+ Message("uMod_TextureHandler::Remove( %p): %p\n", entry, this);
if (gl_ErrorState & uMod_ERROR_FATAL) return (RETURN_FATAL_ERROR);
int ref = entry->Reference;
diff --git a/uMod_DXMain/uMod_DXMain_dll.cpp b/uMod_DXMain/uMod_DXMain_dll.cpp
index c025d55..7e4c710 100644
--- a/uMod_DXMain/uMod_DXMain_dll.cpp
+++ b/uMod_DXMain/uMod_DXMain_dll.cpp
@@ -98,7 +98,7 @@ void InitInstance(HINSTANCE hModule)
if (HookThisProgram( game, 10*MAX_PATH)) //ask if we need to hook this program
{
OpenMessage();
- Message("InitInstance: %lu (%ls)\n", hModule, game);
+ Message("InitInstance: %p (%ls)\n", hModule, game);
gl_TextureServer = new uMod_TextureServer(game); //create the server which listen on the pipe and prepare the update for the texture clients
diff --git a/uMod_DXMain/uMod_TextureClient.cpp b/uMod_DXMain/uMod_TextureClient.cpp
index 47dff12..5fb1216 100644
--- a/uMod_DXMain/uMod_TextureClient.cpp
+++ b/uMod_DXMain/uMod_TextureClient.cpp
@@ -23,7 +23,7 @@ along with Universal Modding Engine. If not, see
uMod_TextureClient::uMod_TextureClient(const int version) : Version(version)
{
- Message("uMod_TextureClient::uMod_TextureClient(void): %lu\n", this);
+ Message("uMod_TextureClient::uMod_TextureClient(void): %p\n", this);
Server = NULL;
BoolSaveAllTextures = false;
BoolSaveSingleTexture = false;
@@ -57,7 +57,7 @@ uMod_TextureClient::uMod_TextureClient(const int version) : Version(version)
uMod_TextureClient::~uMod_TextureClient(void)
{
- Message("uMod_TextureClient::~uMod_TextureClient(void): %lu\n", this);
+ Message("uMod_TextureClient::~uMod_TextureClient(void): %p\n", this);
if (Server!=NULL) Server->RemoveClient(this, Version);
if (Mutex!=NULL) CloseHandle(Mutex);
@@ -92,7 +92,7 @@ int uMod_TextureClient::ConnectToServer(uMod_TextureServer* server)
int uMod_TextureClient::SetSaveDirectory( wchar_t *dir)
{
- Message("uMod_TextureClient::SetSaveDirectory( %ls): %lu\n", dir, this);
+ Message("uMod_TextureClient::SetSaveDirectory( %ls): %p\n", dir, this);
int i = 0;
for (i=0; iValue;
- Message("MainLoop: CONTROL_ADD_TEXTURE (%#lX %u, %u %u): %lu\n", commands->Hash, size, sizeof(MsgStruct), sizeof(char), this);
+ Message("MainLoop: CONTROL_ADD_TEXTURE (%#lX %u, %u %u): %p\n", commands->Hash, size, sizeof(MsgStruct), sizeof(char), this);
if (pos + sizeof(MsgStruct) + size <= num) AddFile( (wchar_t*) &buffer[pos + sizeof(MsgStruct)], commands->Hash, force);
//update_textures = true;
force = false;
diff --git a/uMod_GlobalDefines.h b/uMod_GlobalDefines.h
index 53f057f..01606eb 100644
--- a/uMod_GlobalDefines.h
+++ b/uMod_GlobalDefines.h
@@ -49,8 +49,8 @@ typedef struct
#define uMod_APP_DX9 L"uMod_DX9.txt"
#define uMod_APP_DIR L"uMod"
-#define uMod_VERSION_char "uMod V 2.0 alpha (r52)"
-#define uMod_VERSION L"uMod V 2.0 alpha (r52)"
+#define uMod_VERSION_char "uMod V 2.0 alpha (r53)"
+#define uMod_VERSION L"uMod V 2.0 alpha (r53)"
#define PIPE_uMod2Game L"\\\\.\\pipe\\uMod2Game"
#define PIPE_Game2uMod L"\\\\.\\pipe\\Game2uMod"