Advertisement
roninator2

Track Step Count on Map

Dec 9th, 2024
46
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 9.33 KB | None | 0 0
  1. # ╔═══════════════════════════════════════════════╦════════════════════╗
  2. # ║ Title: Map Step Count                         ║  Version: 1.00     ║
  3. # ║ Author: Roninator2                            ║                    ║
  4. # ╠═══════════════════════════════════════════════╬════════════════════╣
  5. # ║ Function:                                     ║   Date Created     ║
  6. # ║                                               ╠════════════════════╣
  7. # ║     Track Step Count                          ║    21 Feb 2023     ║
  8. # ╚═══════════════════════════════════════════════╩════════════════════╝
  9. # ╔════════════════════════════════════════════════════════════════════╗
  10. # ║ Requires: nil                                                      ║
  11. # ║                                                                    ║
  12. # ╚════════════════════════════════════════════════════════════════════╝
  13. # ╔════════════════════════════════════════════════════════════════════╗
  14. # ║ Brief Description:                                                 ║
  15. # ║       Allows to keep track of steps taken on any given map         ║
  16. # ╚════════════════════════════════════════════════════════════════════╝
  17. # ╔════════════════════════════════════════════════════════════════════╗
  18. # ║ Instructions:                                                      ║
  19. # ║   Specify the variable to use below.                               ║
  20. # ║                                                                    ║
  21. # ║   The data is saved in the variable and can be pulled out          ║
  22. # ║   anytime you need to get the value saved.                         ║
  23. # ║                                                                    ║
  24. # ║   Use the following commands                                       ║
  25. # ║   add_step_count(map_id, value) # <- will add the number           ║
  26. # ║     specified to the map count                                     ║
  27. # ║                                                                    ║
  28. # ║   reset_step_count(map_id) # <- will reset map count to 0          ║
  29. # ║                                                                    ║
  30. # ║   get_step_count(map_id) # <- will get the map step count          ║
  31. # ║                                                                    ║
  32. # ║   subtract_step_count(map_id, value) # <- will subtract the        ║
  33. # ║     number from the map step count                                 ║
  34. # ╚════════════════════════════════════════════════════════════════════╝
  35. # ╔════════════════════════════════════════════════════════════════════╗
  36. # ║ Updates:                                                           ║
  37. # ║ 1.00 - 21 Feb 2023 - Script finished                               ║
  38. # ╚════════════════════════════════════════════════════════════════════╝
  39. # ╔════════════════════════════════════════════════════════════════════╗
  40. # ║ Credits and Thanks:                                                ║
  41. # ║   Roninator2                                                       ║
  42. # ║                                                                    ║
  43. # ╚════════════════════════════════════════════════════════════════════╝
  44. # ╔════════════════════════════════════════════════════════════════════╗
  45. # ║ Terms of use:                                                      ║
  46. # ║  Follow the original Authors terms of use where applicable         ║
  47. # ║    - When not made by me (Roninator2)                              ║
  48. # ║  Free for all uses in RPG Maker except nudity                      ║
  49. # ║  Anyone using this script in their project before these terms      ║
  50. # ║  were changed are allowed to use this script even if it conflicts  ║
  51. # ║  with these new terms. New terms effective 03 Apr 2024             ║
  52. # ║  No part of this code can be used with AI programs or tools        ║
  53. # ║  Credit must be given                                              ║
  54. # ╚════════════════════════════════════════════════════════════════════╝
  55.  
  56. module R2_Map_Steps
  57.   Variable = 10
  58. end
  59.  
  60. # ╔════════════════════════════════════════════════════════════════════╗
  61. # ║                      End of editable region                        ║
  62. # ╚════════════════════════════════════════════════════════════════════╝
  63.  
  64. #==============================================================================
  65. # ** Game_Map
  66. #==============================================================================
  67. class Game_Map
  68.   #--------------------------------------------------------------------------
  69.   # * alias Setup = set value to variable if nil
  70.   #--------------------------------------------------------------------------
  71.   alias r2_map_step_count_setup setup
  72.   def setup(map_id)
  73.     r2_map_step_count_setup(map_id)
  74.     $game_variables[R2_Map_Steps::Variable] = [] if $game_variables[R2_Map_Steps::Variable] == 0
  75.     $game_variables[R2_Map_Steps::Variable][map_id] ||= 0
  76.   end
  77. end
  78.  
  79. #==============================================================================
  80. # ** Game_Player = add steps to variable
  81. #==============================================================================
  82. class Game_Player < Game_Character
  83.   #--------------------------------------------------------------------------
  84.   # * alias Increase Steps
  85.   #--------------------------------------------------------------------------
  86.   alias r2_increase_map_step_count  increase_steps
  87.   def increase_steps
  88.     r2_increase_map_step_count
  89.     $game_variables[R2_Map_Steps::Variable][$game_map.map_id] += 1
  90.   end
  91. end
  92.  
  93. #==============================================================================
  94. # ** Game_Interpreter = commands
  95. #==============================================================================
  96. class Game_Interpreter
  97.   #--------------------------------------------------------------------------
  98.   # * Add Step Count
  99.   #--------------------------------------------------------------------------
  100.   def add_step_count(id, i)
  101.     $game_variables[R2_Map_Steps::Variable][id] += i
  102.   end
  103.   #--------------------------------------------------------------------------
  104.   # * Reset Step Count
  105.   #--------------------------------------------------------------------------
  106.   def reset_step_count(id)
  107.     $game_variables[R2_Map_Steps::Variable][id] = 0
  108.   end
  109.   #--------------------------------------------------------------------------
  110.   # * Subtract Step Count
  111.   #--------------------------------------------------------------------------
  112.   def subtract_step_count(id, i)
  113.     $game_variables[R2_Map_Steps::Variable][id] -= i
  114.     $game_variables[R2_Map_Steps::Variable][id] = 0 if $game_variables[R2_Map_Steps::Variable][id] < 0
  115.   end
  116.   #--------------------------------------------------------------------------
  117.   # * Get Step Count
  118.   #--------------------------------------------------------------------------
  119.   def get_step_count(id)
  120.     return $game_variables[R2_Map_Steps::Variable][id]
  121.   end  
  122. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement