Advertisement
roninator2

Player dash through event but not tile event

Dec 11th, 2024
27
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 5.88 KB | None | 0 0
  1. # ╔═══════════════════════════════════════════════╦════════════════════╗
  2. # ║ Title: Player Dash through Event              ║  Version: 1.00     ║
  3. # ║ Author: Roninator2                            ║                    ║
  4. # ╠═══════════════════════════════════════════════╬════════════════════╣
  5. # ║ Function:                                     ║   Date Created     ║
  6. # ║                                               ╠════════════════════╣
  7. # ║   Allow player to pass through some events    ║    27 Nov 2021     ║
  8. # ╚═══════════════════════════════════════════════╩════════════════════╝
  9. # ╔════════════════════════════════════════════════════════════════════╗
  10. # ║ Requires: nil                                                      ║
  11. # ║                                                                    ║
  12. # ╚════════════════════════════════════════════════════════════════════╝
  13. # ╔════════════════════════════════════════════════════════════════════╗
  14. # ║ Brief Description:                                                 ║
  15. # ║       Player can go through events but not tiles                   ║
  16. # ╚════════════════════════════════════════════════════════════════════╝
  17. # ╔════════════════════════════════════════════════════════════════════╗
  18. # ║ Instructions:                                                      ║
  19. # ║   Plug and play                                                    ║
  20. # ║                                                                    ║
  21. # ╚════════════════════════════════════════════════════════════════════╝
  22. # ╔════════════════════════════════════════════════════════════════════╗
  23. # ║ Updates:                                                           ║
  24. # ║ 1.00 - 27 Nov 2021 - Script finished                               ║
  25. # ║                                                                    ║
  26. # ╚════════════════════════════════════════════════════════════════════╝
  27. # ╔════════════════════════════════════════════════════════════════════╗
  28. # ║ Credits and Thanks:                                                ║
  29. # ║   Roninator2                                                       ║
  30. # ║                                                                    ║
  31. # ╚════════════════════════════════════════════════════════════════════╝
  32. # ╔════════════════════════════════════════════════════════════════════╗
  33. # ║ Terms of use:                                                      ║
  34. # ║  Follow the original Authors terms of use where applicable         ║
  35. # ║    - When not made by me (Roninator2)                              ║
  36. # ║  Free for all uses in RPG Maker except nudity                      ║
  37. # ║  Anyone using this script in their project before these terms      ║
  38. # ║  were changed are allowed to use this script even if it conflicts  ║
  39. # ║  with these new terms. New terms effective 03 Apr 2024             ║
  40. # ║  No part of this code can be used with AI programs or tools        ║
  41. # ║  Credit must be given                                              ║
  42. # ╚════════════════════════════════════════════════════════════════════╝
  43. class Game_Player < Game_Character
  44.   def passable?(x, y, d)
  45.     x2 = $game_map.round_x_with_direction(x, d)
  46.     y2 = $game_map.round_y_with_direction(y, d)
  47.     return false unless $game_map.valid?(x2, y2)
  48.     return true if @through || debug_through?
  49.     id = $game_map.event_id_xy(x2,y2)
  50.     evpass = false
  51.     if id != 0
  52.       evpass = $game_map.events[id].tile_id == 0 ? true : false
  53.     end
  54.     return true if dash? && evpass && passable?(x2, y2, d)
  55.     return false unless map_passable?(x, y, d)
  56.     return false unless map_passable?(x2, y2, reverse_dir(d))
  57.     return false if collide_with_characters?(x2, y2)
  58.     return true
  59.   end
  60. end
  61.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement