Did you make sure to disable zbuffer before drawing over the models?
EDIT:
I might have found your issue.
Code:
if(cItem.MinaChams)
{
if(Mina)
{
pDevice->SetRenderState(D3DRS_ZENABLE, 0);
if(cItem.MinaColorC1==1) pDevice->SetTexture(0, White);
if(cItem.MinaColorC1==2) pDevice->SetTexture(0, Red);
if(cItem.MinaColorC1==3) pDevice->SetTexture(0, Green);
if(cItem.MinaColorC1==4) pDevice->SetTexture(0, Blue);
if(cItem.MinaColorC1==5) pDevice->SetTexture(0, Black);
if(cItem.MinaColorC1==6) pDevice->SetTexture(0, Purple);
if(cItem.MinaColorC1==7) pDevice->SetTexture(0, Grey);
if(cItem.MinaColorC1==8) pDevice->SetTexture(0, Yellow);
if(cItem.MinaColorC1==9) pDevice->SetTexture(0, Orange);
pDrawIndexedPrimitive(pDevice, pType, BaseVertexIndex, MinVertexIndex, NumVertices, startIndex, primCount);
pDevice->SetRenderState(D3DRS_ZENABLE, 1);
if(cItem.MinaColorC2==1) pDevice->SetTexture(0, White);
if(cItem.MinaColorC2==2) pDevice->SetTexture(0, Red);
if(cItem.MinaColorC2==3) pDevice->SetTexture(0, Green);
if(cItem.MinaColorC2==4) pDevice->SetTexture(0, Blue);
if(cItem.MinaColorC2==5) pDevice->SetTexture(0, Black);
if(cItem.MinaColorC2==6) pDevice->SetTexture(0, Purple);
if(cItem.MinaColorC2==7) pDevice->SetTexture(0, Grey);
if(cItem.MinaColorC2==8) pDevice->SetTexture(0, Yellow);
if(cItem.MinaColorC2==9) pDevice->SetTexture(0, Orange);
}
There are 3 different versions of the function. Try changing the "0" and "1" to "false" and "true". Can I get a look at your full source code/project?