RPG Maker Forums

Author: Napoleon

Some of the features:

- Compatible with my other Window Message Script.

- Free for commercial use.

- Change the skins dynamically while playing.

- Has no method overwrites (so it's a very compatible script)

All other details are inside the script. Has now also been added to the master demo.

Script:

Code:
#sb:window_skin [window_skin]=beginScript:  Window SkinVersion: 1.00Author:  NapoleonAbout:- Easily change the skin of all windows and/or only for specific windows.- Also supports adding your own custom windows to it (advanced users).- Does not embed itself to the update() method of Window_Message  for increased performance.Instructions:- Place below "▼ Materials" but above "▼ Main Process".- Change the 'default'-skin in the settings to change all skins easily.- Don't forget to change the window HUE to 0, 0, 0 through:  [F9] > System tab > Window Color.  Otherwise the windows may get a weird unwanted hue.- To change the window skin create a new script-line and use:  set_skin(skin_name, window_name)- To change the default skin:  set_default_skin(skin_name)- Advanced users: or if you prefer to use a script call instead:  $game_system.window_skins[window_name] = skin_name- Examples:  set_skin('Window2') # Changes all default skins to Window2.png  set_skin('Window2', 'Window_MenuCommand') # Changes only the skin for Window_MenuCommand- To change all skins:  set_all_skins('your_skin_filename')- Adding custom windows to this script:  # Add this line to your initialize (AFTER the super(..) call!):  self.windowskin = $game_system.window_skin_bitmap(self.class)  # Then add a line to the SKINS setting matching your window's class name.Terms of Use:- Attribution 3.0 Unported (CC BY 3.0)  [URL="http://creativecommons.org/licenses/by/3.0/%C2%A0Version"]http://creativecommons.org/licenses/by/3.0/ Version[/URL] History:1.00 (21 August 2014)  - First Release=end#===============================================================================# Settings#===============================================================================module Nap; module Win_Skin  # The default key for when the skins have no key or when the refer to a  # nil-value.  # Only change this one if you are an advanced user!  DEFAULT_KEY = :default   # Note: case sensitive!  # Use nil values to use the default.  # You can also add your own custom windows here. For example:  # 'Napoleons_Window'    => 'Window3',  SKINS = {    DEFAULT_KEY           => 'Window_Desert', # Default skin. The default RPG Maker: 'Window'    'Window_Selectable'   => nil,    'Window_Command'      => nil,    'Window_HorzCommand'  => nil,    'Window_Help'         => nil,    'Window_Gold'         => nil,    'Window_MenuCommand'  => nil,    'Window_MenuStatus'   => nil,    'Window_MenuActor'    => nil,    'Window_ItemCategory' => nil,    'Window_ItemList'     => nil,    'Window_SkillCommand' => nil,    'Window_SkillStatus'  => nil,    'Window_SkillList'    => nil,    'Window_EquipStatus'  => nil,    'Window_EquipCommand' => nil,    'Window_EquipSlot'    => nil,    'Window_EquipItem'    => nil,    'Window_Status'       => nil,    'Window_SaveFile'     => nil,    'Window_ShopCommand'  => nil,    'Window_ShopBuy'      => nil,    'Window_ShopSell'     => nil,    'Window_ShopNumber'   => nil,    'Window_ShopStatus'   => nil,    'Window_NameEdit'     => nil,    'Window_NameInput'    => nil,    'Window_ChoiceList'   => nil,    'Window_NumberInput'  => nil,    'Window_KeyItem'      => nil,    'Window_Message'      => nil, # Show Text Window    'Window_ScrollText'   => nil,    'Window_MapName'      => nil,    'Window_BattleLog'    => nil,    'Window_PartyCommand' => nil,    'Window_ActorCommand' => nil,    'Window_BattleStatus' => nil,    'Window_BattleActor'  => nil,    'Window_BattleEnemy'  => nil,    'Window_BattleSkill'  => nil,    'Window_BattleItem'   => nil,    'Window_TitleCommand' => nil,    'Window_GameEnd'      => nil,    'Window_DebugLeft'    => nil,    'Window_DebugRight'   => nil,  }end; end # module Nap; module Win_Skin#===============================================================================$imported ||= {}$imported[:window_skin] = 1.00#===============================================================================# Window Base#===============================================================================class Window_Base < Window    #-----------------------------------------------------------------------------  # Initialize                                                           [ALIAS]  #-----------------------------------------------------------------------------  alias nap_win_skin_initialize initialize  def initialize(x, y, width, height)    nap_win_skin_initialize(x, y, width, height)    self.windowskin = $game_system.window_skin_bitmap(self.class)  endend#===============================================================================# Window Message# For: Because this window is only initialized once we need to set the skin#      when it is opened.#===============================================================================class Window_Message < Window_Base  alias nap_win_skin_open_and_wait open_and_wait  def open_and_wait        self.windowskin = $game_system.window_skin_bitmap(self.class)    nap_win_skin_open_and_wait  endend#===============================================================================# Game System#===============================================================================class Game_System  attr_accessor :window_skins   alias nap_win_skin_initialize initialize  #-----------------------------------------------------------------------------  # Initialize                                                           [ALIAS]  #-----------------------------------------------------------------------------  def initialize    nap_win_skin_initialize    @window_skins = Nap::Win_Skin::SKINS  end  #-----------------------------------------------------------------------------  # Window Skin Bitmap                                                     [NEW]  # Note: returns the default skin if a non-existing key is selected or if the  #       value is nil.  #-----------------------------------------------------------------------------  def window_skin_bitmap(window_name=Nap::Win_Skin::DEFAULT_KEY)    window_name = window_name.to_s.dup # to_s is required in case self.class is used (it not a string and will fail the comparison)    skin_name = @window_skins[window_name]    window_name = Nap::Win_Skin::DEFAULT_KEY if !skin_name || !@window_skins[window_name.to_s]    Cache.system(@window_skins[window_name])  endend#===============================================================================class Game_Interpreter  #-----------------------------------------------------------------------------  # Set Skin                                                               [NEW]  #-----------------------------------------------------------------------------  def set_skin(skin_name, window_name=Nap::Win_Skin::DEFAULT_KEY)    $game_system.window_skins[window_name] = skin_name  end  #-----------------------------------------------------------------------------  # Set All Skins                                                          [NEW]  #-----------------------------------------------------------------------------  def set_all_skins(new_skin_name)    $game_system.window_skins.keys.each { |k| $game_system.window_skins[k] = skin_name = nil }    set_default_skin(new_skin_name)  end  #-----------------------------------------------------------------------------  # Set Default Skin                                                       [NEW]  #-----------------------------------------------------------------------------  def set_default_skin(new_default_name)    $game_system.window_skins[Nap::Win_Skin::DEFAULT_KEY] = new_default_name  endend#===============================================================================

Latest Threads

Latest Posts

Latest Profile Posts

He mad, but he cute :kaopride:

Our latest feature is an interview with... me?!

People4_2 (Capelet off and on) added!

Just beat the last of us 2 last night and starting jedi: fallen order right now, both use unreal engine & when I say i knew 80% of jedi's buttons right away because they were the same buttons as TLOU2 its ridiculous, even the same narrow hallway crawl and barely-made-it jump they do. Unreal Engine is just big budget RPG Maker the way they make games nearly identical at its core lol.
Can someone recommend some fun story-heavy RPGs to me? Coming up with good gameplay is a nightmare! I was thinking of making some gameplay platforming-based, but that doesn't work well in RPG form*. I also was thinking of removing battles, but that would be too much like OneShot. I don't even know how to make good puzzles!

Forum statistics

Threads
106,035
Messages
1,018,459
Members
137,821
Latest member
Capterson
Top