public static void Update(GameTime time)
{
controls.update();
Touches.Clear();
foreach (var t in Game.Touches)
{
Touches.Add(t);
}
foreach (var t in TouchManager.TouchPoints)
{
Touches.Add(t);
//Output += "Added touch";
}
//Output += Touches.Count;
if (!TouchManager.SupportsTouch)
{
TouchState ts = TouchState.None;
switch (Controls.MouseLeft)
{
case ControlState.Pressed:
ts = TouchState.Touched;
break;
case ControlState.Held:
ts = TouchState.Moved;
break;
case ControlState.Released:
ts = TouchState.Released;
break;
}
if (mouseTouch == null)
{
mouseTouch = new TouchPoint()
{
};
}
mouseTouch.Update();
mouseTouch.Position = Controls.MousePos;
mouseTouch.State = ts;
if (ts != TouchState.None)
{
if(!Global.Touches.Contains(mouseTouch))
Global.Touches.Add(mouseTouch);
}
else
{
if (Global.Touches.Contains(mouseTouch))
{
Global.Touches.Remove(mouseTouch);
}
}
}
framespeed = (60f) / (1f / (float)time.ElapsedGameTime.TotalSeconds);
if (!float.IsNaN(framespeed))
{
gamespeed += (speedtarget - gamespeed) * speedspeed * framespeed;
speed = MathHelper.Clamp(framespeed * gamespeed, 0, 5);
}
Effect.View = Matrix.CreateLookAt(Global.Camera.Pos, Global.Camera.LookAtPos, Vector3.Up);
Effect.Projection = Matrix.CreatePerspectiveFieldOfView(MathHelper.ToRadians(45), 16f / 9f, 1, 1000000);
Effect.World = Matrix.CreateTranslation(0, 0, 0);
Controls.ScreenSize.X = Game.GraphicsDevice.PresentationParameters.BackBufferWidth;
Controls.ScreenSize.Y = Game.GraphicsDevice.PresentationParameters.BackBufferHeight;
//speed = 10;
ParticleManager.Update();
}
public static void SetSpeed(float target, float speed)