hedgewars/uConsts.pas
changeset 11589 c453620cc6d6
parent 11058 b91667fd6f20
child 11836 1d41f297b3d3
equal deleted inserted replaced
11588:7c8fd2f66e9b 11589:c453620cc6d6
   113     lfBouncy         = $0400;  // green
   113     lfBouncy         = $0400;  // green
   114     lfLandMask       = $FF00;  // upper byte is used for terrain, not objects.
   114     lfLandMask       = $FF00;  // upper byte is used for terrain, not objects.
   115 
   115 
   116     lfCurrentHog     = $0080;  // CurrentHog.  It is also used to flag crates, for convenience of AI.  Since an active hog would instantly collect the crate, this does not impact play
   116     lfCurrentHog     = $0080;  // CurrentHog.  It is also used to flag crates, for convenience of AI.  Since an active hog would instantly collect the crate, this does not impact play
   117     lfNotCurrentMask = $FF7F;  // inverse of above. frequently used
   117     lfNotCurrentMask = $FF7F;  // inverse of above. frequently used
   118     lfObjMask        = $007F;  // lower 7 bits used for hogs
   118     lfObjMask        = $007F;  // lower 7 bits used for hogs and explosives and mines 
   119     lfNotObjMask     = $FF80;  // inverse of above.
   119     lfNotObjMask     = $FF80;  // inverse of above.
       
   120 
       
   121 // breaking up hogs would makes it easier to differentiate 
       
   122 // colliding with a hog from colliding with other things
       
   123 // if overlapping hogs are less common than objects, the division can be altered.
       
   124 // 3 bits for objects, 4 for hogs, that is, overlap 7 barrels/mines before possible dents, and 15 hogs.
       
   125     lfHHMask         = $000F;  // lower 4 bits used only for hogs
       
   126     lfNotHHObjMask   = $0070;  // next 3 bits used for non-hog things
       
   127     lfNotHHObjShift  = 4;
       
   128     lfNotHHObjSize   = lfNotHHObjMask shr lfNotHHObjShift;  
       
   129 
   120     // lower byte is for objects.
   130     // lower byte is for objects.
   121     // consists of 0-127 counted for object checkins and $80 as a bit flag for current hog.
   131     // consists of 0-127 counted for object checkins and $80 as a bit flag for current hog.
   122     lfAllObjMask     = $00FF;  // lfCurrentHog or lfObjMask
   132     lfAllObjMask     = $00FF;  // lfCurrentHog or lfObjMask
       
   133 
   123 
   134 
   124 
   135 
   125     cMaxPower     = 1500;
   136     cMaxPower     = 1500;
   126     cMaxAngle     = 2048;
   137     cMaxAngle     = 2048;
   127     cPowerDivisor = 1500;
   138     cPowerDivisor = 1500;