Advertisement
roninator2

Transmute enemy into gold on death

Dec 9th, 2024
30
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 7.92 KB | None | 0 0
  1. # ╔═══════════════════════════════════════════════╦════════════════════╗
  2. # ║ Title: Transmute enemy into Gold              ║  Version: 1.00     ║
  3. # ║ Author: Roninator2                            ║                    ║
  4. # ╠═══════════════════════════════════════════════╬════════════════════╣
  5. # ║ Function:                                     ║   Date Created     ║
  6. # ║                                               ╠════════════════════╣
  7. # ║    Alter enemy death                          ║    05 Sep 2022     ║
  8. # ╚═══════════════════════════════════════════════╩════════════════════╝
  9. # ╔════════════════════════════════════════════════════════════════════╗
  10. # ║ Requires: nil                                                      ║
  11. # ║                                                                    ║
  12. # ╚════════════════════════════════════════════════════════════════════╝
  13. # ╔════════════════════════════════════════════════════════════════════╗
  14. # ║ Brief Description:                                                 ║
  15. # ║       Transmute enemy into gold for specific skill on death        ║
  16. # ╚════════════════════════════════════════════════════════════════════╝
  17. # ╔════════════════════════════════════════════════════════════════════╗
  18. # ║ Instructions:                                                      ║
  19. # ║                                                                    ║
  20. # ║   Specify which method to use for gaining gold                     ║
  21. # ║   0 = enemy maximum hp                                             ║
  22. # ║   1 = random number from amount specified                          ║
  23. # ║   2 = exact amount specified                                       ║
  24. # ║                                                                    ║
  25. # ║   Specify the skill id that will be the transmute skill            ║
  26. # ║                                                                    ║
  27. # ║   Specify the variable to use (required)                           ║
  28. # ║                                                                    ║
  29. # ║   Specify the message to display                                   ║
  30. # ║    "Turned Slime A into 100 Gold"                                  ║
  31. # ║                                                                    ║
  32. # ║   This script will cuyrrently only work for one skill              ║
  33. # ╚════════════════════════════════════════════════════════════════════╝
  34. # ╔════════════════════════════════════════════════════════════════════╗
  35. # ║ Updates:                                                           ║
  36. # ║ 1.00 - 05 Sep 2022 - Script finished                               ║
  37. # ║                                                                    ║
  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_Gain_Gold_Enemy_Bonus
  57.   Method = 0 # 0 = enemy.hp, 1 = random amount, 2 = specific amount
  58.   Amount = 1000 # for 1 & 2. 1 = random 1000, 2 = exactly 1000
  59.   Skill = 128 # transmute skill
  60.   Variable = 9
  61.   Message = "Turned %s into " # %s = enemy name
  62. end
  63.  
  64. # ╔════════════════════════════════════════════════════════════════════╗
  65. # ║                      End of editable region                        ║
  66. # ╚════════════════════════════════════════════════════════════════════╝
  67.  
  68. class Game_Battler < Game_BattlerBase
  69.   attr_accessor :gold_skill
  70.   alias r2_enemy_gold_transmute die
  71.   def die
  72.     r2_enemy_gold_transmute
  73.     return if @actions.empty?
  74.     if self.is_a?(Game_Enemy)
  75.       if $game_variables[R2_Gain_Gold_Enemy_Bonus::Variable] == R2_Gain_Gold_Enemy_Bonus::Skill
  76.         add_gold
  77.       end
  78.     end
  79.     $game_variables[R2_Gain_Gold_Enemy_Bonus::Variable] = 0
  80.   end
  81.   def current_action
  82.     act = @actions[0]
  83.     return if act.nil?
  84.     $game_variables[R2_Gain_Gold_Enemy_Bonus::Variable] = @actions[0].item.id if self.is_a?(Game_Actor) && !@actions.empty?
  85.     return act
  86.   end
  87.   def add_gold
  88.     gold = 0
  89.     case R2_Gain_Gold_Enemy_Bonus::Method
  90.     when 0
  91.       gold = self.mhp
  92.     when 1
  93.       gold = rand(R2_Gain_Gold_Enemy_Bonus::Amount)
  94.     when 2
  95.       gold = R2_Gain_Gold_Enemy_Bonus::Amount
  96.     end
  97.     $game_party.gain_gold(gold)
  98.     text = sprintf(R2_Gain_Gold_Enemy_Bonus::Message,self.name) + gold.to_s + " \\G!"
  99.     $game_message.add(text)
  100.   end
  101. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement