--- a/hedgewars/uAIMisc.pas Sun Mar 11 22:44:57 2012 -0400
+++ b/hedgewars/uAIMisc.pas Sun Mar 11 23:24:09 2012 -0400
@@ -53,6 +53,7 @@
function RatePlace(Gear: PGear): LongInt;
function TestCollExcludingMe(Me: PGear; x, y, r: LongInt): boolean; inline;
function TestColl(x, y, r: LongInt): boolean; inline;
+function TraceShoveDrown(Me: PGear; x, y, dX, dY: Real): boolean;
function RateExplosion(Me: PGear; x, y, r: LongInt; Flags: LongWord = 0): LongInt;
function RateShove(Me: PGear; x, y, r, power, kick: LongInt; gdX, gdY: real; Flags: LongWord): LongInt;
function RateShotgun(Me: PGear; gdX, gdY: real; x, y: LongInt): LongInt;
@@ -361,9 +362,9 @@
end;
if (Flags and 1 <> 0) and TraceShoveDrown(Me, Point.x, Point.y, dX, dY) then
if Score > 0 then
- inc(rate, KillScore + Score) // Add a bit of a bonus for bigger hog drownings
+ inc(rate, KillScore + Score div 10) // Add a bit of a bonus for bigger hog drownings
else
- dec(rate, KillScore * friendlyfactor div 100 - Score) // and more of a punishment for drowning bigger friendly hogs
+ dec(rate, KillScore * friendlyfactor div 100 - Score div 10) // and more of a punishment for drowning bigger friendly hogs
else if power >= abs(Score) then
if Score > 0 then
inc(rate, KillScore)
@@ -412,9 +413,9 @@
else dX:= dX + 0.01;
if TraceDrown(x, y, Point.x, Point.y, dX, dY, erasure) then
if Score > 0 then
- inc(rate, KillScore + Score) // Add a bit of a bonus for bigger hog drownings
+ inc(rate, KillScore + Score div 10) // Add a bit of a bonus for bigger hog drownings
else
- dec(rate, KillScore * friendlyfactor div 100 - Score) // and more of a punishment for drowning bigger friendly hogs
+ dec(rate, KillScore * friendlyfactor div 100 - Score div 10) // and more of a punishment for drowning bigger friendly hogs
else if dmg >= abs(Score) then
dmg := KillScore;
if Score > 0 then