Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

show equiptment on map

I saw this script somewhere and forgot where it was. Its the script where if you equip an item it shows a charset over your character of that item, so it looks like you are wearing it. Where did this cript go, could someone please link to it for me?

Thx in advance
~badmonur~
 

A J

Member

Code:
#==============================================================================
# â–  Visual_Equipment
# Written by Rataime
#
# Edit below
#
# Note : If you have a custom Window_SaveFile, check the one at the end of the script, 
# add the added lines to yours, and delete the whole Window_SaveFile class here
#==============================================================================
def equip_update(light=false)

$visual_equipment=Array.new
$visual_equipment[0]=light
for i in 0..3
  $visual_equipment[i+1]=[]
end

#===================================================
# ● EDIT HERE !
#===================================================    

#If weapon n?33 is equiped, add the charset tpl_helmet_1.png (I don't have a weapon charset ><)
#add_weapon_sprite(33,"tpl_helmet_1") 

#If weapon n?6 is equiped, add the charset tpl_helmet_1.png
add_armor_sprite(6,"tpl_helmet_1")

add_armor_sprite(7,"tpl_helmet_2")
add_armor_sprite(20,"tpl_armor_white")
add_armor_sprite(15,"tpl_armor_blue")
add_armor_sprite(21,"tpl_armor_cape")

#===================================================
# â–¼ Visual_equip functions
#===================================================
    RPG::Cache.clear 
    @game_party = $game_party
    @game_party = $game_party2 if $visual_equipment[0]
    for i in 0...@game_party.actors.size
      for img in $visual_equipment[i+1]
        bitmap = RPG::Cache.character(@game_party.actors[i].character_name, @game_party.actors[i].character_hue)
        if img!=true and img!=false
          add_equip(bitmap,img,i)
        end
      end
    end
end

  def add_equip(sprite,to_add,character)
  @game_party = $game_party
  @game_party = $game_party2 if $visual_equipment[0]
  bmp = Sprite.new
  bmp.visible =false
  bmp.bitmap = RPG::Cache.character(to_add,@game_party.actors[character].character_hue)
  color = bmp.bitmap.get_pixel(0, 0)
  x=sprite.width
  y=sprite.height
  if $visual_equipment[0]
    x=x/4
    y=y/4
  end
  for i in 0..x
    for j in 0..y
      color_get=bmp.bitmap.get_pixel(i, j)
      if color_get!=color
        sprite.set_pixel(i, j ,color_get)
      end
    end
  end
  
  bmp=nil
  
  end

  def add_weapon_sprite(id,sprite)
    @game_party = $game_party
    @game_party = $game_party2 if $visual_equipment[0]
    for i in 0...@game_party.actors.size
      if @game_party.actors[i].weapon_id==id
        $visual_equipment[i+1].push(sprite)
      end
    end
  end

  def add_armor_sprite(id,sprite)
    @game_party = $game_party
    @game_party = $game_party2 if $visual_equipment[0]
    for i in 0...@game_party.actors.size
      if @game_party.actors[i].armor1_id==id or @game_party.actors[i].armor2_id==id or @game_party.actors[i].armor3_id==id or @game_party.actors[i].armor4_id==id
        $visual_equipment[i+1].push(sprite)
      end
    end
  end

#===================================================
# â–¼ CLASS Scene_Equip edit
#===================================================

class Scene_Equip
  
  alias visual_update_right update_right
  
  def update_right
    if Input.trigger?(Input::B)
      equip_update
      $game_system.se_play($data_system.cancel_se)
      $scene = Scene_Menu.new(2)
      return
    end
    visual_update_right
  end
          
end

class Interpreter

  alias visual_command_319 command_319
  
  def command_319
    actor = $game_actors[@parameters[0]]
    if actor != nil
      actor.equip(@parameters[1], @parameters[2])
    end
    equip_update
    return true
  end
  
end

class Game_Character
  attr_accessor :character_hue
end

class Game_Actor < Game_Battler
alias visual_setup setup
  def setup(actor_id)
    visual_setup(actor_id)
    @character_hue = (@character_hue+1)%256
  end
end

class Scene_Load
  alias visual_read_save_data read_save_data
  alias visual_on_cancel on_cancel
  
  def on_cancel
    equip_update
    visual_on_cancel
  end
  
  def read_save_data(file)
    visual_read_save_data(file)
    equip_update
  end
end

class Scene_Save
  alias visual_on_decision on_decision
  alias visual_on_cancel on_cancel
  
  def on_cancel
    equip_update
    visual_on_cancel
  end
  
  def on_decision(file)
    equip_update
    visual_on_decision(file)
  end
end

class Scene_Title
  alias visual_command_new_game command_new_game
  
  def command_new_game
    visual_command_new_game
    equip_update
  end

end

class Window_SaveFile < Window_Base

  def initialize(file_index, filename)
    super(0, 64 + file_index % 4 * 104, 640, 104)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $fontface
    self.contents.font.size = $fontsize
    @file_index = file_index
    @filename = "Save#{@file_index + 1}.rxdata"
    @time_stamp = Time.at(0)
    @file_exist = FileTest.exist?(@filename)
    if @file_exist
      file = File.open(@filename, "r")
      @time_stamp = file.mtime
      @characters = Marshal.load(file)
      @frame_count = Marshal.load(file)
      @game_system = Marshal.load(file)
      @game_switches = Marshal.load(file)
      @game_variables = Marshal.load(file)
      @self_variables = Marshal.load(file)#added
      @game_screen = Marshal.load(file)#added
      @game_actors = Marshal.load(file)#added
      $game_party2=@game_party= Marshal.load(file)#added
      @total_sec = @frame_count / Graphics.frame_rate
      file.close
    end
    equip_update(true)#added
    refresh
    @selected = false
  end
  
end


look at line 26
Code:
add_armor_sprite(6,"tpl_helmet_1")

the number 6 means it's the item number 6 in the database armor
"tpl_helmet_1" it the name of the *.png pic in \Graphics\Characters
the pic should be in the same size as the actor pic so that the armor cover the right spot

if you have any problem just say tell me
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top