// Number of polygons in the map. int polynum = read4bytes(NUMBERPOLYS); // Coords for the polygon, x1,y1,x2,y2,x3,y3. float px1; float px2; float px3; float py1; float py2; float py3; int pcolor; // Drawtriangle loop. // POLYDIFF is always 0x1c. for ( int i = 0; i < polynum; i++ ) { px1 = readfloat((POLYGONS + (0x54 * i))); py1 = readfloat(((POLYGONS + (0x54 * i)) + + 0x8)); px2 = readfloat(((POLYGONS + (0x54 * i)) + 0x1C)); py2 = readfloat(((POLYGONS + (0x54 * i)) + 0x24)); px3 = readfloat(((POLYGONS + (0x54 * i)) + 0x38)); py3 = readfloat(((POLYGONS + (0x54 * i)) + 0x40)); if (getpolytype(i) == 0) { pcolor = 0xBFD4D4D4; drawtriangleonmap(pcolor,px1,py1,px2,py2,px3,py3,m_pD3Ddev); } else if (getpolytype(i) == 1) { pcolor = 0xBFCBF9FF; drawtriangleonmap(pcolor,px1,py1,px2,py2,px3,py3,m_pD3Ddev); } else if (getpolytype(i) == 2) { pcolor = 0xBF777777; drawtriangleonmap(pcolor,px1,py1,px2,py2,px3,py3,m_pD3Ddev); } else if (getpolytype(i) == 3) { pcolor = 0xAFFFFFFF; drawtriangleonmap(pcolor,px1,py1,px2,py2,px3,py3,m_pD3Ddev); } else if (getpolytype(i) == 4) { pcolor = 0xBF34E7FF; drawtriangleonmap(pcolor,px1,py1,px2,py2,px3,py3,m_pD3Ddev); } else if (getpolytype(i) == 5) { pcolor = 0xBFFF0000; drawtriangleonmap(pcolor,px1,py1,px2,py2,px3,py3,m_pD3Ddev); } else if (getpolytype(i) == 6) { pcolor = 0xBFFF0000; drawtriangleonmap(pcolor,px1,py1,px2,py2,px3,py3,m_pD3Ddev); } else if (getpolytype(i) == 7) { pcolor = 0xBFFFFF00; drawtriangleonmap(pcolor,px1,py1,px2,py2,px3,py3,m_pD3Ddev); } else if (getpolytype(i) == 8) { pcolor = 0xBF00FF00; drawtriangleonmap(pcolor,px1,py1,px2,py2,px3,py3,m_pD3Ddev); } else if (getpolytype(i) == 9) { pcolor = 0xBFFF6600; drawtriangleonmap(pcolor,px1,py1,px2,py2,px3,py3,m_pD3Ddev); } }