First small patch in data.c fix 1 issue. Submit again patch for oil health bar fix. Next patch fix (avoid) bug #9235 (maybe others also). Shadows for wall are not correct, but this small price to pay instead of crashing out of game. Code is just comment out, until you devs decide what best way to fix using static local vars. I have no heard any response when ask. I think it better to do this then crash in game when read details on #9235. Next small patch fix Vector3i use instead of Vector3f. Both parameters is Vector3f.
Index: data.c =================================================================== --- data.c (revision 1591) +++ data.c (working copy) @@ -932,8 +932,10 @@ } if (Tpage->Palette != NULL) free(Tpage->Palette); + free(Tpage); + Tpage=NULL; } Index: display3d.c =================================================================== --- display3d.c (revision 1591) +++ display3d.c (working copy) @@ -1522,7 +1522,8 @@ psComp->orientation.y = vecRot.y; psComp->orientation.z = vecRot.z; - renderAnimComponent( psComp ); + bucketAddTypeToList( RENDER_ANIMATION, psComp );//This needed to correctly draw ANIM frame. +// renderAnimComponent( psComp );//we no want to draw base on position! } } } @@ -2430,9 +2431,9 @@ UDWORD buildingBrightness, specular; // HACK to be able to use static shadows for walls // We just store a separate IMD for each direction static iIMDShape otherDirections[3]; static BOOL directionSet[3] = {FALSE, FALSE, FALSE}; - iIMDShape *originalDirection; + iIMDShape *originalDirection=NULL; if(psStructure->visible[selectedPlayer] || godMode || demoGetStatus()) @@ -2533,6 +2534,7 @@ temp = imd->points; // now check if we need to apply the wall hack +/* if ( psStructure->direction > 0 && psStructure->pStructureType- >type == REF_WALL ) { // switch them @@ -2546,7 +2548,7 @@ directionSet[(int)psStructure->direction / 90 - 1] = TRUE; } } - +*/ flattenImd(imd, structX, structY, psStructure->direction ); /* Actually render it */ @@ -3984,7 +3986,7 @@ ASSERT( imd->npoints < iV_IMD_MAX_POINTS, "flattenImd: too many points in the PIE to flatten it" ); /* Get a copy of the points */ - memcpy(alteredPoints, imd->points, imd->npoints * sizeof(Vector3i)); + memcpy(alteredPoints, imd->points, imd->npoints * sizeof(Vector3f));//was Vector3i /* Get the height of the centre point for reference */ centreHeight = map_Height(structX,structY); -- Get a Film Degree at a school near you. Get free info. Click Here. http://tagline.hushmail.com/fc/Ioyw6h4dCqcO17zYEAUhbkLg7dP9CXhUXsXRZhFEIarFtGIXGVTdCm/ _______________________________________________ Warzone-dev mailing list Warzone-dev@gna.org https://mail.gna.org/listinfo/warzone-dev