Command Color VX + ACE
#1
Command Color VX + ACE

by Kyonides

Did you ever want to change your command window's currently selected command a little bit? Thinking
Now you can do it! Shocked
This scriptlet lets you alter its color! Painter

Just configure the SELECT_COLOR constant accordingly and that's it! Two Thumbs Up! 

VX Script
Code:
# * Command Color VX * #
#   Scripter : Kyonides
#   v0.5.0 - 2025-06-15

# The SELECT_COLOR Constant lets you configure your custom color following
# the usual (R,G,B) or (R,G,B,A) color format.

class Window_Command
  SELECT_COLOR = Color.new(255, 255, 0)
  DISABLED_ALPHA = 100
  alias :kyon_cmd_clr_win_comm_init :initialize
  alias :kyon_cmd_clr_win_comm_set_index :index=
  alias :kyon_cmd_clr_win_comm_draw_item :draw_item
  alias :kyon_cmd_clr_win_comm_up :update
  def initialize(width, commands)
    @disabled = []
    @last_pos = -1
    kyon_cmd_clr_win_comm_init(width, commands)
  end

  def disable_item(index)
    @disabled << index
    @disabled = @disabled.sort.uniq
  end

  def draw_item(index, enabled = true)
    disable_item(index) unless enabled
    kyon_cmd_clr_win_comm_draw_item(index, enabled)
  end

  def draw_item_color(n, current)
    rect = item_rect(n)
    rect.x += 4
    rect.width -= 8
    b = self.contents
    b.clear_rect(rect)
    new_color = current ? SELECT_COLOR.dup : normal_color.dup
    new_color.alpha = DISABLED_ALPHA if @disabled.include?(n)
    b.font.color = new_color
    b.draw_text(rect, @commands[n])
  end

  def index=(new_index)
    return if @index == new_index
    if @index >= 0
      draw_item_color(@index, nil)
      @last_pos = @index
    end
    kyon_cmd_clr_win_comm_set_index(new_index)
    draw_item_color(@index, true)
  end

  def update_command
    return if @last_pos == @index
    draw_item_color(@last_pos, nil) if @last_pos >= 0
    draw_item_color(@index, true)
    @last_pos = @index
  end

  def update
    kyon_cmd_clr_win_comm_up
    update_command
  end
end

VX ACE Script
Code:
# * Command Color ACE * #
#   Scripter : Kyonides
#   v0.5.0 - 2025-06-15

# The SELECT_COLOR Constant lets you configure your custom color following
# the usual (R,G,B) or (R,G,B,A) color format.

class Window_Command
  SELECT_COLOR = Color.new(255, 255, 0)
  def draw_new_item(index)
    change_color(SELECT_COLOR, command_enabled?(index))
    draw_text(item_rect_for_text(index), command_name(index), alignment)
  end

  def clear_old_item(n)
    return if @index == n
    clear_item(@index)
    draw_item(@index)
  end

  def select(n)
    clear_old_item(n)
    self.index = n if n
    draw_new_item(@index) if @index == n
  end
end

Terms & Use

Free as in Beer beer.
Crediting me as the author is optional. Winking
That's it! Tongue sticking out
"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


Possibly Related Threads…
Thread Author Replies Views Last Post
   Victor Engine - Item Command Victor Sant 0 5,217 08-05-2012, 10:36 PM
Last Post: Victor Sant
   Victor Engine - Direct Command Victor Sant 0 5,687 08-05-2012, 01:44 AM
Last Post: Victor Sant
   Skip Party Command Window Helladen 0 5,670 07-27-2012, 06:43 AM
Last Post: Helladen



Users browsing this thread: 1 Guest(s)