KActorSkill XP Menu Script
I can't say it's ready for deployment but you can get a picture of how it would look like when finished.
You may report issues or make minor feature requests.
Code:
# * KActorSkill XP Menu
# Scripter : Kyonides Arkanthes
# 2020-06-04
# $scene = KActorSkillMenu.new(ActorIndex)
# ActorIndex's default value: 0 (Aluxes)
# (ActorIndex) can be omitted if you start with the team leader.
module KActorSkill
PLACE_GOLD_SYMBOL = :first
ACTOR_NAME_AS_TITLE = true
PENDING_SKILLS_LABEL = "%s's Pending Skills"
SKILL_NAME_LABEL = "Learn %s"
NO_LEARNING = "No skill found!"
end
class KActorSkillWindow < Window_Selectable
def initialize
super(0, 64, 320, 192)
self.contents = Bitmap.new(width - 32, height - 32)
end
def list=(new_list)
@list = new_list
refresh
end
def refresh
contents.clear
if @list.empty?
contents.draw_text(0, 0, width - 32, 28, KActorSkill::NO_LEARNING, 1)
return
end
@label = KActorSkill::SKILL_NAME_LABEL
@symbol_first = KActorSkill::PLACE_GOLD_SYMBOL == :first
@symbol = $data_system.words.gold
ly = 0
@ids = @list.keys.sort
@ids.each do |sid|
draw_skill(sid)
ly += 28
end
end
def draw_skill(sid)
skill = $data_skills[sid]
name = sprintf(@label, skill.name)
skill = @list[sid]
lvl = "LVL " + skill.level.to_s
gold = skill.gold.to_s
gold = @symbol_first ? @symbol + gold : gold + @symbol
item = $data_items[skill.item].name
total = "#{$game_party.item_number(skill.item)}/#{skill.total}"
contents.draw_text(0, ly, width - 32, 28, name)
contents.draw_text(120, ly, 160, 28, lvl)
contents.draw_text(0, ly + 24, 160, 28, gold)
contents.draw_text(120, ly + 24, width - 152, 28, item)
contents.draw_text(240, ly + 24, width - 272, 28, total)
end
attr_reader :ids
end
class KActorSkillMenu
def initialize(pos=0) @index = pos end
def main
@name_only = KActorSkill::ACTOR_NAME_AS_TITLE
@title = KActorSkill::PENDING_SKILLS_LABEL
@actors = $game_party.actors
@name_window = Window_Help.new
@skill_window = KActorSkillWindow.new
update_actor_data
Graphics.transition
loop do
Graphics.update
Input.update
update
break if $scene != self
end
Graphics.freeze
@skill_window.dispose
end
def update
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
return $scene = Scene_Map.new
elsif Input.trigger?(Input::C)
$game_system.se_play($data_system.decision_se)
elsif Input.trigger?(Input::L)
$game_system.se_play($data_system.cursor_se)
@index = (@index - 1) % @actors.size
update_actor_data
return
elsif Input.trigger?(Input::R)
$game_system.se_play($data_system.cursor_se)
@index = (@index + 1) % @actors.size
update_actor_data
end
end
def update_actor_data
actor = @actors[@index]
label = @name_only ? actor.name : sprintf(@title, actor.name)
@name_window.set_text(label, 1)
@skill_window.list = actor.learnings
end
end
The terms and conditions are the same as those found on the first post.
"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.
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!
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
Maranatha!
The Internet might be either your friend or enemy. It just depends on whether or not she has a bad hair day.
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!
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