Advertisement
toxictype

Untitled

Mar 22nd, 2019
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.32 KB | None | 0 0
  1. for (int i = 0; i < warps.size(); i++)
  2. {
  3. // Get player's feet
  4. double px = player->X + player->Width * player->SCALE / 2;
  5. double py = player->Y + player->Height * player->SCALE;
  6. SDL_Point p = { px, py };
  7. if (SDL_PointInRect(&p, &warps[i].Rect) && !player->JustWarped)
  8. {
  9.  
  10. player->TargetWarp = warps[i].TargetWarpID;
  11. player->JustWarped = true;
  12. Mix_PlayChannel(-1, sfx_warp, 0);
  13.  
  14. if (warps[i].RemoveItems == "all")
  15. {
  16. player->Inventory.clear();
  17. }
  18.  
  19. bool override_map = false;
  20. flags["warp_sequence_reset"] = false;
  21. if (flags["save_warp_sequence"])
  22. {
  23. bool cleared = true;
  24. player->WarpHistory.push_back(warps[i].WarpID);
  25.  
  26. for (int k = 0; k < player->WarpHistory.size(); k++)
  27. {
  28. if (player->WarpHistory[k] != player->TargetWarpSequence[k])
  29. {
  30. cleared = false;
  31. player->WarpHistory.clear();
  32. break;
  33. }
  34. }
  35. if (player->WarpHistory.size() != player->TargetWarpSequence.size())
  36. cleared = false;
  37.  
  38. if (cleared)
  39. {
  40. override_map = true;
  41. }
  42. }
  43. if (override_map)
  44. {
  45. LoadLevel(map_override);
  46. }
  47. else
  48. {
  49. LoadLevel(warps[i].TargetLevel);
  50. }
  51. }
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement