PointBlank (PH) Chams
In DIP:
Screenshots:

typedef HRESULT (WINAPI* oDrawIndexedPrimitive) (LPDIRECT3DDEVICE9 pDevice, D3DPRIMITIVETYPE Type , INT BaseIndex, UINT MinIndex, UINT NumVertices, UINT StartIndex, UINT PrimtiveCount);
oDrawIndexedPrimitive pDrawIndexedPrimitive;
HRESULT WINAPI myDrawIndexedPrimitive(LPDIRECT3DDEVICE9 pDevice, D3DPRIMITIVETYPE Type, INT BaseIndex,
UINT MinIndex, UINT NumVertices, UINT StartIndex, UINT PrimitiveCount)
{
_asm pushad;
LPDIRECT3DVERTEXBUFFER9 Stream_Data;
UINT Offset = 0;
UINT Stride = 0;
if(pDevice->GetStreamSource(0, &Stream_Data, &Offset, &Stride) == D3D_OK)
Stream_Data->Release();
if(Cham)
{
if(Stride == 44 || Stride == 36)
{
pDevice->SetRenderState(D3DRS_ZENABLE,false);
pDevice->SetTexture(0, texSteelBlue);
pDevice->SetRenderState(D3DRS_ALPHABLENDENABLE,false);
pDevice->SetRenderState(D3DRS_DITHERENABLE,false);
}
else
{
oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, PrimitiveCount);
pDevice->SetRenderState(D3DRS_ZENABLE, true);
pDevice->SetTexture(true, texSteelBlue);
pDevice->SetRenderState(D3DRS_ALPHABLENDENABLE,true);
pDevice->SetRenderState(D3DRS_DITHERENABLE,true);
}
}
_asm popad;
return pDrawIndexedPrimitive(pDevice, Type, BaseIndex, MinIndex, NumVertices, StartIndex, PrimitiveCount);
}
oDrawIndexedPrimitive pDrawIndexedPrimitive;
HRESULT WINAPI myDrawIndexedPrimitive(LPDIRECT3DDEVICE9 pDevice, D3DPRIMITIVETYPE Type, INT BaseIndex,
UINT MinIndex, UINT NumVertices, UINT StartIndex, UINT PrimitiveCount)
{
_asm pushad;
LPDIRECT3DVERTEXBUFFER9 Stream_Data;
UINT Offset = 0;
UINT Stride = 0;
if(pDevice->GetStreamSource(0, &Stream_Data, &Offset, &Stride) == D3D_OK)
Stream_Data->Release();
if(Cham)
{
if(Stride == 44 || Stride == 36)
{
pDevice->SetRenderState(D3DRS_ZENABLE,false);
pDevice->SetTexture(0, texSteelBlue);
pDevice->SetRenderState(D3DRS_ALPHABLENDENABLE,false);
pDevice->SetRenderState(D3DRS_DITHERENABLE,false);
}
else
{
oDrawIndexedPrimitive(pDevice, PrimType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, PrimitiveCount);
pDevice->SetRenderState(D3DRS_ZENABLE, true);
pDevice->SetTexture(true, texSteelBlue);
pDevice->SetRenderState(D3DRS_ALPHABLENDENABLE,true);
pDevice->SetRenderState(D3DRS_DITHERENABLE,true);
}
}
_asm popad;
return pDrawIndexedPrimitive(pDevice, Type, BaseIndex, MinIndex, NumVertices, StartIndex, PrimitiveCount);
}




