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.

I need to delete the Shield!

Hello, RMXP. What I am aiming to do is erase the "Shield" option from the equip menu. I just want it to have 4 options in favor of a more Earthbound feeling. Is there any way I can do this?
 
It's possible with a script-- I'd imagine that it wouldn't be that hard. (A better scripter than I could probably bang one out in an hour or so.)

Note, however, that Shield will still exist in the Maker itself, no matter what you script. But you don't have to put any Shields in the game.

(When I ditch Shields from my games, which I do fairly often, I just change the name of the slot to something like "Shoes" or "Gloves" or "Off-hand," which works pretty well.)
 
This is all away from my comp so I don't know how accurate this is, but hopefully you can follow it.

The easiest way, just go into the script editor and into Scene_Equip and look for where it gives each option. You would have to find the option "Shield" and just delete it. I don't know exactly where it is because I don't have access to RPG Maker, (Also, this is XP, right?) if you look through the script you should be able to find it. I'll look again when I get home to see if I can't find it. Hopefully someone should step in before I get home and point it out but if not, I'll update and tell you what it is.
 
I tested this out for him, gamefreak. All that really does is remove the text. You can still equip things.

However; If you were okay with that, It would be better to leave your shield option there, and just change the name to Armor. Then delete the BOTTOM armor. (Number 4) and leave the bottom blank. And as long as you don't create armor compatible to that slot, then the player won't be able to do anything anyway. Or, you could use it for Costumes. Which... I don't know what kind of game you're going for, but it could be a fun way to change the appearance of your character, while adding collectible items throughout the game. Just a little something extra for the player to aim for.

Just my suggestion. Good luck with this, though. I'm sure there's a simple way to do it.
 
Found a workaround for your problem. In the script editor you need to modify some stuff. Here's the sections and good scritp for them...

You will need to change vocab from Shield to whatever you want it to be...

In Window_Equip you need to remove the 4th armor slot so that players can't move the curson on it's space inside the menu...
#==============================================================================
# ** Window_Equip
#------------------------------------------------------------------------------
# This window displays items the actor is currently equipped with on the
# equipment screen.
#==============================================================================

class Window_Equip < Window_Selectable
#--------------------------------------------------------------------------
# * Object Initialization
# x : window X coordinate
# y : window Y corrdinate
# actor : actor
#--------------------------------------------------------------------------
def initialize(x, y, actor)
super(x, y, 336, WLH * 5 + 32)
@actor = actor
refresh
self.index = 0
end
#--------------------------------------------------------------------------
# * Get Item
#--------------------------------------------------------------------------
def item
return @data[self.index]
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
self.contents.clear
@data = []
for item in @actor.equips do @data.push(item) end
@item_max = @data.size
self.contents.font.color = system_color
if @actor.two_swords_style
self.contents.draw_text(4, WLH * 0, 92, WLH, Vocab::weapon1)
self.contents.draw_text(4, WLH * 1, 92, WLH, Vocab::weapon2)
else
self.contents.draw_text(4, WLH * 0, 92, WLH, Vocab::weapon)
self.contents.draw_text(4, WLH * 1, 92, WLH, Vocab::armor1)
end
self.contents.draw_text(4, WLH * 2, 92, WLH, Vocab::armor2)
self.contents.draw_text(4, WLH * 3, 92, WLH, Vocab::armor3)
draw_item_name(@data[0], 92, WLH * 0)
draw_item_name(@data[1], 92, WLH * 1)
draw_item_name(@data[2], 92, WLH * 2)
draw_item_name(@data[3], 92, WLH * 3)
end
#--------------------------------------------------------------------------
# * Update Help Text
#--------------------------------------------------------------------------
def update_help
@help_window.set_text(item == nil ? "" : item.description)
end
end

and in Scene_equip you need to do as well so that your script stays tidy and doesn't call for unnecessary functions...
class Scene_Equip < Scene_Base
#--------------------------------------------------------------------------
# * Constants
#--------------------------------------------------------------------------
EQUIP_TYPE_MAX = 5 # Number of equip region
#--------------------------------------------------------------------------
# * Object Initialization
# actor_index : actor index
# equip_index : equipment index
#--------------------------------------------------------------------------
def initialize(actor_index = 0, equip_index = 0)
@actor_index = actor_index
@equip_index = equip_index
end
#--------------------------------------------------------------------------
# * Start processing
#--------------------------------------------------------------------------
def start
super
create_menu_background
@actor = $game_party.members[@actor_index]
@help_window = Window_Help.new
create_item_windows
@equip_window = Window_Equip.new(208, 56, @actor)
@equip_window.help_window = @help_window
@equip_window.index = @equip_index
@status_window = Window_EquipStatus.new(0, 56, @actor)
end
#--------------------------------------------------------------------------
# * Termination Processing
#--------------------------------------------------------------------------
def terminate
super
dispose_menu_background
@help_window.dispose
@equip_window.dispose
@status_window.dispose
dispose_item_windows
end
#--------------------------------------------------------------------------
# * Return to Original Screen
#--------------------------------------------------------------------------
def return_scene
$scene = Scene_Menu.new(2)
end
#--------------------------------------------------------------------------
# * Switch to Next Actor Screen
#--------------------------------------------------------------------------
def next_actor
@actor_index += 1
@actor_index %= $game_party.members.size
$scene = Scene_Equip.new(@actor_index, @equip_window.index)
end
#--------------------------------------------------------------------------
# * Switch to Previous Actor Screen
#--------------------------------------------------------------------------
def prev_actor
@actor_index += $game_party.members.size - 1
@actor_index %= $game_party.members.size
$scene = Scene_Equip.new(@actor_index, @equip_window.index)
end
#--------------------------------------------------------------------------
# * Update Frame
#--------------------------------------------------------------------------
def update
super
update_menu_background
@help_window.update
update_equip_window
update_status_window
update_item_windows
if @equip_window.active
update_equip_selection
elsif @item_window.active
update_item_selection
end
end
#--------------------------------------------------------------------------
# * Create Item Window
#--------------------------------------------------------------------------
def create_item_windows
@item_windows = []
for i in 0...EQUIP_TYPE_MAX
@item_windows = Window_EquipItem.new(0, 208, 544, 208, @actor, i)
@item_windows.help_window = @help_window
@item_windows.visible = (@equip_index == i)
@item_windows.y = 208
@item_windows.height = 208
@item_windows.active = false
@item_windows.index = -1
end
end
#--------------------------------------------------------------------------
# * Dispose of Item Window
#--------------------------------------------------------------------------
def dispose_item_windows
for window in @item_windows
window.dispose
end
end
#--------------------------------------------------------------------------
# * Update Item Window
#--------------------------------------------------------------------------
def update_item_windows
for i in 0...EQUIP_TYPE_MAX
@item_windows.visible = (@equip_window.index == i)
@item_windows.update
end
@item_window = @item_windows[@equip_window.index]
end
#--------------------------------------------------------------------------
# * Update Equipment Window
#--------------------------------------------------------------------------
def update_equip_window
@equip_window.update
end
#--------------------------------------------------------------------------
# * Update Status Window
#--------------------------------------------------------------------------
def update_status_window
if @equip_window.active
@status_window.set_new_parameters(nil, nil, nil, nil)
elsif @item_window.active
temp_actor = @actor.clone
temp_actor.change_equip(@equip_window.index, @item_window.item, true)
new_atk = temp_actor.atk
new_def = temp_actor.def
new_spi = temp_actor.spi
new_agi = temp_actor.agi
@status_window.set_new_parameters(new_atk, new_def, new_spi, new_agi)
end
@status_window.update
end
#--------------------------------------------------------------------------
# * Update Equip Region Selection
#--------------------------------------------------------------------------
def update_equip_selection
if Input.trigger?(Input::B)
Sound.play_cancel
return_scene
elsif Input.trigger?(Input::R)
Sound.play_cursor
next_actor
elsif Input.trigger?(Input::L)
Sound.play_cursor
prev_actor
elsif Input.trigger?(Input::C)
if @actor.fix_equipment
Sound.play_buzzer
else
Sound.play_decision
@equip_window.active = false
@item_window.active = true
@item_window.index = 0
end
end
end
#--------------------------------------------------------------------------
# * Update Item Selection
#--------------------------------------------------------------------------
def update_item_selection
if Input.trigger?(Input::B)
Sound.play_cancel
@equip_window.active = true
@item_window.active = false
@item_window.index = -1
elsif Input.trigger?(Input::C)
Sound.play_equip
@actor.change_equip(@equip_window.index, @item_window.item)
@equip_window.active = true
@item_window.active = false
@item_window.index = -1
@equip_window.refresh
for item_window in @item_windows
item_window.refresh
end
end
end
end


finally, in Game_actor you need to remove it for the same sake of tidyness.
#==============================================================================
# ** Game_Actor
#------------------------------------------------------------------------------
# This class handles actors. It's used within the Game_Actors class
# ($game_actors) and referenced by the Game_Party class ($game_party).
#==============================================================================

class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
# * Public Instance Variables
#--------------------------------------------------------------------------
attr_reader :name # name
attr_reader :character_name # character graphic filename
attr_reader :character_index # character graphic index
attr_reader :face_name # face graphic filename
attr_reader :face_index # face graphic index
attr_reader :class_id # class ID
attr_reader :weapon_id # weapon ID
attr_reader :armor1_id # shield ID
attr_reader :armor2_id # helmet ID
attr_reader :armor3_id # body armor ID
attr_reader :armor4_id # accessory ID
attr_reader :level # level
attr_reader :exp # experience
attr_accessor :last_skill_id # for cursor memory: Skill
#--------------------------------------------------------------------------
# * Object Initialization
# actor_id : actor ID
#--------------------------------------------------------------------------
def initialize(actor_id)
super()
setup(actor_id)
@last_skill_id = 0
end
#--------------------------------------------------------------------------
# * Setup
# actor_id : actor ID
#--------------------------------------------------------------------------
def setup(actor_id)
actor = $data_actors[actor_id]
@actor_id = actor_id
@name = actor.name
@character_name = actor.character_name
@character_index = actor.character_index
@face_name = actor.face_name
@face_index = actor.face_index
@class_id = actor.class_id
@weapon_id = actor.weapon_id
@armor1_id = actor.armor1_id
@armor2_id = actor.armor2_id
@armor3_id = actor.armor3_id
@armor4_id = actor.armor4_id
@level = actor.initial_level
@exp_list = Array.new(101)
make_exp_list
@exp = @exp_list[@level]
@skills = []
for i in self.class.learnings
learn_skill(i.skill_id) if i.level <= @level
end
clear_extra_values
recover_all
end
#--------------------------------------------------------------------------
# * Determine if Actor or Not
#--------------------------------------------------------------------------
def actor?
return true
end
#--------------------------------------------------------------------------
# * Get Actor ID
#--------------------------------------------------------------------------
def id
return @actor_id
end
#--------------------------------------------------------------------------
# * Get Index
#--------------------------------------------------------------------------
def index
return $game_party.members.index(self)
end
#--------------------------------------------------------------------------
# * Get Actor Object
#--------------------------------------------------------------------------
def actor
return $data_actors[@actor_id]
end
#--------------------------------------------------------------------------
# * Get Class Object
#--------------------------------------------------------------------------
def class
return $data_classes[@class_id]
end
#--------------------------------------------------------------------------
# * Get Skill Object Array
#--------------------------------------------------------------------------
def skills
result = []
for i in @skills
result.push($data_skills)
end
return result
end
#--------------------------------------------------------------------------
# * Get Weapon Object Array
#--------------------------------------------------------------------------
def weapons
result = []
result.push($data_weapons[@weapon_id])
if two_swords_style
result.push($data_weapons[@armor1_id])
end
return result
end
#--------------------------------------------------------------------------
# * Get Armor Object Array
#--------------------------------------------------------------------------
def armors
result = []
unless two_swords_style
result.push($data_armors[@armor1_id])
end
result.push($data_armors[@armor2_id])
result.push($data_armors[@armor3_id])
return result
end
#--------------------------------------------------------------------------
# * Get Equipped Item Object Array
#--------------------------------------------------------------------------
def equips
return weapons + armors
end
#--------------------------------------------------------------------------
# * Calculate Experience
#--------------------------------------------------------------------------
def make_exp_list
@exp_list[1] = @exp_list[100] = 0
m = actor.exp_basis
n = 0.75 + actor.exp_inflation / 200.0;
for i in 2..99
@exp_list = @exp_list[i-1] + Integer(m)
m *= 1 + n;
n *= 0.9;
end
end
#--------------------------------------------------------------------------
# * Get Element Change Value
# element_id : element ID
#--------------------------------------------------------------------------
def element_rate(element_id)
rank = self.class.element_ranks[element_id]
result = [0,200,150,100,50,0,-100][rank]
for armor in armors.compact
result /= 2 if armor.element_set.include?(element_id)
end
for state in states
result /= 2 if state.element_set.include?(element_id)
end
return result
end
#--------------------------------------------------------------------------
# * Get Added State Success Rate
# state_id : state ID
#--------------------------------------------------------------------------
def state_probability(state_id)
if $data_states[state_id].nonresistance
return 100
else
rank = self.class.state_ranks[state_id]
return [0,100,80,60,40,20,0][rank]
end
end
#--------------------------------------------------------------------------
# * Determine if State is Resisted
# state_id : state ID
#--------------------------------------------------------------------------
def state_resist?(state_id)
for armor in armors.compact
return true if armor.state_set.include?(state_id)
end
return false
end
#--------------------------------------------------------------------------
# * Get Normal Attack Element
#--------------------------------------------------------------------------
def element_set
result = []
if weapons.compact == []
return [1] # Unarmed: melee attribute
end
for weapon in weapons.compact
result |= weapon == nil ? [] : weapon.element_set
end
return result
end
#--------------------------------------------------------------------------
# * Get Additional Effect of Normal Attack (state change)
#--------------------------------------------------------------------------
def plus_state_set
result = []
for weapon in weapons.compact
result |= weapon == nil ? [] : weapon.state_set
end
return result
end
#--------------------------------------------------------------------------
# * Get Maximum HP Limit
#--------------------------------------------------------------------------
def maxhp_limit
return 9999
end
#--------------------------------------------------------------------------
# * Get Basic Maximum HP
#--------------------------------------------------------------------------
def base_maxhp
return actor.parameters[0, @level]
end
#--------------------------------------------------------------------------
# * Get basic Maximum MP
#--------------------------------------------------------------------------
def base_maxmp
return actor.parameters[1, @level]
end
#--------------------------------------------------------------------------
# * Get Basic Attack
#--------------------------------------------------------------------------
def base_atk
n = actor.parameters[2, @level]
for item in equips.compact do n += item.atk end
return n
end
#--------------------------------------------------------------------------
# * Get Basic Defense
#--------------------------------------------------------------------------
def base_def
n = actor.parameters[3, @level]
for item in equips.compact do n += item.def end
return n
end
#--------------------------------------------------------------------------
# * Get Basic Spirit
#--------------------------------------------------------------------------
def base_spi
n = actor.parameters[4, @level]
for item in equips.compact do n += item.spi end
return n
end
#--------------------------------------------------------------------------
# * Get Basic Agility
#--------------------------------------------------------------------------
def base_agi
n = actor.parameters[5, @level]
for item in equips.compact do n += item.agi end
return n
end
#--------------------------------------------------------------------------
# * Get Hit Rate
#--------------------------------------------------------------------------
def hit
if two_swords_style
n1 = weapons[0] == nil ? 95 : weapons[0].hit
n2 = weapons[1] == nil ? 95 : weapons[1].hit
n = [n1, n2].min
else
n = weapons[0] == nil ? 95 : weapons[0].hit
end
return n
end
#--------------------------------------------------------------------------
# * Get Evasion Rate
#--------------------------------------------------------------------------
def eva
n = 5
for item in armors.compact do n += item.eva end
return n
end
#--------------------------------------------------------------------------
# * Get Critical Ratio
#--------------------------------------------------------------------------
def cri
n = 4
n += 4 if actor.critical_bonus
for weapon in weapons.compact
n += 4 if weapon.critical_bonus
end
return n
end
#--------------------------------------------------------------------------
# * Get Ease of Hitting
#--------------------------------------------------------------------------
def odds
return 4 - self.class.position
end
#--------------------------------------------------------------------------
# * Get [Dual Wield] Option
#--------------------------------------------------------------------------
def two_swords_style
return actor.two_swords_style
end
#--------------------------------------------------------------------------
# * Get [Fixed Equipment] Option
#--------------------------------------------------------------------------
def fix_equipment
return actor.fix_equipment
end
#--------------------------------------------------------------------------
# * Get [Automatic Battle] Option
#--------------------------------------------------------------------------
def auto_battle
return actor.auto_battle
end
#--------------------------------------------------------------------------
# * Get [Super Guard] Option
#--------------------------------------------------------------------------
def super_guard
return actor.super_guard
end
#--------------------------------------------------------------------------
# * Get [Pharmocology] Option
#--------------------------------------------------------------------------
def pharmacology
return actor.pharmacology
end
#--------------------------------------------------------------------------
# * Get [First attack within turn] weapon option
#--------------------------------------------------------------------------
def fast_attack
for weapon in weapons.compact
return true if weapon.fast_attack
end
return false
end
#--------------------------------------------------------------------------
# * Get [Chain attack] weapon option
#--------------------------------------------------------------------------
def dual_attack
for weapon in weapons.compact
return true if weapon.dual_attack
end
return false
end
#--------------------------------------------------------------------------
# * Get [Prevent critical] armor option
#--------------------------------------------------------------------------
def prevent_critical
for armor in armors.compact
return true if armor.prevent_critical
end
return false
end
#--------------------------------------------------------------------------
# * Get [half MP cost] armor option
#--------------------------------------------------------------------------
def half_mp_cost
for armor in armors.compact
return true if armor.half_mp_cost
end
return false
end
#--------------------------------------------------------------------------
# * Get [Double Experience] Armor Option
#--------------------------------------------------------------------------
def double_exp_gain
for armor in armors.compact
return true if armor.double_exp_gain
end
return false
end
#--------------------------------------------------------------------------
# * Get [Auto HP Recovery] Armor Option
#--------------------------------------------------------------------------
def auto_hp_recover
for armor in armors.compact
return true if armor.auto_hp_recover
end
return false
end
#--------------------------------------------------------------------------
# * Get Normal Attack Animation ID
#--------------------------------------------------------------------------
def atk_animation_id
if two_swords_style
return weapons[0].animation_id if weapons[0] != nil
return weapons[1] == nil ? 1 : 0
else
return weapons[0] == nil ? 1 : weapons[0].animation_id
end
end
#--------------------------------------------------------------------------
# * Get Normal Attack Animation ID (Dual Wield: Weapon 2)
#--------------------------------------------------------------------------
def atk_animation_id2
if two_swords_style
return weapons[1] == nil ? 0 : weapons[1].animation_id
else
return 0
end
end
#--------------------------------------------------------------------------
# * Get Experience String
#--------------------------------------------------------------------------
def exp_s
return @exp_list[@level+1] > 0 ? @exp : "-------"
end
#--------------------------------------------------------------------------
# * Get String for Next Level Experience
#--------------------------------------------------------------------------
def next_exp_s
return @exp_list[@level+1] > 0 ? @exp_list[@level+1] : "-------"
end
#--------------------------------------------------------------------------
# * Get String for Experience to Next Level
#--------------------------------------------------------------------------
def next_rest_exp_s
return @exp_list[@level+1] > 0 ?
(@exp_list[@level+1] - @exp) : "-------"
end
#--------------------------------------------------------------------------
# * Change Equipment (designate ID)
# equip_type : Equip region (0..4)
# item_id : Weapon ID or armor ID
# test : Test flag (for battle test or temporary equipment)
# Used by event commands or battle test preparation.
#--------------------------------------------------------------------------
def change_equip_by_id(equip_type, item_id, test = false)
if equip_type == 0 or (equip_type == 1 and two_swords_style)
change_equip(equip_type, $data_weapons[item_id], test)
else
change_equip(equip_type, $data_armors[item_id], test)
end
end
#--------------------------------------------------------------------------
# * Change Equipment (designate object)
# equip_type : Equip region (0..4)
# item : Weapon or armor (nil is used to unequip)
# test : Test flag (for battle test or temporary equipment)
#--------------------------------------------------------------------------
def change_equip(equip_type, item, test = false)
last_item = equips[equip_type]
unless test
return if $game_party.item_number(item) == 0 if item != nil
$game_party.gain_item(last_item, 1)
$game_party.lose_item(item, 1)
end
item_id = item == nil ? 0 : item.id
case equip_type
when 0 # Weapon
@weapon_id = item_id
unless two_hands_legal? # If two hands is not allowed
change_equip(1, nil, test) # Unequip from other hand
end
when 1 # Shield
@armor1_id = item_id
unless two_hands_legal? # If two hands is not allowed
change_equip(0, nil, test) # Unequip from other hand
end
when 2 # Head
@armor2_id = item_id
when 3 # Body
@armor3_id = item_id
when 4 # Accessory
@armor4_id = item_id
end
end
#--------------------------------------------------------------------------
# * Discard Equipment
# item : Weapon or armor to be discarded.
# Used when the "Include Equipment" option is enabled.
#--------------------------------------------------------------------------
def discard_equip(item)
if item.is_a?(RPG::Weapon)
if @weapon_id == item.id
@weapon_id = 0
elsif two_swords_style and @armor1_id == item.id
@armor1_id = 0
end
elsif item.is_a?(RPG::Armor)
if not two_swords_style and @armor1_id == item.id
@armor1_id = 0
elsif @armor2_id == item.id
@armor2_id = 0
elsif @armor3_id == item.id
@armor3_id = 0
elsif @armor4_id == item.id
@armor4_id = 0
end
end
end
#--------------------------------------------------------------------------
# * Determine if Two handed Equipment
#--------------------------------------------------------------------------
def two_hands_legal?
if weapons[0] != nil and weapons[0].two_handed
return false if @armor1_id != 0
end
if weapons[1] != nil and weapons[1].two_handed
return false if @weapon_id != 0
end
return true
end
#--------------------------------------------------------------------------
# * Determine if Equippable
# item : item
#--------------------------------------------------------------------------
def equippable?(item)
if item.is_a?(RPG::Weapon)
return self.class.weapon_set.include?(item.id)
elsif item.is_a?(RPG::Armor)
return false if two_swords_style and item.kind == 0
return self.class.armor_set.include?(item.id)
end
return false
end
#--------------------------------------------------------------------------
# * Change Experience
# exp : New experience
# show : Level up display flag
#--------------------------------------------------------------------------
def change_exp(exp, show)
last_level = @level
last_skills = skills
@exp = [[exp, 9999999].min, 0].max
while @exp >= @exp_list[@level+1] and @exp_list[@level+1] > 0
level_up
end
while @exp < @exp_list[@level]
level_down
end
@hp = [@hp, maxhp].min
@mp = [@mp, maxmp].min
if show and @level > last_level
display_level_up(skills - last_skills)
end
end
#--------------------------------------------------------------------------
# * Level Up
#--------------------------------------------------------------------------
def level_up
@level += 1
for learning in self.class.learnings
learn_skill(learning.skill_id) if learning.level == @level
end
end
#--------------------------------------------------------------------------
# * Level Down
#--------------------------------------------------------------------------
def level_down
@level -= 1
end
#--------------------------------------------------------------------------
# * Show Level Up Message
# new_skills : Array of newly learned skills
#--------------------------------------------------------------------------
def display_level_up(new_skills)
$game_message.new_page
text = sprintf(Vocab::LevelUp, @name, Vocab::level, @level)
$game_message.texts.push(text)
for skill in new_skills
text = sprintf(Vocab::ObtainSkill, skill.name)
$game_message.texts.push(text)
end
end
#--------------------------------------------------------------------------
# * Get Experience (for the double experience point option)
# exp : Amount to increase experience.
# show : Level up display flag
#--------------------------------------------------------------------------
def gain_exp(exp, show)
if double_exp_gain
change_exp(@exp + exp * 2, show)
else
change_exp(@exp + exp, show)
end
end
#--------------------------------------------------------------------------
# * Change Level
# level : new level
# show : Level up display flag
#--------------------------------------------------------------------------
def change_level(level, show)
level = [[level, 99].min, 1].max
change_exp(@exp_list[level], show)
end
#--------------------------------------------------------------------------
# * Learn Skill
# skill_id : skill ID
#--------------------------------------------------------------------------
def learn_skill(skill_id)
unless skill_learn?($data_skills[skill_id])
@skills.push(skill_id)
@skills.sort!
end
end
#--------------------------------------------------------------------------
# * Forget Skill
# skill_id : skill ID
#--------------------------------------------------------------------------
def forget_skill(skill_id)
@skills.delete(skill_id)
end
#--------------------------------------------------------------------------
# * Determine if Finished Learning Skill
# skill : skill
#--------------------------------------------------------------------------
def skill_learn?(skill)
return @skills.include?(skill.id)
end
#--------------------------------------------------------------------------
# * Determine Usable Skills
# skill : skill
#--------------------------------------------------------------------------
def skill_can_use?(skill)
return false unless skill_learn?(skill)
return super
end
#--------------------------------------------------------------------------
# * Change Name
# name : new name
#--------------------------------------------------------------------------
def name=(name)
@name = name
end
#--------------------------------------------------------------------------
# * Change Class ID
# class_id : New class ID
#--------------------------------------------------------------------------
def class_id=(class_id)
@class_id = class_id
for i in 0..4 # Remove unequippable items
change_equip(i, nil) unless equippable?(equips)
end
end
#--------------------------------------------------------------------------
# * Change Graphics
# character_name : new character graphic filename
# character_index : new character graphic index
# face_name : new face graphic filename
# face_index : new face graphic index
#--------------------------------------------------------------------------
def set_graphic(character_name, character_index, face_name, face_index)
@character_name = character_name
@character_index = character_index
@face_name = face_name
@face_index = face_index
end
#--------------------------------------------------------------------------
# * Use Sprites?
#--------------------------------------------------------------------------
def use_sprite?
return false
end
#--------------------------------------------------------------------------
# * Perform Collapse
#--------------------------------------------------------------------------
def perform_collapse
if $game_temp.in_battle and dead?
@collapse = true
Sound.play_actor_collapse
end
end
#--------------------------------------------------------------------------
# * Perform Automatic Recovery (called at end of turn)
#--------------------------------------------------------------------------
def do_auto_recovery
if auto_hp_recover and not dead?
self.hp += maxhp / 20
end
end
#--------------------------------------------------------------------------
# * Create Battle Action (for automatic battle)
#--------------------------------------------------------------------------
def make_action
@action.clear
return unless movable?
action_list = []
action = Game_BattleAction.new(self)
action.set_attack
action.evaluate
action_list.push(action)
for skill in skills
action = Game_BattleAction.new(self)
action.set_skill(skill.id)
action.evaluate
action_list.push(action)
end
max_value = 0
for action in action_list
if action.value > max_value
@action = action
max_value = action.value
end
end
end
end



Final word you will need to change the armor ID of your armor4 items to armor2 and delete all of the shields from the DB.

I made it so that you can still use dual wielding (if ever you need it :P) that's why I left the empty space inside the equip window :biggrin:


Cheers !!! :thumb:

-
IceDelta

PS: Note that this has been tested on RMVX, but that it should work all the same in RMXP. Mikee's method works good too but it will make the 5th slot navigateable inside the menus if the actor isn't Dual wielding, and thus make the player wonder what should have been there...
 

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