Advertisement
roninator2

Lose Gold on Death

Dec 13th, 2024
25
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 7.51 KB | None | 0 0
  1. # ╔═══════════════════════════════════════════════╦════════════════════╗
  2. # ║ Title: Lose gold on Death                     ║  Version: 1.00     ║
  3. # ║ Author: Roninator2                            ║                    ║
  4. # ╠═══════════════════════════════════════════════╬════════════════════╣
  5. # ║ Function:                                     ║    Date Created    ║
  6. # ║                                               ╠════════════════════╣
  7. # ║ permanently lose gold on death                ║    03 Dec 2020     ║
  8. # ╚═══════════════════════════════════════════════╩════════════════════╝
  9. # ╔════════════════════════════════════════════════════════════════════╗
  10. # ║ Requires: nil                                                      ║
  11. # ║                                                                    ║
  12. # ╚════════════════════════════════════════════════════════════════════╝
  13. # ╔════════════════════════════════════════════════════════════════════╗
  14. # ║ Brief Description:                                                 ║
  15. # ║       Simulate games that cost you gold when death occurs          ║
  16. # ╚════════════════════════════════════════════════════════════════════╝
  17. # ╔════════════════════════════════════════════════════════════════════╗
  18. # ║ Instructions:                                                      ║
  19. # ║   Set option to use party gold before death or                     ║
  20. # ║   use the party gold from the save file                            ║
  21. # ║   Specify value to determine how much gold to lose (%)             ║
  22. # ║   Specify to allow player to press a button on Game Over           ║
  23. # ║   screen. If true, this will allow player to close the game        ║
  24. # ║   in order to prevent this script from cutting the gold            ║
  25. # ║                                                                    ║
  26. # ╚════════════════════════════════════════════════════════════════════╝
  27. # ╔════════════════════════════════════════════════════════════════════╗
  28. # ║ Updates:                                                           ║
  29. # ║ 1.00 - 03 Dec 2020 - Script finished                               ║
  30. # ║                                                                    ║
  31. # ╚════════════════════════════════════════════════════════════════════╝
  32. # ╔════════════════════════════════════════════════════════════════════╗
  33. # ║ Credits and Thanks:                                                ║
  34. # ║   Roninator2                                                       ║
  35. # ║                                                                    ║
  36. # ╚════════════════════════════════════════════════════════════════════╝
  37. # ╔════════════════════════════════════════════════════════════════════╗
  38. # ║ Terms of use:                                                      ║
  39. # ║  Follow the original Authors terms of use where applicable         ║
  40. # ║    - When not made by me (Roninator2)                              ║
  41. # ║  Free for all uses in RPG Maker except nudity                      ║
  42. # ║  Anyone using this script in their project before these terms      ║
  43. # ║  were changed are allowed to use this script even if it conflicts  ║
  44. # ║  with these new terms. New terms effective 03 Apr 2024             ║
  45. # ║  No part of this code can be used with AI programs or tools        ║
  46. # ║  Credit must be given                                              ║
  47. # ╚════════════════════════════════════════════════════════════════════╝
  48.  
  49. module R2
  50.   module Gameover
  51.     Goldcut = 0.75 # 75% of current gold in party is kept
  52.     Use_Party_Gold = true
  53.     # will use the current party gold not the saved gold if true
  54.     Wait_for_Button = true
  55.   end
  56. end
  57.  
  58. # ╔════════════════════════════════════════════════════════════════════╗
  59. # ║                      End of editable region                        ║
  60. # ╚════════════════════════════════════════════════════════════════════╝
  61.  
  62. class Scene_Gameover < Scene_Base
  63.   def update
  64.     super
  65.     if R2::Gameover::Wait_for_Button == true
  66.       goto_gold_cut if Input.trigger?(:C) || Input.trigger?(:B)
  67.     else
  68.       goto_gold_cut
  69.     end
  70.   end
  71.   def fadeout_speed
  72.     return 60
  73.   end
  74.   def fadein_speed
  75.     return 30
  76.   end
  77.   #--------------------------------------------------------------------------
  78.   # * Transition to saved game
  79.   #--------------------------------------------------------------------------
  80.   def goto_gold_cut
  81.     if DataManager.save_file_exists?
  82.       if R2::Gameover::Use_Party_Gold == true
  83.         current = $game_party.gold
  84.         DataManager.load_game(DataManager.last_savefile_index)
  85.       else
  86.         DataManager.load_game(DataManager.last_savefile_index)
  87.         current = $game_party.gold
  88.       end
  89.       Sound.play_load
  90.       fadeout_all
  91.       $game_system.on_after_load
  92.       SceneManager.goto(Scene_Map)
  93.       cut = (current * R2::Gameover::Goldcut).to_i
  94.       $game_party.lose_gold(current)
  95.       $game_party.gain_gold(cut)
  96.       $game_system.on_before_save
  97.       DataManager.save_game(DataManager.last_savefile_index)
  98.     else
  99.       goto_title
  100.     end
  101.   end
  102. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement