Code:
UINT m_Stride;
UINT OffsetInBytes;
LPDIRECT3DVERTEXBUFFER9 StreamData;
HRESULT WINAPI myDrawIndexedPrimitive(LPDIRECT3DDEVICE9 pDevice, D3DPRIMITIVETYPE Type, INT BaseVertexIndex, UINT MinVertexIndex, UINT NumVertices, UINT startIndex, UINT primCount)
{
if(pDevice->GetStreamSource(0,&StreamData,&OffsetInBytes,&m_Stride) == D3D_OK)
{
StreamData->Release();
}
if(mi.chamsmenu==1)
{
if(mi.chams1 || !mi.chams1)
{
if(m_Stride == 36)
{
if(mi.chams1) pDevice->SetRenderState(D3DRS_LIGHTING,false);
if(mi.chams1) pDevice->SetRenderState(D3DRS_ZENABLE,false);
if(mi.chams1==1){pDevice->SetTexture(0, aRed);}
if(mi.chams1==2){pDevice->SetTexture(0, aGreen);}
if(mi.chams1==3){pDevice->SetTexture(0, aBlue);}
if(mi.chams1==4){pDevice->SetTexture(0, aOrange);}
if(mi.chams1==5){pDevice->SetTexture(0, aPurple);}
if(mi.chams1==6){pDevice->SetTexture(0, aPink);}
if(mi.chams1==7){pDevice->SetTexture(0, aBlack);}
if(mi.chams1==8){pDevice->SetTexture(0, aCyan);}
if(mi.chams1==9){pDevice->SetTexture(0, aWhite);}
pDrawIndexedPrimitive(pDevice, Type, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
}
if(m_Stride == 36)
{
if(mi.chams1) pDevice->SetRenderState(D3DRS_LIGHTING,false);
if(mi.chams1) pDevice->SetRenderState(D3DRS_ZENABLE,false);
if(mi.chams1==1){pDevice->SetTexture(0, aRed);}
if(mi.chams1==2){pDevice->SetTexture(0, aGreen);}
if(mi.chams1==3){pDevice->SetTexture(0, aBlue);}
if(mi.chams1==4){pDevice->SetTexture(0, aOrange);}
if(mi.chams1==5){pDevice->SetTexture(0, aPurple);}
if(mi.chams1==6){pDevice->SetTexture(0, aPink);}
if(mi.chams1==7){pDevice->SetTexture(0, aBlack);}
if(mi.chams1==8){pDevice->SetTexture(0, aCyan);}
if(mi.chams1==9){pDevice->SetTexture(0, aWhite);}
pDrawIndexedPrimitive(pDevice, Type, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
}
if(m_Stride == 32)
{
if(mi.chams1) pDevice->SetRenderState(D3DRS_LIGHTING,false);
if(mi.chams1) pDevice->SetRenderState(D3DRS_ZENABLE,false);
if(mi.chams1==1){pDevice->SetTexture(0, aRed);}
if(mi.chams1==2){pDevice->SetTexture(0, aGreen);}
if(mi.chams1==3){pDevice->SetTexture(0, aBlue);}
if(mi.chams1==4){pDevice->SetTexture(0, aOrange);}
if(mi.chams1==5){pDevice->SetTexture(0, aPurple);}
if(mi.chams1==6){pDevice->SetTexture(0, aPink);}
if(mi.chams1==7){pDevice->SetTexture(0, aBlack);}
if(mi.chams1==8){pDevice->SetTexture(0, aCyan);}
if(mi.chams1==9){pDevice->SetTexture(0, aWhite);}
pDrawIndexedPrimitive(pDevice, Type, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
}
}
}
if(mi.chamsmenu==1)
{
if(mi.chams2 || !mi.chams2)
{
if(m_Stride== 36){
if(mi.chams2)pDevice->SetRenderState(D3DRS_LIGHTING, false);
if(mi.chams2)pDevice->SetRenderState(D3DRS_ZENABLE, true);
if(mi.chams2==1){pDevice->SetTexture(0, aRed);}
if(mi.chams2==2){pDevice->SetTexture(0, aGreen);}
if(mi.chams2==3){pDevice->SetTexture(0, aBlue);}
if(mi.chams2==4){pDevice->SetTexture(0, aOrange);}
if(mi.chams2==5){pDevice->SetTexture(0, aPurple);}
if(mi.chams2==6){pDevice->SetTexture(0, aPink);}
if(mi.chams2==7){pDevice->SetTexture(0, aBlack);}
if(mi.chams2==8){pDevice->SetTexture(0, aCyan);}
if(mi.chams2==9){pDevice->SetTexture(0, aWhite);}
}
if(m_Stride== 36){
if(mi.chams2)pDevice->SetRenderState(D3DRS_LIGHTING, false);
if(mi.chams2)pDevice->SetRenderState(D3DRS_ZENABLE, true);
if(mi.chams2==1){pDevice->SetTexture(0, aRed);}
if(mi.chams2==2){pDevice->SetTexture(0, aGreen);}
if(mi.chams2==3){pDevice->SetTexture(0, aBlue);}
if(mi.chams2==4){pDevice->SetTexture(0, aOrange);}
if(mi.chams2==5){pDevice->SetTexture(0, aPurple);}
if(mi.chams2==6){pDevice->SetTexture(0, aPink);}
if(mi.chams2==7){pDevice->SetTexture(0, aBlack);}
if(mi.chams2==8){pDevice->SetTexture(0, aCyan);}
if(mi.chams2==9){pDevice->SetTexture(0, aWhite);}
}
if(m_Stride== 32){
if(mi.chams2)pDevice->SetRenderState(D3DRS_LIGHTING, false);
if(mi.chams2)pDevice->SetRenderState(D3DRS_ZENABLE, true);
if(mi.chams2==1){pDevice->SetTexture(0, aRed);}
if(mi.chams2==2){pDevice->SetTexture(0, aGreen);}
if(mi.chams2==3){pDevice->SetTexture(0, aBlue);}
if(mi.chams2==4){pDevice->SetTexture(0, aOrange);}
if(mi.chams2==5){pDevice->SetTexture(0, aPurple);}
if(mi.chams2==6){pDevice->SetTexture(0, aPink);}
if(mi.chams2==7){pDevice->SetTexture(0, aBlack);}
if(mi.chams2==8){pDevice->SetTexture(0, aCyan);}
if(mi.chams2==9){pDevice->SetTexture(0, aWhite);}
}
}
}
return pDrawIndexedPrimitive(pDevice, Type, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
}