Advertisement
Guest User

Untitled

a guest
Jul 19th, 2018
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.12 KB | None | 0 0
  1. else //first thing we shoot when they stop
  2. {
  3. entity->SetEyeAngles(info.last_lby);
  4. resolve_type[entity->GetIndex()] = 5;
  5. sdk::CAnimationLayer layer = entity->GetAnimOverlay(0);
  6. if (entity->GetSimTime() != info.stored_simtime)
  7. {
  8. info.stored_simtime = entity->GetSimTime();
  9. info.prev_layer = info.backup_layer;
  10. sdk::CAnimationLayer dummy;
  11. info.backup_layer = find_layer(entity, 979, &dummy) ? dummy : layer;
  12. }
  13.  
  14. sdk::CAnimationLayer prev = info.prev_layer;
  15. auto server_time = local_player->GetTickBase() * ctx::globals->interval_per_tick; //i have a global dedicated to curtime but am using this because lemon is gay
  16.  
  17. if (info.is_moving && !info.could_be_slowmo)
  18. {
  19. entity->SetEyeAngles(info.lby);
  20. info.last_moving_lby = entity->GetLowerBodyYaw();
  21. info.stored_missed = shots_missed[entity->GetIndex()];
  22. info.last_move_time = server_time;
  23.  
  24. info.reset_state = true;
  25. resolve_type[entity->GetIndex()] = 1;
  26. }
  27. else
  28. {
  29. if (info.stored_lby != entity->GetLowerBodyYaw())
  30. {
  31. entity->SetEyeAngles(info.lby);
  32. info.stored_lby = entity->GetLowerBodyYaw();
  33.  
  34. info.next_lby_update_time = entity->GetSimTime() + 1.1;
  35. resolve_type[entity->GetIndex()] = 7;
  36. }
  37. if (info.is_standing && !info.could_be_slowmo)
  38. {
  39. entity->SetEyeAngles(info.lby);
  40. info.last_moving_lby = entity->GetLowerBodyYaw();
  41. info.stored_missed = shots_missed[entity->GetIndex()];
  42. info.last_move_time = server_time;
  43. info.could_be_faking = info.stored_missed;
  44.  
  45. info.reset_state = true;
  46. resolve_type[entity->GetIndex()] = 1;
  47. }
  48. else if (server_time - info.last_move_time < 0.1 && info.reset_state)
  49. {
  50. info.pre_anim_lby = entity->GetLowerBodyYaw();
  51. info.reset_state = false;
  52. info.breaking_lby = true;
  53. //std::cout << "reset and lby break is false!" << std::endl;
  54. }
  55. auto previous_is_valid = entity->GetSequenceActivity(prev.m_nSequence) == 979;
  56.  
  57. if (info.unresolved_yaw.size() < 2 || info.lby_deltas.size() < 2)
  58. return;
  59.  
  60. auto average_unresolved_yaw = 0;
  61. for (auto val : info.unresolved_yaw)
  62. average_unresolved_yaw += val;
  63. average_unresolved_yaw /= info.unresolved_yaw.size();
  64.  
  65. auto average_lby_delta = 0;
  66. for (auto val : info.lby_deltas)
  67. average_lby_delta += val;
  68. average_lby_delta /= info.lby_deltas.size();
  69.  
  70. int deltaxd = average_unresolved_yaw - entity->GetLowerBodyYaw();
  71. auto current_lby_delta = abs((((deltaxd + 180) % 360 + 360) % 360 - 180) % 90 - 120);
  72.  
  73. int update_delta = info.pre_anim_lby - entity->GetLowerBodyYaw();
  74. auto lby_update_delta = abs((((update_delta + 180) % 360 + 360) % 360 - 180) % 90 - 120);
  75.  
  76. if (find_layer(entity, 979, &layer)
  77. && previous_is_valid
  78. && (layer.m_flCycle != prev.m_flCycle
  79. || layer.m_flWeight == 1.f
  80. || server_time - info.last_move_time < 0.5
  81. && !info.breaking_lby
  82. && layer.m_flCycle >= 0.01
  83. && layer.m_flCycle >= 0.05
  84. && lby_update_delta > 75))
  85. {
  86. if (server_time - info.last_move_time < 1.1)
  87. {
  88. info.breaking_lby = true;
  89. //std::cout << "breaking lby" << std::endl;
  90. }
  91. entity->SetEyeAngles(info.inverse);
  92. resolve_type[entity->GetIndex()] = 6;
  93. }
  94. else
  95. {
  96. if (info.breaking_lby)
  97. {
  98. if (current_lby_delta > 120 && average_lby_delta > 120, current_lby_delta > 110 && average_lby_delta > 110, current_lby_delta > 100 && average_lby_delta > 100) {
  99. entity->SetEyeAngles(info.lby);
  100. resolve_type[entity->GetIndex()] = 7;
  101. }
  102. else {
  103. if (info.next_lby_update_time < entity->GetSimTime())
  104. {
  105. entity->SetEyeAngles(info.lby);
  106. if (info.next_lby_update_time = entity->GetSimTime() + 1.1 && info.lby_updated && info.stored_lby);
  107. info.is_moving = entity->GetLowerBodyYaw();
  108. resolve_type[entity->GetIndex()] = 3;
  109. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement