Advertisement
roninator2

Large Sprite X offset

Nov 17th, 2024
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 7.53 KB | None | 0 0
  1. # ╔═══════════════════════════════════════════════╦════════════════════╗
  2. # ║ Title: Large Sprite X offset                  ║  Version: 1.00     ║
  3. # ║ Author: Roninator2                            ║                    ║
  4. # ╠═══════════════════════════════════════════════╬════════════════════╣
  5. # ║ Function:                                     ║   Date Created     ║
  6. # ║                                               ╠════════════════════╣
  7. # ║   Move event on X axis                        ║    10 Sep 2023     ║
  8. # ╚═══════════════════════════════════════════════╩════════════════════╝
  9. # ╔════════════════════════════════════════════════════════════════════╗
  10. # ║ Requires: nil                                                      ║
  11. # ║                                                                    ║
  12. # ╚════════════════════════════════════════════════════════════════════╝
  13. # ╔════════════════════════════════════════════════════════════════════╗
  14. # ║ Brief Description:                                                 ║
  15. # ║        Move sprite graphic to align with player                    ║
  16. # ╚════════════════════════════════════════════════════════════════════╝
  17. # ╔════════════════════════════════════════════════════════════════════╗
  18. # ║ Instructions:                                                      ║
  19. # ║   Add a { ("curly bracket") to the filename                        ║
  20. # ║   Add a + ("plus sign") to the filename                            ║
  21. # ║                                                                    ║
  22. # ║   The script will move the sprite if it finds the {                ║
  23. # ║   The sprite will move 16 pixels to the right for                  ║
  24. # ║   every + that is in the filename                                  ║
  25. # ║                                                                    ║
  26. # ║   e.g. !${+_filename.png                                           ║
  27. # ║     this will move the sprite 16 pixels to the right               ║
  28. # ║        !${++_filename.png                                          ║
  29. # ║     this will move the sprite 32 pixels to the right               ║
  30. # ║                                                                    ║
  31. # ║   Also supports - sign                                             ║
  32. # ║   e.g. !${-_filename.png                                           ║
  33. # ║     this will move the sprite 16 pixels to the left                ║
  34. # ║        !${--_filename.png                                          ║
  35. # ║     this will move the sprite 32 pixels to the left                ║
  36. # ║                                                                    ║
  37. # ╚════════════════════════════════════════════════════════════════════╝
  38. # ╔════════════════════════════════════════════════════════════════════╗
  39. # ║ Updates:                                                           ║
  40. # ║ 1.00 - 10 Sep 2023 - Script finished                               ║
  41. # ║                                                                    ║
  42. # ╚════════════════════════════════════════════════════════════════════╝
  43. # ╔════════════════════════════════════════════════════════════════════╗
  44. # ║ Credits and Thanks:                                                ║
  45. # ║   Roninator2                                                       ║
  46. # ║                                                                    ║
  47. # ╚════════════════════════════════════════════════════════════════════╝
  48. # ╔════════════════════════════════════════════════════════════════════╗
  49. # ║ Terms of use:                                                      ║
  50. # ║  Follow the original Authors terms of use where applicable         ║
  51. # ║    - When not made by me (Roninator2)                              ║
  52. # ║  Free for all uses in RPG Maker except nudity                      ║
  53. # ║  Anyone using this script in their project before these terms      ║
  54. # ║  were changed are allowed to use this script even if it conflicts  ║
  55. # ║  with these new terms. New terms effective 03 Apr 2024             ║
  56. # ║  No part of this code can be used with AI programs or tools        ║
  57. # ║  Credit must be given                                              ║
  58. # ╚════════════════════════════════════════════════════════════════════╝
  59.  
  60. module R2_Sprite_Offset_X_Adjust
  61.   Value = 16 # how many pixels it will move for each sign
  62. end
  63.  
  64. class Game_CharacterBase
  65.   #--------------------------------------------------------------------------
  66.   # * Get Number of Pixels to Shift Up from Tile Position
  67.   #--------------------------------------------------------------------------
  68.   def shift_x
  69.     @character_name[/{/] ? shift_plus_x * R2_Sprite_Offset_X_Adjust::Value : 0
  70.   end
  71.   #--------------------------------------------------------------------------
  72.   # * Determine Object Character
  73.   #--------------------------------------------------------------------------
  74.   def shift_plus_x
  75.     sx = 0
  76.     for x in @character_name.split("+")
  77.       sx += 1
  78.     end
  79.     for x in @character_name.split("-")
  80.       sx -= 1
  81.     end
  82.     return sx
  83.   end
  84.   #--------------------------------------------------------------------------
  85.   # * Get Screen X-Coordinates
  86.   #--------------------------------------------------------------------------
  87.   def screen_x
  88.     $game_map.adjust_x(@real_x) * 32 + 16 + shift_x
  89.   end
  90. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement