Actors' Custom Windowskins XP
#1
Actors' Custom Windowskins
XP

by Kyonides

Introduction

[Image: think.gif] Do you need to change the look of all of your windows based on who's the current [Image: deedlit.gif] party leader?
Then you definitely have to use this scriptlet for sure! [Image: wink.gif]

Setup
  • This scriptlet should be placed among the very first scripts in the invisible custom script section below Scene_Debug.
  • Go to the WinSkin module and add a new line per actor's ID like this:

Code:
Code:
SKINS[2] = "My Skin 2"

If you forgot to add a custom windowskin for a given actor, it will use VX's or ACE's skin by default.

The Script

Code:
# * Actors' Custom Windowskins XP * #
#   Scripter : Kyonides
#   2025-04-15

# All Windowskins Need to be Placed in the Graphics/Windowskins directory!

module WinSkin
  SKINS = {} # <<== Leave it Alone!
  # Default Windowskin or Skin for Unlisted Actors
  SKINS.default = "Window"
  # Custom Windowskins
  SKINS[1] = "My Skin 1"
  SKINS[2] = "My Skin 2"
end

class Game_System
  attr_accessor :start_game
end

class Game_Party
  alias :kyon_skin_gm_pty_init :initialize
  def initialize
    kyon_skin_gm_pty_init
    $game_system.start_game = true
  end

  def leader_id
    @actors[0].id
  end
end

class Window_Base
  alias :kyon_skin_win_bs_up :update
  def initialize(x, y, width, height)
    super()
    update_windowskin
    place(x, y, width, height)
    reset_z
  end

  def place(x, y, w, h)
    self.x = x
    self.y = y
    self.width = w
    self.height = h
  end

  def reset_z
    self.z = 100
  end

  def update
    super
    update_windowskin
  end

  def update_windowskin
    if $game_system.start_game
      set_custom_windowskin
    else
      set_default_windowskin
    end
  end

  def set_custom_windowskin
    return if $game_party.leader_id == @actor_id
    @actor_id = $game_party.leader_id
    @windowskin_name = WinSkin::SKINS[@actor_id]
    $game_system.windowskin_name = @windowskin_name
    self.windowskin = RPG::Cache.windowskin(@windowskin_name)
  end

  def set_default_windowskin
    return if $game_system.windowskin_name == @windowskin_name
    @windowskin_name = $game_system.windowskin_name
    self.windowskin = RPG::Cache.windowskin(@windowskin_name)
  end
end

Terms & Conditions

Free as in [Image: beer.gif] beer.
Include me in your game credits.
That's it! [Image: tongue.gif]
"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
#2
Maintenance Update

This release includes a mandatory Bug bug fix that will prevent your game from crashing because of the very first menu not being able to properly calculate the width or height of that first window. No further changes were needed this time.
"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
   WindowSkins XP kyonides 0 506 11-15-2024, 08:14 AM
Last Post: kyonides
   ACBS - Atoa Custom Battle System 3.2 Victor Sant 150 277,951 03-02-2019, 04:47 AM
Last Post: dragonprincess44
   Saving Temporary Actors' Data kyonides 1 5,426 09-07-2018, 06:40 AM
Last Post: kyonides
   Draining Skills! / Compatible with ABSes and custom non-active BSes / No SDK required DrHouse93 0 5,278 06-24-2016, 11:43 AM
Last Post: DrHouse93
   Final Fantasy X-2 Custom Menu System catchm 5 15,754 06-16-2010, 08:00 PM
Last Post: Mzale
  Nickname - Custom Name Menu 0 4,625 01-22-2010, 08:34 AM
Last Post:
   L's Custom Menu Scenes Landarma 1 7,508 03-14-2009, 07:00 AM
Last Post: Landarma
   Custom EXP Curve and Editor FireStalker5 0 5,948 03-07-2008, 05:56 AM
Last Post: FireStalker5
   Custom Commands Dargor 0 5,289 03-07-2008, 04:27 AM
Last Post: Dargor
   Custom Skill Effects Lowell 0 5,469 03-06-2008, 06:16 AM
Last Post: Lowell



Users browsing this thread: 1 Guest(s)