Advertisement
Guest User

Untitled

a guest
Feb 6th, 2016
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.56 KB | None | 0 0
  1. void ClientMove()
  2. {
  3. if (unprocessedResult == true)
  4. {
  5. if (clientPositions.ContainsKey(serverResultTick))
  6. {
  7. if (clientPositions[serverResultTick] == serverResultPos)
  8. {
  9. if (clientBuffer.Count != 0)
  10. {
  11. playerCC.Move(clientBuffer[clientTick] * Time.fixedDeltaTime * curSpeed);
  12. }
  13. else
  14. {
  15. transform.position = serverResultPos;
  16.  
  17. //Clear out the client inputs and positions
  18. List<int> removeKeys = new List<int>();
  19.  
  20. foreach (KeyValuePair<int, Vector2> pair in clientBuffer)
  21. {
  22. if (pair.Key <= serverResultTick)
  23. {
  24. removeKeys.Add(pair.Key);
  25. }
  26. }
  27.  
  28. foreach (int key in removeKeys)
  29. {
  30. clientBuffer.Remove(key);
  31. clientPositions.Remove(key);
  32. }
  33.  
  34. removeKeys.Clear();
  35.  
  36. foreach(var input in clientBuffer)
  37. {
  38. playerCC.Move(input * Time.fixedDeltaTime * curSpeed);
  39. }
  40. }
  41. }
  42. }
  43.  
  44. unprocessedResult = false
  45. }
  46. else
  47. {
  48. if (clientBuffer.Count != 0)
  49. {
  50. playerCC.Move(clientBuffer[clientTick] * Time.fixedDeltaTime * curSpeed);
  51. }
  52. }
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement