EkuipSkills XP
#1
EkuipSkills XP
Kiwi & Mango Versions


by Kyonides-Arkanthes

Introduction

These scripts will let you customize your game by providing the ability to learn skills by equipping pieces of heroic equipment. It consists of the main EkuipSkills and the temporary scripts. When I say temporary I mean you should not keep it if your game or demo is ready for distribution!

The temporary script is a parser that will read a file conveniently named Ekuip Skills.txt you must create on your own. Follow the temporary script instructions, they are pretty straightforward!

Go check the Beta Release now!

The Scripts

EkuipSkills Parser Script
Code:
# * EkuipSkills XP - Parser
#   Scripter : Kyonides-Arkanthes
#   2018-10-13

# This TEMPORARY script includes weapons and 8 pieces of armor that might help
# the hero learn specific skills. The additional pieces are optional, but you
# can add more if you wish. Just follow the main EkuipSkills XP script
# instructions carefully and you will succeed for sure.

# Create or Open Ekuip Skills.txt file and type stuff like the following:

#Weapon 1 learns : 1,2
#Armor 1 learns : 3

# You don't need to include the pound # symbol.
# It should end with an empty line!

# Please keep in mind that Shields, Helmets, Body Armors, Accessories are just
# Armors for the maker's database.

# THIS SCRIPT SHOULD BE PLACED ABOVE THE MAIN EkuipSkills XP SCRIPT!!

# Remove it from the script editor before you distribute your game or demo!

def parse_files
 weapons = {}
 armors = {}
 lines = File.readlines('Ekuip Skills.txt')
 lines.size.times do
   line = lines.shift
   ids = line.scan(/\d+/).map!{|d| d.to_i }
   if line[/weapon/i]
     weapons[ids.shift] = ids
   elsif line[/armor/i]
     armors[ids.shift] = ids
   end
 end
  save_data(weapons, 'Data/EkuipSkillsWeapons.rxdata')
  save_data(armors, 'Data/EkuipSkillsArmors.rxdata')
end
parse_files


Main EkuipSkills Script
Code:
# * EkuipSkills XP - Kiwi Version
#   Scripter : Kyonides-Arkanthes
#   2018-10-13

# This script includes weapons and 8 pieces of armor that might help the hero
# learn specific skills. The additional pieces are optional.

# It replaces the Game_Actor equip method, making it incompatible with scripts
# that rely on the original method.

# It adds methods like armor5_id or armor8_id. If you want to add more pieces
# of equipment, create a new method inside Game_Actor by following this example:

# def armor9_id() @armors[8] end

# Just like those I have created already. Place it below my methods and it
# should be fine.

# Also change the ARMOR_SLOT_MAX value accordingly. It is a constant value that
# won't change during gameplay. It should be equal to or greater than 4, guys!!

module EkuipSkills
 ARMOR_SLOT_MAX = 8
 module_function
 def weapons() @weapons end
 def armors() @armors end
 @weapons = load_data('Data/EkuipSkillsWeapons.rxdata')
 @armors = load_data('Data/EkuipSkillsArmors.rxdata')
 @weapons.default = []
 @armors.default = []
end

class Game_Actor
 alias kyon_ekuipskills_gm_actor_setup setup
 def setup(actor_id)
   kyon_ekuipskills_gm_actor_setup(actor_id)
   @armor_slot_max = EkuipSkills::ARMOR_SLOT_MAX
   @armors = [@armor1_id, @armor2_id, @armor3_id, @armor4_id]
   @armors += Array.new(@armor_slot_max - 4, 0)
   learn_equip_skill(:weapon, :all_armors)
 end

 def learn_equip_skill(*equipment)
   equipment.each do |piece|
     case piece
     when 0, :weapon then @skills += EkuipSkills.weapons[@weapon_id]
     when 1..@armor_slot_max
       @skills += EkuipSkills.armors[@armors[piece - 1]]
     when :all_armors
       @armors.each {|aid| @skills += EkuipSkills.armors[aid] }
     end
   end
   @skills = @skills.sort
 end

 def equip(equip_type, id)
   case equip_type
   when 0, :weapon
     if id == 0 or $game_party.weapon_number(id) > 0
       $game_party.gain_weapon(@weapon_id, 1)
       @skills -= EkuipSkills.weapons[@weapon_id]
       @weapon_id = id
       $game_party.lose_weapon(id, 1)
       @skills += EkuipSkills.weapons[@weapon_id]
       @skills = @skills.sort
     end
   when 1..@armor_slot_max
     if id == 0 or $game_party.armor_number(id) > 0
       armor_index = equip_type - 1
       armor_id = @armors[armor_index]
       update_auto_state($data_armors[armor_id], $data_armors[id])
       $game_party.gain_armor(armor_id, 1)
       @skills -= EkuipSkills.armors[armor_id]
       $game_party.lose_armor(id, 1)
       @armors[armor_index] = id
       @skills += EkuipSkills.armors[id]
       @skills = @skills.sort
     end
   end
 end
 def armors_list() @armors end
 def armor1_id() @armors[0] end
 def armor2_id() @armors[1] end
 def armor3_id() @armors[2] end
 def armor4_id() @armors[3] end
 def armor5_id() @armors[4] end
 def armor6_id() @armors[5] end
 def armor7_id() @armors[6] end
 def armor8_id() @armors[7] end
end

Download Section - Mango Version Only!

Terms & Conditions

Free for non commercial games, you should include my nickname in your game credits!
"For God has not destined us for wrath, but for obtaining salvation through our Lord Jesus Christ," 1 Thessalonians 5:9

Maranatha!

The Internet might be either your friend or enemy. It just depends on whether or not she has a bad hair day.

[Image: SP1-Scripter.png]
[Image: SP1-Writer.png]
[Image: SP1-Poet.png]
[Image: SP1-PixelArtist.png]
[Image: SP1-Reporter.png]

My Original Stories (available in English and Spanish)

List of Compiled Binary Executables I have published...
HiddenChest & Roole

Give me a free copy of your completed game if you include at least 3 of my scripts! Laughing + Tongue sticking out

Just some scripts I've already published on the board...
KyoGemBoost XP VX & ACE, RandomEnkounters XP, KSkillShop XP, Kolloseum States XP, KEvents XP, KScenario XP & Gosu, KyoPrizeShop XP Mangostan, Kuests XP, KyoDiscounts XP VX, ACE & MV, KChest XP VX & ACE 2016, KTelePort XP, KSkillMax XP & VX & ACE, Gem Roulette XP VX & VX Ace, KRespawnPoint XP, VX & VX Ace, GiveAway XP VX & ACE, Klearance XP VX & ACE, KUnits XP VX, ACE & Gosu 2017, KLevel XP, KRumors XP & ACE, KMonsterPals XP VX & ACE, KStatsRefill XP VX & ACE, KLotto XP VX & ACE, KItemDesc XP & VX, KPocket XP & VX, OpenChest XP VX & ACE
Reply }


Messages In This Thread
EkuipSkills XP - by kyonides - 10-13-2018, 07:28 AM
RE: EkuipSkills XP - by kyonides - 10-14-2018, 05:42 AM
RE: EkuipSkills XP - by Mel - 10-14-2018, 01:19 PM
RE: EkuipSkills XP - by kyonides - 10-14-2018, 07:34 PM
RE: EkuipSkills XP - by Mel - 10-14-2018, 08:22 PM
RE: EkuipSkills XP - by kyonides - 10-15-2018, 03:35 AM
RE: EkuipSkills XP - by kyonides - 10-15-2018, 07:24 AM



Users browsing this thread: 1 Guest(s)