Advertisement
Dekita

PSSv1.1

Aug 13th, 2012
267
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 46.29 KB | None | 0 0
  1. #Dekita's=======================================================================
  2. #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
  3. #===============================================================================
  4. #                                                                          v1.1
  5. #                          ★ Perfect Status Screen ★
  6. #
  7. #===============================================================================
  8. #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
  9. #===============================================================================
  10. #
  11. # -- Last updated: 11/08/2012 <-(D/M/Y)
  12. #
  13. # -- Difficulty: Plug'n'play - (Easy)
  14. #
  15. # -- Customisation: Like a pimped out ride! - (Very Low)
  16. #
  17. # -- Requires: Dekita's - Perfect Stat Point Distribution System v1.1+
  18. #
  19. # -- Recommended: N/A
  20. #
  21. # -- Compatable:  RPG Maker VX Ace ONLY!
  22. #                 Yanfly Skills Cost Manager v1.03+
  23. #                 Yanfly Engine Ace - Skill Restrictions v1.02+
  24. #                
  25. #===============================================================================
  26. #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
  27. #===============================================================================
  28. #===============================================================================
  29. # ☆ Script Information:
  30. #=======================
  31. # This script will Display necessary information regarding an actors stats,
  32. # parameters, "Vitality", "Strength", "Dexterity" and "Magic".
  33. # Also displays elemental/state resistances and attack values.
  34. # Equipment information will not be visable.
  35. #
  36. #===============================================================================
  37.  
  38. #===============================================================================
  39. # ☆ TERMS OF USE:
  40. #===============================================================================
  41. #
  42. # 1. You must give credit to Dekita.
  43. #
  44. # 2. This script is for NON-Commercial use ONLY!*
  45. #
  46. # 3. You CANNOT give credit to yourself for Re-posting this script
  47. #    or Posting a modified version.*
  48. #
  49. # 4. Do not Re-Distribute this script.
  50. #
  51. # 5. You are NOT allowed to convert this script to any other engine,
  52. #    E.G converting it from RGSS3 into RGSS2.*
  53. #
  54. # 6. ENJOY!
  55. #
  56. #-------------------------------------------------------------------------------
  57. # * = Unless permissions are given by Dekita. < e-mail DekitaRPG@gmail.com
  58. #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  59. #===============================================================================
  60.  
  61. #===============================================================================
  62. # ☆ History:
  63. #============
  64. # D - M - Y
  65. # 13/08/2o12 - released Script. (v1.01)
  66. # 11/08/2o12 - Spiced up some shit
  67. #            - Added "Page Three" (outbound element and status info)
  68. # 08/08/2o12 - Released Script. (v1.0)
  69. # 07/08/2o12 - started script.
  70. #-------------------------------------------------------------------------------
  71. #===============================================================================
  72. # ☆ Thanks to :
  73. #===============
  74. # N/A
  75. #
  76. #===============================================================================
  77.  
  78. #===============================================================================
  79. # ☆ Foresight Into The Future:
  80. #==============================
  81. # Nothing "Major" planned.
  82. #
  83. #-------------------------------------------------------------------------------
  84. # If you have any ideas e-mail me at DekitaRPG@gmail.com
  85. #===============================================================================
  86.  
  87. #===============================================================================
  88. # ☆ Known Bugs:
  89. #=================
  90. # N/A
  91. #
  92. #===============================================================================
  93.  
  94. #===============================================================================
  95. # ☆ INSTRUCTIONS:
  96. #=================
  97. # Place this script UNDER "▼ Materials" and ABOVE "▼ Main" in your script editor.
  98. # Place this script UNDER "Dekita - Perfect Stat Point Distribution System".
  99. #
  100. #===============================================================================
  101. =begin
  102. #===============================================================================
  103. # ☆ Script Calls:
  104. #=================
  105. # Dont see why you would want to but you can use this script call to
  106. # call the status screen.
  107.  
  108. SceneManager.call(Scene_Status)
  109.  
  110. #
  111. #===============================================================================
  112. =end
  113.  
  114. #===============================================================================
  115. # ☆ Import:
  116. #===========
  117. $imported = {} if $imported.nil?
  118. $imported["DPB-PSS"] = true
  119. #
  120. #===============================================================================
  121.  
  122. #===============================================================================
  123. # ☆ Perfect Status Screen Begin:
  124. #================================
  125. module DPB
  126.   module PSS
  127.    
  128.     COMMANDS =[
  129.     [:pageone,   "I"],
  130.     [:pagetwo,   "II"],
  131.     [:pagethree, "III"],
  132. #    [:pspds, "PSPDS"] < for future updates
  133.     ]#DO NOT REMOVE
  134.    
  135. #===============================================================================#
  136. #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
  137. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
  138. #                                                                               #
  139. #                                     PSS                                       #
  140. #                           (Perfect Status Screen)                             #
  141. #                           - CUSTOMISATION BEGIN -                             #
  142. #                                                                               #
  143. #                                                                               #
  144. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
  145. #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
  146. #===============================================================================#    
  147. #===============================================================================
  148. # ☆ Customisation = Tah-Dah
  149. #===========================
  150. # I have added as much customisation as i thought was needed.
  151. # Which wasnt very much as most of the data e.g font sizes and param column data
  152. # is taken from the PSPDS Customisation module.
  153. #
  154. # It is advised you take a moment to look through the cusomisation options
  155. # to see if any apply to your current project.
  156. #
  157. #===============================================================================    
  158.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  159.     # ☆ Elements Row 1
  160.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  161.     # You can control from here which elements are viewable in row 1
  162.     # along with their icons.
  163.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  164.  
  165.     ELEMENT_VOCAB = "Elements: (defend)" # for incomming elemental damage
  166.    
  167.     ATK_ELE_VOCAB = "Elements: (attack)" # for outgoing elemental damage
  168.    
  169.     ELEMENTS_ROW1  = [3..10]  # Elements shown. Maximum of 8 can be shown per row.
  170.  
  171.     ELEMENT_ICONS_ROW1   ={         # Contains element icon information.
  172.     # Element ID => Icon,
  173.                3 =>  96, # Fire
  174.                4 =>  97, # Ice
  175.                5 =>  98, # Thunder
  176.                6 =>  99, # Water
  177.                7 => 100, # Earth
  178.                8 => 101, # Wind
  179.                9 => 102, # Holy
  180.               10 => 103, # Dark
  181.     } # Do not remove this.
  182.  
  183.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  184.     # ☆  Elements Row 2
  185.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  186.     # You can control from here whether you want to display a second row of
  187.     # elemental data along with their icons.
  188.     # Just set "SHOW_ELE_ROW_2" to "true" and change the Element ID and Icon
  189.     # to suit your needs.
  190.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  191.    
  192.     SHOW_ELE_ROW_2 = false # made for those who want more elements in their game :D
  193.    
  194.     ELEMENTS_ROW2  = [10, 9, 8, 7, 6, 5, 4, 3]  # Elements shown. Maximum of 8 can be shown per row.
  195.        
  196.     ELEMENT_ICONS_ROW2   ={         # Contains element icon information.
  197.     # Element ID => Icon,
  198.                3 =>  96, # Fire
  199.                4 =>  97, # Ice
  200.                5 =>  98, # Thunder
  201.                6 =>  99, # Water
  202.                7 => 100, # Earth
  203.                8 => 101, # Wind
  204.                9 => 102, # Holy
  205.               10 => 103, # Dark
  206.     } # Do not remove this.
  207.    
  208.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  209.     # ☆  States Row 1
  210.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  211.     # You can control from here what states are shown in row 1.
  212.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  213.    
  214.     STATUS_VOCAB = "Status: (defend)" # for imcomming status effects
  215.  
  216.     ATK_STATUS_VOCAB = "Status: (attack)"  # for outgoing status effects
  217.    
  218.     STATES_ROW_1 = [1..8]     # States shown. Maximum of 8 can be shown.
  219.    
  220.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  221.     # ☆  States Row 2
  222.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  223.     # You can control from here what states are shown in row 2.
  224.     #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  225.  
  226.     STATES_ROW_2 = [12..19]     # States shown. Maximum of 8 can be shown.
  227.    
  228. #===============================================================================#
  229. #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
  230. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
  231. #                                                                               #
  232. #                                     PSS                                       #
  233. #                           (Perfect Status Screen)                             #
  234. #                            - CUSTOMISATION END -                              #
  235. #                                                                               #
  236. #                                                                               #
  237. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
  238. #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
  239. #===============================================================================#
  240. #                           - DekitaRPG@gmail.com -                             #
  241. #===============================================================================#
  242. #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
  243. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
  244. #                                                                               #
  245. #                                     PSS                                       #
  246. #                           (Perfect Status Screen)                             #
  247. #                               - SCRIPT BEGIN -                                #
  248. #                                                                               #
  249. #                                                                               #
  250. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
  251. #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
  252. #===============================================================================#
  253.  
  254. #===============================================================================#
  255. # ARE YOU MODIFYING BEYOND THIS POINT? \.\.                                     #
  256. # YES?\.\.                                                                      #
  257. # OMG, REALLY?                                                                  #
  258. # WELL SLAP MY FACE AND CALL ME A DRAGON.\..\..                                 #
  259. # I REALLY DIDN'T THINK YOU HAD IT IN YOU.\..\..                                #
  260. #===============================================================================#
  261.  
  262. #==============================================================================#
  263. # Error Message
  264. #==============================================================================#
  265.   unless $imported["DPB-PSPDS"]
  266.     msg = "The script ''%s'' requires ''Dekita - Perfect Stat Point Distribution System'' in order to function properly. It must also be placed below it!"
  267.     script = "Dekita - Perfect Status Screen"
  268.     msgbox(sprintf(msg, script))
  269.     exit
  270.   end
  271.  
  272. module_function
  273.     #--------------------------------------------------------------------------
  274.     # convert_integer_array
  275.     #--------------------------------------------------------------------------
  276.     def convert_integer_array(array)
  277.       result = []
  278.       array.each { |i|
  279.         case i
  280.         when Range; result |= i.to_a
  281.         when Integer; result |= [i]
  282.         end }
  283.       return result
  284.     end
  285.     #--------------------------------------------------------------------------
  286.     # converted_contants
  287.     #--------------------------------------------------------------------------
  288.     ELEMENTS_ROW1 = convert_integer_array(ELEMENTS_ROW1)
  289.     ELEMENTS_ROW2 = convert_integer_array(ELEMENTS_ROW2)
  290.     STATES_ROW_1 = convert_integer_array(STATES_ROW_1)
  291.     STATES_ROW_2 = convert_integer_array(STATES_ROW_2)    
  292.   end # PSS
  293. end #DPB
  294. #==============================================================================
  295. # Icon
  296. #==============================================================================
  297. module Icon
  298.   #--------------------------------------------------------------------------
  299.   # self.element
  300.   #--------------------------------------------------------------------------
  301.   def self.element(id)
  302.     return 0 unless DPB::PSS::ELEMENT_ICONS_ROW1.include?(id)
  303.     return DPB::PSS::ELEMENT_ICONS_ROW1[id]
  304.   end    
  305. end # Icon
  306.  
  307. #==============================================================================
  308. # Game_BattlerBase
  309. #==============================================================================
  310. class Game_BattlerBase
  311.   #--------------------------------------------------------------------------
  312.   # new method: Get Attack Element Rate
  313.   #--------------------------------------------------------------------------
  314.   def atk_element_rate(element_id)
  315.     features_sum(FEATURE_ATK_ELEMENT, element_id)
  316.   end  
  317. end # Game_BattlerBase
  318.  
  319. #==============================================================================
  320. # Game_Temp
  321. #==============================================================================
  322. class Game_Temp
  323.   #--------------------------------------------------------------------------
  324.   # public instance variables
  325.   #--------------------------------------------------------------------------
  326.   attr_accessor :scene_status_index
  327.   attr_accessor :scene_status_oy
  328. end # Game_Temp
  329.  
  330. #==============================================================================
  331. # Window_StatusCommand
  332. #==============================================================================
  333. class Window_StatusCommand < Window_Command
  334.   #--------------------------------------------------------------------------
  335.   # public instance variables
  336.   #--------------------------------------------------------------------------
  337.   attr_accessor :item_window
  338.   #--------------------------------------------------------------------------
  339.   # initialize
  340.   #--------------------------------------------------------------------------
  341.   def initialize(dx, dy)
  342.     super(dx, dy)
  343.     @actor = nil
  344.         self.opacity = 0
  345.   end
  346.   #--------------------------------------------------------------------------
  347.   # window_width
  348.   #--------------------------------------------------------------------------
  349.   def window_width; return 0; end
  350.   #--------------------------------------------------------------------------
  351.   # actor=
  352.   #--------------------------------------------------------------------------
  353.   def actor=(actor)
  354.     return if @actor == actor
  355.     @actor = actor
  356.     refresh
  357.   end
  358.   #--------------------------------------------------------------------------
  359.   # visible_line_number
  360.   #--------------------------------------------------------------------------
  361.   def visible_line_number; return 4; end
  362.   #--------------------------------------------------------------------------
  363.   # ok_enabled?
  364.   #--------------------------------------------------------------------------
  365.   def ok_enabled?
  366.     return handle?(current_symbol)
  367.   end
  368.   #--------------------------------------------------------------------------
  369.   # make_command_list
  370.   #--------------------------------------------------------------------------
  371.   def make_command_list
  372.     return unless @actor
  373.     for command in DPB::PSS::COMMANDS
  374.       case command[0]
  375.       #--- Default ---
  376.       when :pageone, :pagetwo, :pagethree, :pspds
  377.         add_command(command[1], command[0])
  378.       else
  379.         end
  380.     end
  381.     if !$game_temp.scene_status_index.nil?
  382.       select($game_temp.scene_status_index)
  383.       self.oy = $game_temp.scene_status_oy
  384.     end
  385.     $game_temp.scene_status_index = nil
  386.     $game_temp.scene_status_oy = nil
  387.   end
  388.   #--------------------------------------------------------------------------
  389.   # process_ok
  390.   #--------------------------------------------------------------------------
  391.   def process_ok
  392.     $game_temp.scene_status_index = index
  393.     $game_temp.scene_status_oy = self.oy
  394.     super
  395.   end
  396.   #--------------------------------------------------------------------------
  397.   # update
  398.   #--------------------------------------------------------------------------
  399.   def update
  400.     super
  401.     update_item_window
  402.   end
  403.   #--------------------------------------------------------------------------
  404.   # update_item_window
  405.   #--------------------------------------------------------------------------
  406.   def update_item_window
  407.     return if @item_window.nil?
  408.     return if @current_index == current_symbol
  409.     @current_index = current_symbol
  410.     @item_window.refresh
  411.   end
  412.   #--------------------------------------------------------------------------
  413.   # item_window=
  414.   #--------------------------------------------------------------------------
  415.   def item_window=(window)
  416.     @item_window = window
  417.     update
  418.   end
  419.   #--------------------------------------------------------------------------
  420.   # update_help
  421.   #--------------------------------------------------------------------------
  422.   def update_help
  423.     return if @actor.nil?
  424.     @help_window.set_text(@actor.actor.description)
  425.   end
  426. end # Window_StatusCommand
  427.  
  428. #==============================================================================
  429. # Window_StatusItem
  430. #==============================================================================
  431. class Window_StatusItem < Window_Base
  432.   #--------------------------------------------------------------------------
  433.   # initialize
  434.   #--------------------------------------------------------------------------
  435.   def initialize(dx, dy, command_window)
  436.     super(dx, dy, Graphics.width, Graphics.height - dy)
  437.     @command_window = command_window
  438.     @actor = nil
  439.     refresh
  440.   end
  441.   #--------------------------------------------------------------------------
  442.   # actor=
  443.   #--------------------------------------------------------------------------
  444.   def actor=(actor)
  445.     return if @actor == actor
  446.     @actor = actor
  447.     refresh
  448.   end
  449.   #--------------------------------------------------------------------------
  450.   # refresh
  451.   #--------------------------------------------------------------------------
  452.   def refresh
  453.     contents.clear
  454.     reset_font_settings
  455.     return unless @actor
  456.     draw_window_contents
  457.   end
  458.   #--------------------------------------------------------------------------
  459.   # draw_window_contents
  460.   #--------------------------------------------------------------------------
  461.   def draw_window_contents
  462.     case @command_window.current_symbol
  463.     when :pageone
  464.         draw_block1(line_height * 1)
  465.         draw_block2(line_height * 1)
  466.         draw_block4(line_height * 14)        
  467.         draw_page_one(0, 0)
  468.     when :pagetwo
  469.         draw_block1(line_height * 1)
  470.         draw_block2(line_height * 1)
  471.         draw_block4(line_height * 14)        
  472.         draw_page_two(0, 0)
  473.     when :pagethree
  474.         draw_block1(line_height * 1)
  475.         draw_block2(line_height * 1)
  476.         draw_block4(line_height * 14)        
  477. #        draw_block3(line_height * 1)
  478.         draw_page_three(0, 0)
  479.     else
  480.       end
  481.     end
  482.   #--------------------------------------------------------------------------
  483.   # * Draw Block 1
  484.   #--------------------------------------------------------------------------
  485.   def draw_block1(y)
  486.         draw_actor_face(@actor, (window_width - 24) / 2.5, 0)
  487.         contents.font.size = 22
  488.         draw_actor_name(@actor,(window_width + 24) / 2, line_height * 0)
  489.         contents.font.size = DPB::PSPDS::FONTSIZE
  490.         draw_actor_class(@actor, (window_width + 24) / 2, line_height * 1.6)      
  491.   if DPB::PSPDS::DRAW_ACTOR_GRAPHIC
  492.     draw_actor_graphic(@actor, DPB::PSPDS::DAG_X, DPB::PSPDS::DAG_Y)#, 50)
  493.   else
  494.   end
  495. end
  496.   #--------------------------------------------------------------------------
  497.   # * Draw Block 2
  498.   #--------------------------------------------------------------------------
  499.   def draw_block2(y)
  500.     draw_basic_info(136, y)
  501.     draw_exp_info(4, y+line_height * 7)
  502.   end
  503.   #--------------------------------------------------------------------------
  504.   # * Draw Block 3
  505.   #--------------------------------------------------------------------------
  506.   def draw_block3(y)
  507. #        draw_properties_paramcolumn
  508.     draw_equipments(288, y)
  509.   end
  510.   #--------------------------------------------------------------------------
  511.   # * Draw Block 4
  512.   #--------------------------------------------------------------------------
  513.   def draw_block4(y)
  514.     draw_description(4, y)
  515.   end
  516.   #--------------------------------------------------------------------------
  517.   # * Draw Horizontal Line
  518.   #--------------------------------------------------------------------------
  519.   def draw_horz_line(y)
  520.     line_y = y + line_height / 2 - 1
  521.     contents.fill_rect(0, line_y, contents_width, 2, line_color)
  522.   end
  523.   #--------------------------------------------------------------------------
  524.   # * Get Color of Horizontal Line
  525.   #--------------------------------------------------------------------------
  526.   def line_color
  527.     color = normal_color
  528.     color.alpha = 48
  529.     color
  530.   end
  531.   #--------------------------------------------------------------------------
  532.   # * Draw Basic Information
  533.   #--------------------------------------------------------------------------
  534.   def draw_basic_info(x, y)
  535.         draw_actor_level(@actor, (window_width + 24) / 2, line_height * 0.8)
  536.         if  DPB::PSPDS::EXIT_BEFORE_POINTS_SPENT
  537.         draw_level_up_points(x+20, 0)
  538.       else
  539.         end
  540.         draw_actor_icons(@actor, (window_width - 24) / 2.5, y + line_height * 3)
  541.         contents.font.size = DPB::PSPDS::PROPFONTSIZE
  542.         draw_new_stats_column
  543.         if $imported["YEA-JPManager"]
  544.           contents.font.size = DPB::PSPDS::PARAMFONTSIZE
  545.         draw_actor_jp(@actor, (window_width + 24) / 3, line_height * 3.33)
  546.          contents.font.size = DPB::PSPDS::PROPFONTSIZE
  547.       else
  548.      end
  549.    end
  550.    
  551.   def draw_level_up_points(x,y)
  552.     contents.font.size = DPB::PSPDS::FONTSIZE + 4
  553.     draw_text((window_width - 24) / 4, 4 + line_height * 0,180,line_height,DPB::PSPDS::LVLUPPTSVOCAB + @actor.level_up_pts.to_s)
  554.     end
  555.    
  556.   #--------------------------------------------------------------------------
  557.   # * Draw Page One
  558.   #--------------------------------------------------------------------------
  559.   def draw_page_one(x, y)
  560.         contents.font.size = DPB::PSPDS::FONTSIZE          
  561.       if DPB::PSPDS::DRAW_PARAM_GAUGES
  562.         draw_parameter_graph
  563.       if DPB::PSPDS::DRAW_ALL_COLUMNS
  564.         draw_actor_hp(@actor, 5, y+106 + line_height * 1,(window_width - 24) / 4 - 12)
  565.         draw_actor_mp(@actor, 5, y+106 + line_height * 2,(window_width - 24) / 4 - 12)
  566.         else  
  567.         draw_actor_hp(@actor, 5, y+106 + line_height * 1,(window_width - 24) / 3 - 24)
  568.         draw_actor_mp(@actor, 5, y+106 + line_height * 2,(window_width - 24) / 3 - 24)
  569.         end
  570.       else
  571.         draw_properties_paramcolumn
  572.       end
  573.         contents.font.size = DPB::PSPDS::PROPFONTSIZE
  574.         draw_horz_line(line_height * 4)
  575.         draw_horz_line(Graphics.height - line_height * 4)
  576.         draw_properties_column1
  577.         draw_properties_column2
  578.         if DPB::PSPDS::DRAW_ALL_COLUMNS
  579.         draw_properties_column3
  580.       else
  581.       end
  582.         reset_font_settings        
  583.     end
  584.   #--------------------------------------------------------------------------
  585.   # * Draw Page two
  586.   #--------------------------------------------------------------------------
  587.   def draw_page_two(x, y)
  588.         contents.font.size = DPB::PSPDS::PROPFONTSIZE
  589.         draw_horz_line(line_height * 4)
  590.         draw_elements
  591.       if DPB::PSS::SHOW_ELE_ROW_2
  592.         draw_elements_row2
  593.       else
  594.         end
  595.       draw_states
  596.       draw_states_row_2
  597.       draw_horz_line(Graphics.height - line_height * 4)
  598.       reset_font_settings        
  599.     end
  600.   #--------------------------------------------------------------------------
  601.   # * Draw Page three
  602.   #--------------------------------------------------------------------------
  603.   def draw_page_three(x, y)
  604.         contents.font.size = DPB::PSPDS::PROPFONTSIZE
  605.         draw_horz_line(line_height * 4)
  606.         draw_atk_elements
  607.       if DPB::PSS::SHOW_ELE_ROW_2
  608.         draw_atk_elements_row2
  609.       else
  610.         end
  611.       draw_atk_states
  612.       draw_atk_states_row_2
  613.         draw_horz_line(Graphics.height - line_height * 4)
  614.         reset_font_settings        
  615.     end
  616.   #--------------------------------------------------------------------------
  617.   # * Draw Parameters
  618.   #--------------------------------------------------------------------------
  619.   def draw_parameters(x, y)
  620.     6.times {|i| draw_actor_param(@actor, x, y + line_height * i, i + 2) }
  621.   end
  622.   #--------------------------------------------------------------------------
  623.   # * Draw Experience Information
  624.   #--------------------------------------------------------------------------
  625.   def draw_exp_info(x, y)
  626.         contents.font.size = DPB::PSPDS::FONTSIZE
  627.         s1 = @actor.max_level? ? "----" : @actor.exp
  628.         s2 = @actor.max_level? ? "----" : @actor.next_level_exp - @actor.exp
  629.         s_next = sprintf(Vocab::ExpNext, Vocab::level)
  630.         change_color(system_color)
  631.         draw_text((window_width - 24) / 4 * 3, y-140, 180, line_height, "Next Level")
  632.         draw_text((window_width - 24) / 4 * 3, y-170, 180, line_height, "TOTAL Exp")
  633.         change_color(normal_color)
  634.         draw_text((window_width - 24) / 1.7, y-155, 180, line_height, s1, 2)
  635.         draw_text((window_width - 24) / 1.7, y-120, 180, line_height, s2, 2)
  636.       end
  637.   #--------------------------------------------------------------------------
  638.   # * Draw Equipment
  639.   #--------------------------------------------------------------------------
  640.   def draw_equipments(x, y)
  641.     @actor.equips.each_with_index do |item, i|
  642.       draw_item_name(item, x, y + line_height * i)
  643.     end
  644.   end
  645.   #--------------------------------------------------------------------------
  646.   # * Draw Description
  647.   #--------------------------------------------------------------------------
  648.   def draw_description(x, y)
  649.     draw_text_ex(x, y, @actor.description)
  650.   end
  651.  
  652.   if DPB::PSS::SHOW_ELE_ROW_2
  653.   #--------------------------------------------------------------------------
  654.   # draw_elements
  655.   #--------------------------------------------------------------------------
  656.   def draw_elements
  657.     dx = 0; dy = 130
  658.     contents.font.size = DPB::PSPDS::FONTSIZE
  659.     for ele_id in DPB::PSS::ELEMENTS_ROW1
  660.       draw_element_info(ele_id, 12, dy)
  661.       dx = dx == 1 ? contents.width / 4 : 0
  662.       dy += dx == 0 ? line_height : 0
  663.     end
  664.   end
  665.   #--------------------------------------------------------------------------
  666.   # draw_elements_row2
  667.   #--------------------------------------------------------------------------
  668.   def draw_elements_row2
  669.     dx = 0; dy = 130
  670.     contents.font.size = DPB::PSPDS::FONTSIZE
  671.     for ele_id in DPB::PSS::ELEMENTS_ROW2
  672.       draw_element_info(ele_id, (window_width - 0) / 4 * 1, dy)
  673.       dx = dx == 1 ? contents.width / 4 : 0
  674.       dy += dx == 0 ? line_height : 0
  675.     end
  676.   end
  677.   #--------------------------------------------------------------------------
  678.   # draw_atk_elements
  679.   #--------------------------------------------------------------------------
  680.   def draw_atk_elements
  681.     dx = 0; dy = 130
  682.     contents.font.size = DPB::PSPDS::FONTSIZE
  683.     for ele_id in DPB::PSS::ELEMENTS_ROW1
  684.       draw_atk_element_info(ele_id, 12, dy)
  685.       dx = dx == 1 ? contents.width / 4 : 0
  686.       dy += dx == 0 ? line_height : 0
  687.     end
  688.   end
  689.   #--------------------------------------------------------------------------
  690.   # draw_atk_elements_row2
  691.   #--------------------------------------------------------------------------
  692.   def draw_atk_elements_row2
  693.     dx = 0; dy = 130
  694.     contents.font.size = DPB::PSPDS::FONTSIZE
  695.     for ele_id in DPB::PSS::ELEMENTS_ROW2
  696.       draw_atk_element_info(ele_id, (window_width - 0) / 4 * 1, dy)
  697.       dx = dx == 1 ? contents.width / 4 : 0
  698.       dy += dx == 0 ? line_height : 0
  699.     end
  700.   end
  701.   #--------------------------------------------------------------------------
  702.   # draw_states
  703.   #--------------------------------------------------------------------------
  704.   def draw_states
  705.     dx = 0; dy = 130
  706.     contents.font.size = DPB::PSPDS::FONTSIZE
  707.     draw_text((window_width - 24) / 3 * 0 + 12, line_height * 4.6, contents.width, line_height, DPB::PSS::ELEMENT_VOCAB)
  708.     draw_text((window_width - 24) / 4 * 2 + 12, line_height * 4.6, contents.width, line_height, DPB::PSS::STATUS_VOCAB)
  709.     for state_id in DPB::PSS::STATES_ROW_1
  710.       draw_state_info(state_id, (window_width - 0) / 4 * 2, dy)
  711.       dx = dx == 1 ? contents.width / 4 : 0
  712.       dy += dx == 0 ? line_height : 0
  713.     end
  714.   end
  715.   #--------------------------------------------------------------------------
  716.   # draw_states_row_2
  717.   #--------------------------------------------------------------------------
  718.   def draw_states_row_2
  719.     dx = 0; dy = 130
  720.     contents.font.size = DPB::PSPDS::FONTSIZE
  721.     for state_id in DPB::PSS::STATES_ROW_2
  722.       draw_state_info(state_id, (window_width - 12) / 4 * 3, dy)
  723.       dx = dx == 1 ? contents.width / 4 : 0
  724.       dy += dx == 0 ? line_height : 0
  725.     end
  726.   end
  727.   #--------------------------------------------------------------------------
  728.   # draw_atk_states
  729.   #--------------------------------------------------------------------------
  730.   def draw_atk_states
  731.     dx = 0; dy = 130
  732.     contents.font.size = DPB::PSPDS::FONTSIZE
  733.     draw_text((window_width - 24) / 3 * 0 + 12, line_height * 4.6, contents.width, line_height, DPB::PSS::ATK_ELE_VOCAB)
  734.     draw_text((window_width - 24) / 4 * 2 + 12, line_height * 4.6, contents.width, line_height, DPB::PSS::ATK_STATUS_VOCAB)
  735.     for state_id in DPB::PSS::STATES_ROW_1
  736.       draw_atk_state_info(state_id, (window_width - 0) / 4 * 2, dy)
  737.       dx = dx == 1 ? contents.width / 4 : 0
  738.       dy += dx == 0 ? line_height : 0
  739.     end
  740.   end
  741.   #--------------------------------------------------------------------------
  742.   # draw_atk_states_row_2
  743.   #--------------------------------------------------------------------------
  744.   def draw_atk_states_row_2
  745.     dx = 0; dy = 130
  746.     contents.font.size = DPB::PSPDS::FONTSIZE
  747.     for state_id in DPB::PSS::STATES_ROW_2
  748.       draw_atk_state_info(state_id, (window_width - 12) / 4 * 3, dy)
  749.       dx = dx == 1 ? contents.width / 4 : 0
  750.       dy += dx == 0 ? line_height : 0
  751.     end
  752.   end
  753.   #--------------------------------------------------------------------------
  754.   # draw_element_info
  755.   #--------------------------------------------------------------------------
  756.   def draw_element_info(ele_id, dx, dy)
  757.     dw = (contents.width - 24) / 4.2
  758.     colour = Color.new(0, 0, 0, translucent_alpha/2)
  759.     rect = Rect.new(dx+1, dy+1, dw - 2, line_height - 2)
  760.     contents.fill_rect(rect, colour)
  761.     draw_icon(Icon.element(ele_id), dx, dy)
  762.     change_color(system_color)
  763.     draw_text(dx+24, dy, dw-24, line_height, $data_system.elements[ele_id] + "")
  764.     change_color(normal_color)
  765.     text = sprintf("%d%%", (@actor.element_rate(ele_id) * 100).to_i)
  766.     draw_text(dx+4, dy, dw-8, line_height, text, 2)
  767.   end
  768.   #--------------------------------------------------------------------------
  769.   # draw_atk_element_info
  770.   #--------------------------------------------------------------------------
  771.   def draw_atk_element_info(ele_id, dx, dy)
  772.     dw = (contents.width - 24) / 4.2
  773.     colour = Color.new(0, 0, 0, translucent_alpha/2)
  774.     rect = Rect.new(dx+1, dy+1, dw - 2, line_height - 2)
  775.     contents.fill_rect(rect, colour)
  776.     draw_icon(Icon.element(ele_id), dx, dy)
  777.     change_color(system_color)
  778.     draw_text(dx+24, dy, dw-24, line_height, $data_system.elements[ele_id] + "")
  779.     change_color(normal_color)
  780.     text = sprintf("%d%%", (@actor.atk_element_rate(ele_id) * 100).to_i)
  781.     draw_text(dx+4, dy, dw-8, line_height, text, 2)
  782.   end
  783.   #--------------------------------------------------------------------------
  784.   # draw_state_info
  785.   #--------------------------------------------------------------------------
  786.   def draw_state_info(state_id, dx, dy)
  787.     dw = (contents.width - 24) / 4.2
  788.     colour = Color.new(0, 0, 0, translucent_alpha/2)
  789.     rect = Rect.new(dx+1, dy+1, dw - 2, line_height - 2)
  790.     contents.fill_rect(rect, colour)
  791.     draw_icon($data_states[state_id].icon_index, dx, dy)
  792.     change_color(system_color)
  793.     draw_text(dx+24, dy, dw-24, line_height, $data_states[state_id].name + "")
  794.     change_color(normal_color)
  795.     text = sprintf("%d%%", (@actor.state_rate(state_id) * 100).to_i)
  796.     draw_text(dx+4, dy, dw-8, line_height, text, 2)
  797.   end
  798.   #--------------------------------------------------------------------------
  799.   # draw_atk_state_info
  800.   #--------------------------------------------------------------------------
  801.   def draw_atk_state_info(state_id, dx, dy)
  802.     dw = (contents.width - 24) / 4.2
  803.     colour = Color.new(0, 0, 0, translucent_alpha/2)
  804.     rect = Rect.new(dx+1, dy+1, dw - 2, line_height - 2)
  805.     contents.fill_rect(rect, colour)
  806.     draw_icon($data_states[state_id].icon_index, dx, dy)
  807.     change_color(system_color)
  808.     draw_text(dx+24, dy, dw-24, line_height, $data_states[state_id].name + "")
  809.     change_color(normal_color)
  810.     text = sprintf("%d%%", (@actor.atk_states_rate(state_id) * 100).to_i)
  811.     draw_text(dx+4, dy, dw-8, line_height, text, 2)
  812.   end
  813.  
  814. else
  815.   #--------------------------------------------------------------------------
  816.   # draw_elements
  817.   #--------------------------------------------------------------------------
  818.   def draw_elements
  819.     dx = 0; dy = 130
  820.     contents.font.size = DPB::PSPDS::FONTSIZE
  821.     for ele_id in DPB::PSS::ELEMENTS_ROW1
  822.       draw_element_info(ele_id, 12, dy)
  823.       dx = dx == 1 ? contents.width / 3 : 0
  824.       dy += dx == 0 ? line_height : 0
  825.     end
  826.   end
  827.   #--------------------------------------------------------------------------
  828.   # draw_atk_elements
  829.   #--------------------------------------------------------------------------
  830.   def draw_atk_elements
  831.     dx = 0; dy = 130
  832.     contents.font.size = DPB::PSPDS::FONTSIZE
  833.     for ele_id in DPB::PSS::ELEMENTS_ROW1
  834.       draw_atk_element_info(ele_id, 12, dy)
  835.       dx = dx == 1 ? contents.width / 3 : 0
  836.       dy += dx == 0 ? line_height : 0
  837.     end
  838.   end
  839.   #--------------------------------------------------------------------------
  840.   # draw_states
  841.   #--------------------------------------------------------------------------
  842.   def draw_states
  843.     dx = 0; dy = 130
  844.     contents.font.size = DPB::PSPDS::FONTSIZE
  845.     draw_text((window_width - 24) / 3 * 0 + 12, line_height * 4.6, contents.width, line_height, DPB::PSS::ELEMENT_VOCAB)
  846.     draw_text((window_width - 24) / 3 * 1 + 8, line_height * 4.6, contents.width, line_height, DPB::PSS::STATUS_VOCAB)
  847.     contents.font.size = 16
  848.     for state_id in DPB::PSS::STATES_ROW_1
  849.       draw_state_info(state_id, (window_width - 0) / 3 * 1, dy)
  850.       dx = dx == 1 ? contents.width / 3 : 0
  851.       dy += dx == 0 ? line_height : 0
  852.     end
  853.   end
  854.   #--------------------------------------------------------------------------
  855.   # draw_states_row_2
  856.   #--------------------------------------------------------------------------
  857.   def draw_states_row_2
  858.     dx = 0; dy = 130
  859.     contents.font.size = DPB::PSPDS::FONTSIZE
  860.     for state_id in DPB::PSS::STATES_ROW_2
  861.       draw_state_info(state_id, (window_width - 12) / 3 * 2, dy)
  862.       dx = dx == 1 ? contents.width / 3 : 0
  863.       dy += dx == 0 ? line_height : 0
  864.     end
  865.   end
  866.   #--------------------------------------------------------------------------
  867.   # draw_atk_states
  868.   #--------------------------------------------------------------------------
  869.   def draw_atk_states
  870.     dx = 0; dy = 130
  871.     contents.font.size = DPB::PSPDS::FONTSIZE
  872.     draw_text((window_width - 24) / 3 * 0 + 12, line_height * 4.6, contents.width, line_height, DPB::PSS::ATK_ELE_VOCAB)
  873.     draw_text((window_width - 24) / 3 * 1 + 8, line_height * 4.6, contents.width, line_height, DPB::PSS::ATK_STATUS_VOCAB)
  874.     contents.font.size = 16
  875.     for state_id in DPB::PSS::STATES_ROW_1
  876.       draw_atk_state_info(state_id, (window_width - 0) / 3 * 1, dy)
  877.       dx = dx == 1 ? contents.width / 3 : 0
  878.       dy += dx == 0 ? line_height : 0
  879.     end
  880.   end
  881.   #--------------------------------------------------------------------------
  882.   # draw_atk_states_row_2
  883.   #--------------------------------------------------------------------------
  884.   def draw_atk_states_row_2
  885.     dx = 0; dy = 130
  886.     contents.font.size = DPB::PSPDS::FONTSIZE
  887.     for state_id in DPB::PSS::STATES_ROW_2
  888.       draw_atk_state_info(state_id, (window_width - 12) / 3 * 2, dy)
  889.       dx = dx == 1 ? contents.width / 3 : 0
  890.       dy += dx == 0 ? line_height : 0
  891.     end
  892.   end
  893.   #--------------------------------------------------------------------------
  894.   # draw_element_info
  895.   #--------------------------------------------------------------------------
  896.   def draw_element_info(ele_id, dx, dy)
  897.     dw = (contents.width - 24) / 3.2
  898.     colour = Color.new(0, 0, 0, translucent_alpha/2)
  899.     rect = Rect.new(dx+1, dy+1, dw - 2, line_height - 2)
  900.     contents.fill_rect(rect, colour)
  901.     draw_icon(Icon.element(ele_id), dx, dy)
  902.     change_color(system_color)
  903.     draw_text(dx+24, dy, dw-24, line_height, $data_system.elements[ele_id] + "")
  904.     change_color(normal_color)
  905.     text = sprintf("%d%%", (@actor.element_rate(ele_id) * 100).to_i)
  906.     draw_text(dx+4, dy, dw-8, line_height, text, 2)
  907.   end
  908.   #--------------------------------------------------------------------------
  909.   # draw_atk_element_info
  910.   #--------------------------------------------------------------------------
  911.   def draw_atk_element_info(ele_id, dx, dy)
  912.     dw = (contents.width - 24) / 3.2
  913.     colour = Color.new(0, 0, 0, translucent_alpha/2)
  914.     rect = Rect.new(dx+1, dy+1, dw - 2, line_height - 2)
  915.     contents.fill_rect(rect, colour)
  916.     draw_icon(Icon.element(ele_id), dx, dy)
  917.     change_color(system_color)
  918.     draw_text(dx+24, dy, dw-24, line_height, $data_system.elements[ele_id] + "")
  919.     change_color(normal_color)
  920.     text = sprintf("%d%%", (@actor.atk_element_rate(ele_id) * 100).to_i)
  921.     draw_text(dx+4, dy, dw-8, line_height, text, 2)
  922.   end
  923.   #--------------------------------------------------------------------------
  924.   # draw_state_info
  925.   #--------------------------------------------------------------------------
  926.   def draw_state_info(state_id, dx, dy)
  927.     dw = (contents.width - 24) / 3.2
  928.     colour = Color.new(0, 0, 0, translucent_alpha/2)
  929.     rect = Rect.new(dx+1, dy+1, dw - 2, line_height - 2)
  930.     contents.fill_rect(rect, colour)
  931.     draw_icon($data_states[state_id].icon_index, dx, dy)
  932.     change_color(system_color)
  933.     draw_text(dx+24, dy, dw-24, line_height, $data_states[state_id].name + "")
  934.     change_color(normal_color)
  935.     text = sprintf("%d%%", (@actor.state_rate(state_id) * 100).to_i)
  936.     draw_text(dx+4, dy, dw-8, line_height, text, 2)
  937.   end
  938.   #--------------------------------------------------------------------------
  939.   # draw_atk_state_info
  940.   #--------------------------------------------------------------------------
  941.   def draw_atk_state_info(state_id, dx, dy)
  942.     dw = (contents.width - 24) / 3.2
  943.     colour = Color.new(0, 0, 0, translucent_alpha/2)
  944.     rect = Rect.new(dx+1, dy+1, dw - 2, line_height - 2)
  945.     contents.fill_rect(rect, colour)
  946.     draw_icon($data_states[state_id].icon_index, dx, dy)
  947.     change_color(system_color)
  948.     draw_text(dx+24, dy, dw-24, line_height, $data_states[state_id].name + "")
  949.     change_color(normal_color)
  950.     text = sprintf("%d%%", (@actor.atk_states_rate(state_id) * 100).to_i)
  951.     draw_text(dx+4, dy, dw-8, line_height, text, 2)
  952.   end
  953. end
  954.   #--------------------------------------------------------------------------
  955.   # window width
  956.   #--------------------------------------------------------------------------
  957. def window_width
  958.   Graphics.width - 0
  959.  end
  960.   #--------------------------------------------------------------------------
  961.   # window height
  962.   #--------------------------------------------------------------------------
  963. def window_height
  964.   Graphics.height - 0
  965.  end
  966. end #WindowStatusItem
  967.  
  968. #==============================================================================
  969. # ** Scene_Status
  970. #------------------------------------------------------------------------------
  971. #  This class performs the status screen processing.
  972. #==============================================================================
  973. class Scene_Status < Scene_MenuBase
  974.   #--------------------------------------------------------------------------
  975.   # start
  976.   #--------------------------------------------------------------------------
  977.   def start
  978.     super
  979.     create_status_window
  980.     create_command_window
  981.     create_item_window
  982.   end
  983.   #--------------------------------------------------------------------------
  984.   # create_command_window
  985.   #--------------------------------------------------------------------------
  986.   def create_command_window
  987.     wy = 0
  988.     @command_window = Window_StatusCommand.new(0, wy)
  989.     @command_window.viewport = @viewport
  990.     @command_window.actor = @actor
  991.     @command_window.help_window = @help_window
  992.     @command_window.set_handler(:cancel,   method(:return_scene))
  993.     @command_window.set_handler(:pagedown, method(:next_actor))
  994.     @command_window.set_handler(:pageup,   method(:prev_actor))
  995.     @command_window.set_handler(:pspds, method(:command_pspds))
  996.    
  997.   end
  998.   #--------------------------------------------------------------------------
  999.   # create_status_window
  1000.   #--------------------------------------------------------------------------
  1001.   def create_status_window
  1002.     wy = 0
  1003.   end
  1004.   #--------------------------------------------------------------------------
  1005.   # create_item_window
  1006.   #--------------------------------------------------------------------------
  1007.   def create_item_window
  1008.     dy = 0
  1009.     @item_window = Window_StatusItem.new(0, dy, @command_window)
  1010.     @item_window.viewport = @viewport
  1011.     @item_window.actor = @actor
  1012.     @command_window.item_window = @item_window
  1013.   end
  1014.   #--------------------------------------------------------------------------
  1015.   # on_actor_change
  1016.   #--------------------------------------------------------------------------
  1017.   def on_actor_change
  1018.     @command_window.actor = @actor
  1019.     @item_window.actor = @actor
  1020.     @command_window.activate
  1021.   end  
  1022.   #--------------------------------------------------------------------------
  1023.   # new method: command_pspds
  1024.   #--------------------------------------------------------------------------
  1025.   def command_pspds
  1026.     SceneManager.call(Scene_Level_Up)
  1027.   end
  1028. end # Scene_Status
  1029. #===============================================================================#
  1030. #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
  1031. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
  1032. #                                                                               #
  1033. #                                     PSS                                       #
  1034. #                           (Perfect Status Screen)                             #
  1035. #                                - SCRIPT END -                                 #
  1036. #                                                                               #
  1037. #                                                                               #
  1038. #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆#
  1039. #☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★#
  1040. #===============================================================================#
  1041. #                           - DekitaRPG@gmail.com -                             #
  1042. #===============================================================================#
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement