- Get link
- X
- Other Apps
A4 Passability Adjustment (RPG Maker VX Ace Script)
Introduction: This script stops passability of A4 roofs
Status: Untested
Use: ?
Language: RGSS3
=begin
A4 Tile Passability Adjustment
by Fomar0153
Version 1.0
----------------------
Notes
----------------------
You know how A4 tile roofs are passable from the bottom and between themselves?
Well this stops that nonesence, not passable means not passable.
I'm not sure if there will be any unintended consquences of this script,
please let me know if you find any anomalies.
----------------------
Instructions
----------------------
Plug and Play
=end
class Game_Map
#--------------------------------------------------------------------------
# * Check Passage
# bit: Inhibit passage check bit
#--------------------------------------------------------------------------
alias a4_check_passage check_passage
def check_passage(x, y, bit)
pass = a4_check_passage(x, y, bit)
all_tiles(x, y).each do |tile_id|
if tile_id >= 5888 && tile_id <= 8191
if ((80..87).to_a + (96..103).to_a + (112..119).to_a).include?((tile_id - 2048) / 48)
return pass && airship_land_ok?(x, y)
end
end
end
pass
end
#--------------------------------------------------------------------------
# * Determine if Airship can Land
#--------------------------------------------------------------------------
def airship_land_ok?(x, y)
a4_check_passage(x, y, 0x0800) && a4_check_passage(x, y, 0x0f)
end
end
Dual Wield -> Free Hands
Introduction: This script changes dual wielding to allow characters to equip shield or one handed weapons in the shield slot
Status: Untested
Use: ?
Language: RGSS3
=begin
Duel Wield -> Free Hands
by Fomar0153
Version 1.1
----------------------
Notes
----------------------
No requirements
Changes dual wielding to allow characters to equip shield or one handed
weapons in the shield slot. Also allows for two handed weapons.
----------------------
Instructions
----------------------
Notetag two handed weapon with and have them
disable the shield slot.
I would recommend changing the slot name to Main Hand and Off Hand
or something similar
----------------------
Change Log
----------------------
1.0 -> 1.1 Fixed a bug where the equip item in the second hand could
overwrite the main hand's equip item.
----------------------
Known bugs
----------------------
None
=end
class Game_Actor
def equip_slots
return [0,1,2,3,4]
end
def change_equip(slot_id, item)
return unless trade_item_with_party(item, equips[slot_id])
return if (item && equip_slots[slot_id] != item.etype_id) and
not (dual_wield? and (equip_slots[slot_id] == 1 and item.etype_id == 0))
@equips[slot_id].object = item
refresh
end
def release_unequippable_items(item_gain = true)
@equips.each_with_index do |item, i|
if !equippable?(item.object,equip_slots) || (item.object.etype_id != equip_slots and
not (dual_wield? and (equip_slots == 1 and item.object.etype_id == 0)))
trade_item_with_party(nil, item.object) if item_gain
item.object = nil
end
end
end
def equippable?(item, slot = nil)
unless slot.nil?
if slot == 1 and dual_wield?
return (super(item) and not equip_type_sealed?(1)) if item.is_a?(RPG::Weapon)
end
end
return super(item)
end
def slot_list(etype_id)
result = []
equip_slots.each_with_index {|e, i| result.push(i) if e == etype_id or ((e == 1 and etype_id == 0) and dual_wield?) }
result
end
end
class RPG::Weapon
def two_handed?
return self.note.include?("")
end
end
class Window_EquipItem < Window_ItemList
def include?(item)
return true if item == nil
return false unless item.is_a?(RPG::EquipItem)
return false if @slot_id < 0
return false if @actor.equip_slots[@slot_id] == 1 and
(item.is_a?(RPG::Weapon) and item.two_handed?)
return false if (item.etype_id != @actor.equip_slots[@slot_id]) and
not (@actor.dual_wield? and (@actor.equip_slots[@slot_id] == 1 and item.etype_id == 0))
return @actor.equippable?(item,@actor.equip_slots[@slot_id])
end
end
Improved Item Processing (RPG Maker VX Ace Script)
Introduction: This script allows you to define which items appear in the item processing window.
Status: Untested
Use: ?
Language: RGSS3
=begin
Improved Item Processing
by Fomar0153
Version 1.0
----------------------
Notes
----------------------
Allows you to define which items appear in the item
processing window.
----------------------
Instructions
----------------------
Set VARIABLE_CAT to the id of the variable you wish
to use to define what appears.
By defualt:
VARIABLE -> What appear
0 -> Normal Items
1 -> Weapons
2 -> Armours
3 -> Key Items
4 -> All Items
5+ will open up a custom selection window.
You define the items to be included in it by note tagging.
Where x is the value of the variable you want to use.
----------------------
Known bugs
----------------------
None
=end
class Window_KeyItem < Window_ItemList
#--------------------------------------------------------------------------
# ● Change the number to the id of the variable you wish to use
#--------------------------------------------------------------------------
VARIABLE_CAT = 2
#--------------------------------------------------------------------------
# ● Replaces the inherited method.
#--------------------------------------------------------------------------
def include?(item)
case $game_variables[VARIABLE_CAT]
when 0 # Normal Items
item.is_a?(RPG::Item) && !item.key_item?
when 1 # Weapons
item.is_a?(RPG::Weapon)
when 2 # Armours
item.is_a?(RPG::Armor)
when 3 # Key Items
item.is_a?(RPG::Item) && item.key_item?
when 4 # All Items
item.is_a?(RPG::Item)
else
item.is_a?(RPG::Item) && item.note.include?("")
end
end
#--------------------------------------------------------------------------
# ● Otherwise weapons and armours are not clickable - hopefully this won't
# have any unforseen consequences.
#--------------------------------------------------------------------------
def enable?(item)
return true
end
end
- Get link
- X
- Other Apps
Comments
Post a Comment