equal
deleted
inserted
replaced
382 Gear^.dX := Gear^.dX + cWindSpeed / Gear^.Density |
382 Gear^.dX := Gear^.dX + cWindSpeed / Gear^.Density |
383 end; |
383 end; |
384 |
384 |
385 Gear^.X := Gear^.X + Gear^.dX; |
385 Gear^.X := Gear^.X + Gear^.dX; |
386 Gear^.Y := Gear^.Y + Gear^.dY; |
386 Gear^.Y := Gear^.Y + Gear^.dY; |
387 if Gear^.Kind <> gtBee then |
387 CheckGearDrowning(Gear); |
388 CheckGearDrowning(Gear); |
|
389 //if (hwSqr(Gear^.dX) + hwSqr(Gear^.dY) < _0_0002) and |
388 //if (hwSqr(Gear^.dX) + hwSqr(Gear^.dY) < _0_0002) and |
390 if (not isFalling) and ((Gear^.dX.QWordValue + Gear^.dY.QWordValue) < _0_02.QWordValue) then |
389 if (not isFalling) and ((Gear^.dX.QWordValue + Gear^.dY.QWordValue) < _0_02.QWordValue) then |
391 Gear^.State := Gear^.State and (not gstMoving) |
390 Gear^.State := Gear^.State and (not gstMoving) |
392 else |
391 else |
393 Gear^.State := Gear^.State or gstMoving; |
392 Gear^.State := Gear^.State or gstMoving; |
967 |
966 |
968 if (Gear^.Timer > 0) then |
967 if (Gear^.Timer > 0) then |
969 dec(Gear^.Timer) |
968 dec(Gear^.Timer) |
970 else |
969 else |
971 begin |
970 begin |
|
971 Gear^.State:= Gear^.State and not gstSubmersible; |
972 if nuw then |
972 if nuw then |
973 begin |
973 begin |
974 StopSoundChan(Gear^.SoundChannel); |
974 StopSoundChan(Gear^.SoundChannel); |
975 CheckGearDrowning(Gear); |
975 CheckGearDrowning(Gear); |
976 end |
976 end |
3199 dX, dY, X, Y : hwFloat; |
3199 dX, dY, X, Y : hwFloat; |
3200 fChanged: boolean; |
3200 fChanged: boolean; |
3201 trueAngle: Longword; |
3201 trueAngle: Longword; |
3202 t: PGear; |
3202 t: PGear; |
3203 begin |
3203 begin |
3204 if WorldWrap(Gear) then |
3204 if WorldWrap(Gear) and (WorldEdge <> weWrap) then |
3205 begin |
3205 begin |
3206 // recycling as temp vars |
|
3207 Y.isNegative:= false; |
3206 Y.isNegative:= false; |
3208 Y.QWordValue:= 4294967296 * 112; |
3207 Y.QWordValue:= 4294967296 * 112; |
3209 X.isNegative:= false; |
3208 X.isNegative:= false; |
3210 X.QWordValue:= 4294967296 * 35; |
3209 X.QWordValue:= 4294967296 * 35; |
3211 dX.isNegative:= false; |
3210 dX.isNegative:= false; |