rendered paste body// 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);
}
}