| | |
| | | /// </summary> |
| | | public class SpeedProvider |
| | | { |
| | | /// <summary> |
| | | /// 随机移动距离 |
| | | /// </summary> |
| | | public const Int32 RandomMoveDistance = 100; |
| | | |
| | | public static SpeedProvider Define = new SpeedProvider(1400); |
| | | public SpeedProvider(Int32 speed) |
| | | { |
| | |
| | | double runPixelPerSpeedX = 0;//跑 X每个速度一秒移动的像素数 |
| | | if (speed <= 1109) |
| | | { |
| | | stepPixelPerSpeedX = 160d/1109d; |
| | | stepPixelPerSpeedY = 127d/1109d; |
| | | runPixelPerSpeedX = 260d/1109d; |
| | | stepPixelPerSpeedX = 160d / 1109d; |
| | | stepPixelPerSpeedY = 127d / 1109d; |
| | | runPixelPerSpeedX = 260d / 1109d; |
| | | } |
| | | else if (speed > 1109 && speed <= 1151) |
| | | { |
| | | stepPixelPerSpeedX = 166.5d/1151d; |
| | | stepPixelPerSpeedY = 131d/1151d; |
| | | runPixelPerSpeedX = 267.7d/1151d; |
| | | stepPixelPerSpeedX = 166.5d / 1151d; |
| | | stepPixelPerSpeedY = 131d / 1151d; |
| | | runPixelPerSpeedX = 267.7d / 1151d; |
| | | } |
| | | else if (speed > 1151 && speed <= 1256) |
| | | { |
| | | stepPixelPerSpeedX = 180d/1256d; |
| | | stepPixelPerSpeedY = 142.5d/1256d; |
| | | runPixelPerSpeedX = 284.5d/1256d; |
| | | stepPixelPerSpeedX = 180d / 1256d; |
| | | stepPixelPerSpeedY = 142.5d / 1256d; |
| | | runPixelPerSpeedX = 284.5d / 1256d; |
| | | } |
| | | else if (speed > 1256 && speed <= 1400) |
| | | { |
| | | stepPixelPerSpeedX = 194.5d/1400d; |
| | | stepPixelPerSpeedY = 156.5d/1400d; |
| | | runPixelPerSpeedX = 320d/1400d; |
| | | stepPixelPerSpeedX = 194.5d / 1400d; |
| | | stepPixelPerSpeedY = 156.5d / 1400d; |
| | | runPixelPerSpeedX = 320d / 1400d; |
| | | } |
| | | else |
| | | { |
| | | stepPixelPerSpeedX = 194.5d / 1400d; |
| | | stepPixelPerSpeedY = 156.5d / 1400d; |
| | | runPixelPerSpeedX = 320d/ 1400d; |
| | | runPixelPerSpeedX = 320d / 1400d; |
| | | } |
| | | |
| | | stepX = (stepPixelPerSpeedX * speed) / 1000; |
| | |
| | | runX = (runPixelPerSpeedX * speed) / 800; |
| | | |
| | | |
| | | RunThresold = stepX * RandomUtils.KeyPressDurationMax +runX * RandomUtils.KeyPressDurationMax+50; |
| | | |
| | | RandomMoveMillSecond = (Int32)(300 / stepX); |
| | | RunThresold = stepX * RandomUtils.KeyPressDurationMax + runX * RandomUtils.KeyPressDurationMax + 50; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 开始跑的阀值 |
| | | /// </summary> |
| | | public double RunThresold { get; private set; } |
| | | |
| | | //随机移动时间 |
| | | public Int32 RandomMoveMillSecond { get; private set; } |
| | | |
| | | |
| | | |
| | | |
| | | private double stepX; |
| | | /// <summary> |
| | | /// 步行X轴速度 |