Advertisement
Kakakadafi

[Overwrite] XAS - Tool HUD

Oct 20th, 2017
620
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 27.94 KB | None | 0 0
  1. #==============================================================================
  2. # ■ +++ MOG - XAS TOOL HUD (v1.0) +++
  3. #==============================================================================
  4. # By Moghunter
  5. # http://www.atelier-rgss.com
  6. #==============================================================================
  7. # Displays huds used by the tools used in XAS, most of the hud
  8. # amount of gold.
  9. #===============================================================================
  10. module XAS_TOOL_HUD
  11.    #Enable HUD skills.
  12.    ENABLE_SKILL_HUD = true
  13.    #Enable item skin.
  14.    ENABLE_ITEM_HUD = false
  15.    #Enable Hud Weapon.
  16.    ENABLE_WEAPON_HUD = true
  17.    #Enable HUD shield.
  18.    ENABLE_SHIELD_HUD = true
  19.    #Enable Hud Money (Gold).
  20.    ENABLE_GOLD_HUD = true
  21.    #General position of HUD item.
  22.    ITEM_HUD = [352,365]
  23.    #General position of HUD skills
  24.    SKILL_HUD = [4,142]
  25.    #General position of weapon HUD.
  26.    WEAPON_HUD = [999,999]
  27.    #General position of shield HUD.
  28.    SHIELD_HUD = [777,365]
  29.    #General position of HUD money (Gold).
  30.    GOLD_HUD = [999,999]
  31.    #Posição do numero de dinheiro(Gold).
  32.    GOLD_NUMBER = [43,1]
  33.    #Posição do Layout.
  34.    LAYOUT = [0,0]
  35.    #Icon Position.
  36.    ICON = [10, 10]
  37.    #Posição do numero.
  38.    NUMBER = [999, 935]
  39.    #Adjustment of the spacing between the numbers.
  40.    NUMBER_SPACE = 0
  41. end
  42. #==============================================================================
  43. # ■ Tool Hud
  44. #==============================================================================
  45. class Tool_Hud
  46.   include XAS_TOOL_HUD
  47.      
  48.  #--------------------------------------------------------------------------
  49.  # ● Initialize
  50.  #--------------------------------------------------------------------------  
  51.   def initialize
  52.       @actor = $game_party.members[0]
  53.       return if @actor == nil
  54.       @icon_image = Cache.system("Iconset")
  55.       @number_image = Cache.system("XAS_Tool_Number")
  56.       @number_cw = @number_image.width / 10
  57.       @number_ch = @number_image.height / 3      
  58.       @number_sc = @number_cw + NUMBER_SPACE
  59.       create_skill if ENABLE_SKILL_HUD
  60.       create_skill_2 if ENABLE_SKILL_HUD
  61.       create_item if ENABLE_ITEM_HUD
  62.       create_weapon if ENABLE_WEAPON_HUD
  63.       create_shield if ENABLE_SHIELD_HUD
  64.       create_gold if ENABLE_GOLD_HUD
  65.   end  
  66.  #--------------------------------------------------------------------------
  67.  # ● Refresh
  68.  #--------------------------------------------------------------------------    
  69.  def refresh
  70.      dispose  
  71.      initialize
  72.  end  
  73.  
  74.  #--------------------------------------------------------------------------
  75.  # ● Create Gold
  76.  #--------------------------------------------------------------------------    
  77.  def create_gold
  78.      @gold = $game_party.gold
  79.      @gold_old = @gold
  80.      @gold_ref = @gold_old
  81.      @gold_refresh = false        
  82.      # Layout -------------------------------------------------------------------
  83.      @gold_layout_sprite = Sprite.new
  84.      @gold_layout_sprite.bitmap = Cache.system("XAS_Tool_Gold")
  85.      @gold_layout_sprite.z = 151
  86.      @gold_layout_sprite.x = GOLD_HUD[0]
  87.      @gold_layout_sprite.y = GOLD_HUD[1]
  88.      # Gold ---------------------------------------------------------------------
  89.      @gold_number_sprite = Sprite.new
  90.      @gold_number_sprite.bitmap = Bitmap.new(@number_image.width, @number_image.height / 3)
  91.      @gold_number_sprite.z = 152
  92.      @gold_number_sprite.x = GOLD_HUD[0] + GOLD_NUMBER[0]
  93.      @gold_number_sprite.y = GOLD_HUD[1] + GOLD_NUMBER[1]
  94.      gold_number_update    
  95.  end
  96.  
  97.  #--------------------------------------------------------------------------
  98.  # ● Create Shield
  99.  #--------------------------------------------------------------------------    
  100.  def create_shield
  101.       #LAYOUT ------------------------------------------------------------
  102.       @shield_layout_sprite = Sprite.new
  103.       @shield_layout_sprite.bitmap = Cache.system("XAS_Tool_Shield")
  104.       @shield_layout_sprite.z = 150
  105.       @shield_layout_sprite.x = SHIELD_HUD[0] + LAYOUT[0]
  106.       @shield_layout_sprite.y = SHIELD_HUD[1] + LAYOUT[1]
  107.       @shield = @actor.equips[1]
  108.       @old_shield = @shield
  109.       if @shield != nil
  110.          icon_index = @shield.icon_index
  111.       else
  112.          icon_index = 0
  113.       end  
  114.       @shield_icon_sprite = Sprite.new
  115.       @shield_icon_sprite.bitmap = Bitmap.new(24,24)
  116.       bitmap_shield_rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
  117.       @shield_icon_sprite.bitmap.blt(0, 0, @icon_image, bitmap_shield_rect)
  118.       @shield_icon_sprite.z = 151
  119.       @shield_icon_sprite.x = SHIELD_HUD[0] + ICON[0]
  120.       @shield_icon_sprite.y = SHIELD_HUD[1] + ICON[1]          
  121.       #NUMBER ------------------------------------------------------------
  122.       @shield_number_sprite = Sprite.new
  123.       @shield_number_sprite.bitmap = Bitmap.new(@number_image.width, @number_image.height / 3)
  124.       @shield_number_sprite.z = 152
  125.       refresh_shield_number
  126.  end
  127.  
  128.  #--------------------------------------------------------------------------
  129.  # ● Refresh Shield Number
  130.  #--------------------------------------------------------------------------    
  131.  def refresh_shield_number
  132.      @shield_number = 0
  133.      @s_item = 0
  134.      @shield_number_sprite.bitmap.clear
  135.      return if @shield == nil
  136.      if @shield.note =~ /<Action ID = (\d+)>/
  137.          action_id =  $1.to_i    
  138.          skill = $data_skills[action_id]
  139.          if skill != nil
  140.             if skill.note =~ /<Item Cost = (\d+)>/
  141.                item_id = $1.to_i
  142.                if item_id != nil
  143.                   @s_item = $data_items[item_id]
  144.                   @shield_number = $game_party.item_number(@s_item)              
  145.                end
  146.              end
  147.          end    
  148.      end  
  149.      return if @s_item == 0
  150.      cost_split = @shield_number.to_s.split(//)
  151.      for r in 0..cost_split.size - 1
  152.          number_abs = cost_split[r].to_i
  153.          src_rect = Rect.new(@number_cw * number_abs, 0, @number_cw, @number_ch)
  154.          @shield_number_sprite.bitmap.blt(@number_sc  *  r, 0, @number_image, src_rect)        
  155.      end        
  156.      xf = ((cost_split.size * @number_sc) / 2)
  157.      @shield_number_sprite.x = SHIELD_HUD[0] + NUMBER[0] - xf
  158.      @shield_number_sprite.y = SHIELD_HUD[1] + NUMBER[1]  
  159.  end  
  160.  
  161.  #--------------------------------------------------------------------------
  162.  # ● Create Weapon
  163.  #--------------------------------------------------------------------------    
  164.  def create_weapon
  165.       #LAYOUT ------------------------------------------------------------
  166.       @weapon_layout_sprite = Sprite.new
  167.       @weapon_layout_sprite.bitmap = Cache.system("XAS_Tool_Weapon")
  168.       @weapon_layout_sprite.z = 150
  169.       @weapon_layout_sprite.x = WEAPON_HUD[0] + LAYOUT[0]
  170.       @weapon_layout_sprite.y = WEAPON_HUD[1] + LAYOUT[1]
  171.       #ICON
  172.       @weapon = @actor.equips[0]
  173.       @old_weapon = @weapon
  174.       if @weapon != nil
  175.          icon_index = @weapon.icon_index
  176.       else
  177.          icon_index = 0
  178.       end  
  179.       @weapon_icon_sprite = Sprite.new
  180.       @weapon_icon_sprite.bitmap = Bitmap.new(24,24)
  181.       bitmap_weapon_rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
  182.       @weapon_icon_sprite.bitmap.blt(0, 0, @icon_image, bitmap_weapon_rect)
  183.       @weapon_icon_sprite.z = 151
  184.       @weapon_icon_sprite.x = WEAPON_HUD[0] + ICON[0]
  185.       @weapon_icon_sprite.y = WEAPON_HUD[1] + ICON[1]          
  186.       #NUMBER ------------------------------------------------------------
  187.       @weapon_number_sprite = Sprite.new
  188.       @weapon_number_sprite.bitmap = Bitmap.new(@number_image.width, @number_image.height / 3)
  189.       @weapon_number_sprite.z = 152
  190.       refresh_weapon_number
  191.  end
  192.  #--------------------------------------------------------------------------
  193.  # ● Refresh Weapon Number
  194.  #--------------------------------------------------------------------------    
  195.  def refresh_weapon_number
  196.      @weapon_number = 0
  197.      @w_item = 0
  198.      @weapon_number_sprite.bitmap.clear
  199.      return if @weapon == nil
  200.      if @weapon.note =~ /<Action ID = (\d+)>/
  201.          action_id =  $1.to_i    
  202.          skill = $data_skills[action_id]
  203.          if skill != nil
  204.             if skill.note =~ /<Item Cost = (\d+)>/
  205.                item_id = $1.to_i
  206.                if item_id != nil
  207.                   @w_item = $data_items[item_id]
  208.                   @weapon_number = $game_party.item_number(@w_item)              
  209.                end
  210.              end
  211.          end    
  212.      end  
  213.      return if @w_item == 0
  214.      cost_split = @weapon_number.to_s.split(//)
  215.      for r in 0..cost_split.size - 1
  216.          number_abs = cost_split[r].to_i
  217.          src_rect = Rect.new(@number_cw * number_abs, 0, @number_cw, @number_ch)
  218.          @weapon_number_sprite.bitmap.blt(@number_sc  *  r, 0, @number_image, src_rect)        
  219.      end        
  220.      xf = ((cost_split.size * @number_sc) / 2)
  221.      @weapon_number_sprite.x = WEAPON_HUD[0] + NUMBER[0] - xf
  222.      @weapon_number_sprite.y = WEAPON_HUD[1] + NUMBER[1]  
  223.  end  
  224.  
  225.  #--------------------------------------------------------------------------
  226.  # ● Create Skill
  227.  #--------------------------------------------------------------------------  
  228.   def create_skill
  229.       #LAYOUT ------------------------------------------------------------
  230.       @skill_layout_sprite = Sprite.new
  231.       @skill_layout_sprite.bitmap = Cache.system("XAS_Tool_Skill")
  232.       @skill_layout_sprite.z = 150
  233.       @skill_layout_sprite.x = SKILL_HUD[0] + LAYOUT[0]
  234.       @skill_layout_sprite.y = SKILL_HUD[1] + LAYOUT[1]
  235.       @skill_layout_sprite.x += @skill_layout_sprite.width / 2 + 6
  236.       @skill_layout_sprite.y += @skill_layout_sprite.height / 2 + 6
  237.       #ICON ------------------------------------------------------------
  238.       @old_skill = @actor.skill_id
  239.       @skill = $data_skills[@actor.skill_id]
  240.       if @skill != nil
  241.          icon_index = @skill.icon_index
  242.          @skill_mp_cost = @skill.mp_cost
  243.       else  
  244.          icon_index = 0
  245.          @skill_mp_cost = 0
  246.       end  
  247.       @skill_icon_sprite = Sprite.new
  248.       @skill_icon_sprite.bitmap = Bitmap.new(24,24)
  249.       bitmap_skill_rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
  250.       @skill_icon_sprite.bitmap.blt(0, 0, @icon_image, bitmap_skill_rect)
  251.       @skill_icon_sprite.z = 151
  252. #~       @skill_icon_sprite.x = SKILL_HUD[0] + ICON[0]
  253. #~       @skill_icon_sprite.y = SKILL_HUD[1] + ICON[1]  
  254.       @skill_icon_sprite.x = @skill_layout_sprite.x + ICON[0] - LAYOUT[0]
  255.       @skill_icon_sprite.y = @skill_layout_sprite.y + ICON[1] - LAYOUT[1]
  256.       #NUMBER ------------------------------------------------------------
  257.       skill_number_bitmap = Bitmap.new(@number_image.width, @number_image.height / 3)
  258.       @skill_number_sprite = Sprite.new
  259.       @skill_number_sprite.bitmap = skill_number_bitmap
  260.       cost_split = @skill_mp_cost.to_s.split(//)
  261.       for r in 0..cost_split.size - 1
  262.           number_abs = cost_split[r].to_i
  263.           src_rect = Rect.new(@number_cw * number_abs, @number_ch, @number_cw, @number_ch)
  264.           skill_number_bitmap.blt(@number_sc  *  r, 0, @number_image, src_rect)        
  265.       end        
  266.       @skill_number_sprite.z = 152
  267.       xf = ((cost_split.size * @number_sc) / 2)
  268. #~       @skill_number_sprite.x = SKILL_HUD[0] + NUMBER[0] - xf
  269. #~       @skill_number_sprite.y = SKILL_HUD[1] + NUMBER[1]      
  270.       @skill_number_sprite.x = @skill_layout_sprite.x + NUMBER[0] - xf - LAYOUT[0]
  271.       @skill_number_sprite.y = @skill_layout_sprite.y + NUMBER[1] - LAYOUT[1]  
  272.   end
  273.  
  274.  #--------------------------------------------------------------------------
  275.  # ● Create Skill 2
  276.  #--------------------------------------------------------------------------  
  277.   def create_skill_2
  278.       #LAYOUT ------------------------------------------------------------
  279.       @skill_layout_sprite_2 = Sprite.new
  280.       @skill_layout_sprite_2.bitmap = Cache.system("XAS_Tool_Skill")
  281.       @skill_layout_sprite_2.z = 150
  282.       @skill_layout_sprite_2.x = SKILL_HUD[0] + LAYOUT[0]
  283.       @skill_layout_sprite_2.y = SKILL_HUD[1] + LAYOUT[1]
  284.       #ICON ------------------------------------------------------------
  285.       @old_skill_2 = @actor.skill2_id
  286.       @skill_2 = $data_skills[@actor.skill2_id]
  287.       if @skill_2 != nil
  288.          icon_index = @skill_2.icon_index
  289.          @skill_mp_cost_2 = @skill_2.mp_cost
  290.       else  
  291.          icon_index = 0
  292.          @skill_mp_cost_2 = 0
  293.       end  
  294.       @skill_icon_sprite_2 = Sprite.new
  295.       @skill_icon_sprite_2.bitmap = Bitmap.new(24,24)
  296.       bitmap_skill_rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
  297.       @skill_icon_sprite_2.bitmap.blt(0, 0, @icon_image, bitmap_skill_rect)
  298.       @skill_icon_sprite_2.z = 151
  299.       @skill_icon_sprite_2.x = SKILL_HUD[0] + ICON[0]
  300.       @skill_icon_sprite_2.y = SKILL_HUD[1] + ICON[1]
  301.       #NUMBER ------------------------------------------------------------
  302.       skill_number_bitmap = Bitmap.new(@number_image.width, @number_image.height / 3)
  303.       @skill_number_sprite_2 = Sprite.new
  304.       @skill_number_sprite_2.bitmap = skill_number_bitmap
  305.       cost_split = @skill_mp_cost_2.to_s.split(//)
  306.       for r in 0..cost_split.size - 1
  307.           number_abs = cost_split[r].to_i
  308.           src_rect = Rect.new(@number_cw * number_abs, @number_ch, @number_cw, @number_ch)
  309.           skill_number_bitmap.blt(@number_sc  *  r, 0, @number_image, src_rect)        
  310.       end        
  311.       @skill_number_sprite_2.z = 152
  312.       xf = ((cost_split.size * @number_sc) / 2)
  313.       @skill_number_sprite_2.x = SKILL_HUD[0] + NUMBER[0] - xf
  314.       @skill_number_sprite_2.y = SKILL_HUD[1] + NUMBER[1]          
  315.     end
  316.    
  317.  #--------------------------------------------------------------------------
  318.  # ● Create Item
  319.  #--------------------------------------------------------------------------    
  320.   def create_item
  321.       #LAYOUT ------------------------------------------------------------
  322.       @item_layout_sprite = Sprite.new
  323.       @item_layout_sprite.bitmap = Cache.system("XAS_Tool_Item")
  324.       @item_layout_sprite.z = 150
  325.       @item_layout_sprite.x = ITEM_HUD[0] + LAYOUT[0]
  326.       @item_layout_sprite.y = ITEM_HUD[1] + LAYOUT[1]
  327.       #ICON ------------------------------------------------------------
  328.       @old_item = @actor.item_id
  329.       @item = $data_items[@actor.item_id]
  330.       if @item != nil
  331.          icon_index = @item.icon_index
  332.          @item_number = $game_party.item_number(@item)
  333.       else  
  334.          icon_index = 0
  335.          @item_number = 0
  336.       end  
  337.       @item_icon_sprite = Sprite.new
  338.       @item_icon_sprite.bitmap = Bitmap.new(24,24)
  339.       bitmap_item_rect = Rect.new(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
  340.       @item_icon_sprite.bitmap.blt(0, 0, @icon_image, bitmap_item_rect)
  341.       @item_icon_sprite.z = 160
  342.       @item_icon_sprite.x = ITEM_HUD[0] + ICON[0]
  343.       @item_icon_sprite.y = ITEM_HUD[1] + ICON[1]      
  344.       #NUMBER ------------------------------------------------------------
  345.       item_number_bitmap = Bitmap.new(@number_image.width, @number_image.height / 3)
  346.       @item_number_sprite = Sprite.new
  347.       @item_number_sprite.bitmap = item_number_bitmap
  348.       cost_split = @item_number.to_s.split(//)
  349.       for r in 0..cost_split.size - 1
  350.           number_abs = cost_split[r].to_i
  351.           src_rect = Rect.new(@number_cw * number_abs, 0, @number_cw, @number_ch)
  352.           @item_number_sprite.bitmap.blt(@number_sc  *  r, 0, @number_image, src_rect)        
  353.       end        
  354.       @item_number_sprite.z = 152
  355.       xf = ((cost_split.size * @number_sc) / 2)
  356.       @item_number_sprite.x = ITEM_HUD[0] + NUMBER[0] - xf
  357.       @item_number_sprite.y = ITEM_HUD[1] + NUMBER[1]    
  358.   end
  359.  
  360.  #--------------------------------------------------------------------------
  361.  # ● Dispose
  362.  #--------------------------------------------------------------------------    
  363.   def dispose
  364.       return if @actor == nil
  365.       dispose_skill if ENABLE_SKILL_HUD
  366.       dispose_item if ENABLE_ITEM_HUD
  367.       dispose_weapon if ENABLE_WEAPON_HUD
  368.       dispose_shield if ENABLE_SHIELD_HUD
  369.       dispose_gold if ENABLE_GOLD_HUD
  370.       @icon_image.dispose
  371.       @number_image.dispose      
  372.   end
  373.  
  374.  #--------------------------------------------------------------------------
  375.  # ● Dispose Skill
  376.  #--------------------------------------------------------------------------      
  377.   def dispose_skill
  378.       @skill_layout_sprite.bitmap.dispose
  379.       @skill_layout_sprite.dispose
  380.       @skill_layout_sprite_2.bitmap.dispose
  381.       @skill_layout_sprite_2.dispose
  382.       @skill_icon_sprite.bitmap.dispose
  383.       @skill_icon_sprite.dispose
  384.       @skill_icon_sprite_2.bitmap.dispose
  385.       @skill_icon_sprite_2.dispose
  386.       @skill_number_sprite.bitmap.dispose
  387.       @skill_number_sprite.dispose
  388.       @skill_number_sprite_2.bitmap.dispose
  389.       @skill_number_sprite_2.dispose
  390.   end
  391.    
  392.  #--------------------------------------------------------------------------
  393.  # ● Dispose Gold
  394.  #--------------------------------------------------------------------------        
  395.   def dispose_gold
  396.       @gold_layout_sprite.bitmap.dispose
  397.       @gold_layout_sprite.dispose
  398.       @gold_number_sprite.bitmap.dispose
  399.       @gold_number_sprite.dispose
  400.   end
  401.  
  402.  #--------------------------------------------------------------------------
  403.  # ● Dispose Item
  404.  #--------------------------------------------------------------------------        
  405.   def dispose_item
  406.       @item_layout_sprite.bitmap.dispose
  407.       @item_layout_sprite.dispose      
  408.       @item_icon_sprite.bitmap.dispose
  409.       @item_icon_sprite.dispose      
  410.       @item_number_sprite.bitmap.dispose
  411.       @item_number_sprite.dispose  
  412.   end  
  413.  
  414.  #--------------------------------------------------------------------------
  415.  # ● Dispose Weapon
  416.  #--------------------------------------------------------------------------          
  417.   def dispose_weapon
  418.       @weapon_layout_sprite.bitmap.dispose
  419.       @weapon_layout_sprite.dispose
  420.       @weapon_icon_sprite.bitmap.dispose
  421.       @weapon_icon_sprite.dispose
  422.       @weapon_number_sprite.bitmap.dispose
  423.       @weapon_number_sprite.dispose    
  424.   end  
  425.  
  426.  #--------------------------------------------------------------------------
  427.  # ● Dispose shield
  428.  #--------------------------------------------------------------------------            
  429.   def dispose_shield
  430.       @shield_layout_sprite.bitmap.dispose
  431.       @shield_layout_sprite.dispose
  432.       @shield_icon_sprite.bitmap.dispose
  433.       @shield_icon_sprite.dispose
  434.       @shield_number_sprite.bitmap.dispose
  435.       @shield_number_sprite.dispose    
  436.   end  
  437.  
  438.  #--------------------------------------------------------------------------
  439.  # ● Update
  440.  #--------------------------------------------------------------------------    
  441.   def update
  442.       return if @actor == nil
  443.       update_visible
  444.       refresh if can_refresh_hud?
  445.       refresh_item if ENABLE_ITEM_HUD and can_refresh_item_number?
  446.       refresh_weapon_number if ENABLE_WEAPON_HUD and can_refreh_weapon_number?
  447.       refresh_shield_number if ENABLE_SHIELD_HUD and can_refreh_shield_number?
  448.       update_gold if ENABLE_GOLD_HUD
  449.   end
  450.    
  451.  #--------------------------------------------------------------------------
  452.  # ● Update Gold
  453.  #--------------------------------------------------------------------------          
  454.   def update_gold
  455.       gold_number_down if @gold > $game_party.gold
  456.       gold_number_up if @gold < $game_party.gold    
  457.       gold_number_update if @gold_refresh    
  458.   end  
  459.  
  460.  #--------------------------------------------------------------------------
  461.  # ● Can Refresh Weapon Number
  462.  #--------------------------------------------------------------------------        
  463.   def can_refreh_weapon_number?
  464.       return true if @weapon_number != $game_party.item_number(@w_item)  
  465.       return false
  466.   end  
  467.  #--------------------------------------------------------------------------
  468.  # ● Can Refresh Shield Number
  469.  #--------------------------------------------------------------------------        
  470.   def can_refreh_shield_number?
  471.       return true if @shield_number != $game_party.item_number(@s_item)  
  472.       return false
  473.   end    
  474.  
  475.  #--------------------------------------------------------------------------
  476.  # ● Update Visible
  477.  #--------------------------------------------------------------------------      
  478.   def update_visible
  479.       vis = $game_system.enable_hud
  480.       if ENABLE_SKILL_HUD
  481.          @skill_layout_sprite.visible = vis
  482.          @skill_layout_sprite_2.visible = vis
  483.          @skill_icon_sprite.visible = vis
  484.          @skill_icon_sprite_2.visible = vis
  485.          @skill_number_sprite.visible = vis
  486.          @skill_number_sprite_2.visible = vis
  487.       end
  488.       if ENABLE_ITEM_HUD
  489.          @item_layout_sprite.visible = vis
  490.          @item_icon_sprite.visible = vis
  491.          @item_number_sprite.visible = vis
  492.       end
  493.       if ENABLE_WEAPON_HUD        
  494.          @weapon_layout_sprite.visible = vis
  495.          @weapon_icon_sprite.visible = vis
  496.          @weapon_number_sprite.visible = vis
  497.       end
  498.       if ENABLE_SHIELD_HUD  
  499.          @shield_layout_sprite.visible = vis
  500.          @shield_icon_sprite.visible = vis
  501.          @shield_number_sprite.visible = vis      
  502.       end
  503.       if ENABLE_GOLD_HUD  
  504.          @gold_layout_sprite.visible = vis
  505.          @gold_number_sprite.visible = vis        
  506.       end  
  507.   end
  508.  
  509.  #--------------------------------------------------------------------------
  510.  # ● Can Refresh Hud
  511.  #--------------------------------------------------------------------------      
  512.   def can_refresh_hud?      
  513.       if @actor != nil
  514.          if ENABLE_SKILL_HUD
  515.            if (@old_skill != @actor.skill_id) || (@old_skill_2 != @actor.skill2_id)
  516.             return true
  517.            end
  518.          end
  519.          if ENABLE_ITEM_HUD
  520.             return true if @old_item != @actor.item_id
  521.          end
  522.          if ENABLE_WEAPON_HUD
  523.             return true if @old_weapon != @actor.equips[0]
  524.          end
  525.          if ENABLE_SHIELD_HUD
  526.             return true if @old_shield != @actor.equips[1]
  527.          end      
  528.       end
  529.       return false
  530.   end  
  531.    
  532.  #--------------------------------------------------------------------------
  533.  # ● Can Refresh Item Number
  534.  #--------------------------------------------------------------------------        
  535.   def can_refresh_item_number?
  536.       return true if @item_number != $game_party.item_number(@item)      
  537.       return false
  538.   end  
  539.  
  540.  #--------------------------------------------------------------------------
  541.  # ● Create Item
  542.  #--------------------------------------------------------------------------    
  543.   def refresh_item
  544.       @item_number = $game_party.item_number(@item)  
  545.       #Item Number ------------------------------------------------------------
  546.       @item_number_sprite.bitmap.clear
  547.       cost_split = @item_number.to_s.split(//)
  548.       for r in 0..cost_split.size - 1
  549.           number_abs = cost_split[r].to_i
  550.           src_rect = Rect.new(@number_cw * number_abs, 0, @number_cw, @number_ch)
  551.           @item_number_sprite.bitmap.blt(@number_sc  *  r, 0, @number_image, src_rect)        
  552.       end        
  553.       xf = ((cost_split.size * @number_sc) / 2)
  554.       @item_number_sprite.x = ITEM_HUD[0] + NUMBER[0] - xf
  555.   end  
  556.   #--------------------------------------------------------------------------
  557.   # ● gold_number_up
  558.   #--------------------------------------------------------------------------
  559.   def gold_number_up
  560.       @gold_refresh = true
  561.       @gold_ref = 20 * (@gold - @gold_old) / 100
  562.       @gold_ref = 1 if @gold_ref < 1
  563.       @gold += @gold_ref    
  564.       if @gold >= $game_party.gold
  565.          @gold_old = $game_party.gold
  566.          @gold = $game_party.gold
  567.          @gold_ref = 0
  568.       end  
  569.   end  
  570.   #--------------------------------------------------------------------------
  571.   # ● gold_number_down
  572.   #--------------------------------------------------------------------------
  573.   def gold_number_down
  574.       @gold_refresh = true
  575.       @gold_ref = 10 * (@gold_old - @gold) / 100
  576.       @gold_ref = 1 if @gold_ref < 1
  577.       @gold -= @gold_ref    
  578.       if @gold <= $game_party.gold
  579.          @gold_old = $game_party.gold
  580.          @gold = $game_party.gold
  581.          @gold_ref = 0
  582.       end    
  583.   end
  584.      
  585.   #--------------------------------------------------------------------------
  586.   # ● gold_number_update
  587.   #--------------------------------------------------------------------------
  588.   def gold_number_update  
  589.       @gold_number_sprite.bitmap.clear
  590.       @gold_number_text = @gold.abs.to_s.split(//)
  591.       for r in 0..@gold_number_text.size - 1
  592.           @gold_number_abs = @gold_number_text[r].to_i
  593.           gold_src_rect = Rect.new(@number_cw * @gold_number_abs, @number_ch * 2, @number_cw, @number_ch)
  594.           @gold_number_sprite.bitmap.blt(@number_cw  *  r, 0, @number_image, gold_src_rect)        
  595.       end    
  596.       @gold_refresh = false if @gold == $game_party.gold  
  597.   end  
  598.  
  599.   #--------------------------------------------------------------------------
  600.   # * Fade Skill Sprite | Kadafi Edit
  601.   #--------------------------------------------------------------------------
  602.   def fade_skill_sprite(force_hide, force_hide_time, fade_hud)
  603.     sprites = [@skill_layout_sprite, @skill_layout_sprite_2, @skill_icon_sprite,
  604.       @skill_icon_sprite_2, @skill_number_sprite, @skill_number_sprite_2]
  605.     if force_hide
  606.       sprites.each do |sprite|
  607.         if !sprite.disposed?
  608.           sprite.opacity = 0 if force_hide_time > 5
  609.         end
  610.       end
  611.     else
  612.       smart_fade_limit = MOG_ULTIMA_HUD ? MOG_ULTIMA_HUD::SMART_FADE_LIMIT : 90
  613.       if fade_hud
  614.         sprites.each do |sprite|
  615.           if !sprite.disposed?
  616.             sprite.opacity -= 15 if sprite.opacity > smart_fade_limit
  617.             sprite.opacity = smart_fade_limit if sprite.opacity < smart_fade_limit
  618.           end
  619.         end
  620.       else
  621.         sprites.each do |sprite|
  622.           if !sprite.disposed?
  623.             sprite.opacity += 15
  624.           end
  625.         end
  626.       end
  627.     end
  628.   end  
  629.    
  630. end
  631. #==============================================================================
  632. # ■ Spriteset_Map
  633. #==============================================================================
  634. class Spriteset_Map
  635.   attr_reader :toolhud
  636.   #--------------------------------------------------------------------------
  637.   # ● initialize  
  638.   #--------------------------------------------------------------------------
  639.   alias mog_tool_hud_initialize initialize
  640.   def initialize  
  641.       @toolhud = Tool_Hud.new
  642.       mog_tool_hud_initialize
  643.   end
  644.  
  645.   #--------------------------------------------------------------------------
  646.   # ● Dispose
  647.   #--------------------------------------------------------------------------
  648.   alias mog_tool_hud_dispose dispose
  649.   def dispose    
  650.       @toolhud.dispose
  651.       mog_tool_hud_dispose
  652.   end
  653.  
  654.   #--------------------------------------------------------------------------
  655.   # ● update  
  656.   #--------------------------------------------------------------------------
  657.   alias mog_tool_hud_update update
  658.   def update  
  659.       @toolhud.update
  660.       mog_tool_hud_update
  661.   end
  662.   #--------------------------------------------------------------------------
  663.   # ● Refresh Hud
  664.   #--------------------------------------------------------------------------  
  665.   alias mog_tool_hud_refresh_hud refresh_hud
  666.   def refresh_hud
  667.       mog_tool_hud_refresh_hud
  668.       @toolhud.refresh
  669.   end    
  670.  
  671. end  
  672.  
  673. #==============================================================================
  674. # ** Scene_Map | Kadafi Edit
  675. #==============================================================================
  676.  
  677. class Scene_Map < Scene_Base
  678.   attr_reader :spriteset
  679.   #--------------------------------------------------------------------------
  680.   # ● XAS Tool HUD
  681.   #--------------------------------------------------------------------------  
  682.   def toolhud
  683.     @spriteset.toolhud
  684.   end
  685. end
  686.  
  687. $mog_rgss3_xas_tool_hud = true
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement