[XP] Non-ABS Visual Equipment?

Started by MOAL, December 26, 2014, 04:15:21 am

Previous topic - Next topic

MOAL

I could've sworn I saw one somewhere a few years ago, but now that I look at it on google, they're all for ABS. Anyone know a place to find one or can help me out somehow?

Zexion

I found this one
#==============================================================================
# ■ 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,"Visual Equipment/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

MOAL