Fix to prevent rain and storm from happening at once

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@1534 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Overhaul
2007-10-20 08:28:50 +00:00
parent 035359edf0
commit 4bb41616eb
16 changed files with 249 additions and 142 deletions
+11 -9
View File
@@ -573,10 +573,12 @@ UINT8 ubTravelCost;
//bDirection = atan8( iX, iY, iSrcX, iSrcY );
bDirection = atan8( iSrcX, iSrcY, iX, iY );
#if 0
if ( usTileNo == 20415 && bDirection == 3 )
{
int i = 0;
}
#endif
ubTravelCost = gubWorldMovementCosts[ usTileNo ][ bDirection ][ 0 ];
@@ -781,10 +783,10 @@ void LightAddTileNode(LEVELNODE *pNode, UINT32 uiLightType, UINT8 ubShadeAdd, BO
{
INT16 sSum;
pNode->ubSumLights += ubShadeAdd;
pNode->ubSumLights = pNode->ubSumLights + ubShadeAdd;
if (fFake)
{
pNode->ubFakeShadeLevel += ubShadeAdd;
pNode->ubFakeShadeLevel = pNode->ubFakeShadeLevel + ubShadeAdd;
}
// Now set max
@@ -815,7 +817,7 @@ INT16 sSum;
}
else
{
pNode->ubSumLights -= ubShadeSubtract;
pNode->ubSumLights = pNode->ubSumLights - ubShadeSubtract;
}
if (fFake)
{
@@ -825,7 +827,7 @@ INT16 sSum;
}
else
{
pNode->ubFakeShadeLevel -= ubShadeSubtract;
pNode->ubFakeShadeLevel = pNode->ubFakeShadeLevel - ubShadeSubtract;
}
}
@@ -950,7 +952,7 @@ BOOLEAN fFake;
}
if(uiFlags&LIGHT_BACKLIGHT)
ubShadeAdd=(INT16)ubShade*7/10;
ubShadeAdd=(UINT8)((UINT16)ubShade*7/10);
pMerc = gpWorldLevelData[uiTile].pMercHead;
while(pMerc!=NULL)
@@ -1093,7 +1095,7 @@ BOOLEAN fFake; // only passed in to land and roof layers; others get fed FALSE
}
if(uiFlags&LIGHT_BACKLIGHT)
ubShadeSubtract=(INT16)ubShade*7/10;
ubShadeSubtract=(UINT8) ((UINT16)ubShade*7/10);
pMerc = gpWorldLevelData[uiTile].pMercHead;
while(pMerc!=NULL)
@@ -1423,7 +1425,7 @@ UINT16 LightGetLastNode(INT32 iLight)
***************************************************************************************/
BOOLEAN LightAddNode(INT32 iLight, INT16 iHotSpotX, INT16 iHotSpotY, INT16 iX, INT16 iY, UINT8 ubIntensity, UINT16 uiFlags)
{
BOOLEAN fDuplicate=FALSE;
//BOOLEAN fDuplicate=FALSE;
DOUBLE dDistance;
UINT8 ubShade;
INT32 iLightDecay;
@@ -1585,7 +1587,7 @@ BOOLEAN fInsertNodes=FALSE;
for (i=0; i<=XDelta; i++)
{
LightInsertNode(iLight, usCurNode, iStartX, iStartY, iXPos, iYPos, ubStartIntens, usFlags);
iXPos+=XAdvance;
iXPos=iXPos+XAdvance;
}
}
else
@@ -1593,7 +1595,7 @@ BOOLEAN fInsertNodes=FALSE;
for (i=0; i<=XDelta; i++)
{
LightAddNode(iLight, iStartX, iStartY, iXPos, iYPos, ubStartIntens, usFlags);
iXPos+=XAdvance;
iXPos=iXPos+XAdvance;
}
}
return(TRUE);