Map Tiles Hue Colour Change

MeowFace

Meow
Veteran
Joined
Feb 22, 2015
Messages
1,034
Reaction score
184
First Language
Meowish
Primarily Uses
Made for a request here.

This script allow the hue of the map tiles on the fly simply by changing the value of a game variable.



Features:

[1] Change Map Tile's hue colour

[2] Controllable by game variable

[3] Add-on script for character hue.

How to Use:

[1] Paste the script below Material and above Main in your script editor.

[2] Change the VARIABLE number in the script to variable you wish to use in game.

[3] Set the value of the variable in game to change the hue color (0~255, 0 = normal)

For those who wish to have character hue with the map.

All you need is paste the add-on script below the Map Hue script in the editor.

Compatibility:

This script uses overwrite methods but it retained the original methods fully.

Put this script above all other custom scripts to avoid conflicts.

Terms of Use:

Free for both Commercial and Non-commercial usage.

Script:

#==============================================================================# ■ Meow Face Tile Hue#------------------------------------------------------------------------------# Chage the hue of tiles using a game variable#==============================================================================# How to Use:# [1] Put this script below Material and above Main# [2] Change the VARIABLE number to game variable you wish to use# [3] Change the value of the variable in game to set the hue (0-255, 0 = normal)#==============================================================================module MEOWTILEHUE #Do Not Remove!#==============================================================================# SETTINGS AREA#==============================================================================  VARIABLE = 1 #The game variable you wish to use#==============================================================================# END OF SETTINGS AREA# !!EDIT BEYOND THIS LINE AT YOUR OWN RISK!!#==============================================================================endmodule Cache  def self.tileset(filename, hue = 0)    load_bitmap("Graphics/Tilesets/", filename, hue)  endendclass Spriteset_Map  alias meow_sprite_map initialize  def initialize    meow_sprite_map    @meowhue = 0  end  def load_tileset    @tileset = $game_map.tileset    @meowhue = $game_variables[MEOWTILEHUE::VARIABLE]    @tileset.tileset_names.each_with_index do |name, i|      @tilemap.bitmaps = Cache.tileset(name,@meowhue)    end    @tilemap.flags = @tileset.flags  end  def update_tileset    if @tileset != $game_map.tileset || @meowhue != $game_variables[MEOWTILEHUE::VARIABLE]      load_tileset      refresh_characters    end  endend





ADD-ON SCRIPT FOR CHARACTER HUE:





Add-On Script:

#==============================================================================# ■ Meow Face Tile Hue (ADD ON for Character Hue)#------------------------------------------------------------------------------# Chage the hue of characters along with tiles#==============================================================================# Required:# Meow Face Tile Hue Script# How to Use:# [1] Put this script below Meow Face Tile Hue Script#==============================================================================module Cache  def self.character(filename, hue = 0)    load_bitmap("Graphics/Characters/", filename, hue)  endendclass Sprite_Character < Sprite_Base  def initialize(viewport, character = nil)    super(viewport)    @character = character    @balloon_duration = 0    @meowcharhue = 0    update  end  def set_character_bitmap    @meowcharhue = $game_variables[MEOWTILEHUE::VARIABLE]    self.bitmap = Cache.character(@character_name, @meowcharhue)    sign = @character_name[/^[\!\$]./]    if sign && sign.include?('$')      @cw = bitmap.width / 3      @ch = bitmap.height / 4    else      @cw = bitmap.width / 12      @ch = bitmap.height / 8    end    self.ox = @cw / 2    self.oy = @ch  end  def update_bitmap    if graphic_changed? || @meowcharhue != $game_variables[MEOWTILEHUE::VARIABLE]      @tile_id = @character.tile_id      @character_name = @character.character_name      @character_index = @character.character_index      if @tile_id > 0        set_tile_bitmap      else        set_character_bitmap      end    end  endend


Update:

21-10-2015 Added add-on for character hue
 
Last edited by a moderator:

goldenroy

Warper
Member
Joined
May 25, 2014
Messages
3
Reaction score
0
First Language
German
Primarily Uses
Thanks a bunch for doing this. :)
 

MeowFace

Meow
Veteran
Joined
Feb 22, 2015
Messages
1,034
Reaction score
184
First Language
Meowish
Primarily Uses
You're welcome!
 

Oddball

Veteran
Veteran
Joined
Sep 4, 2014
Messages
1,923
Reaction score
535
First Language
English
Primarily Uses
N/A
Seems like a good script to add mood to a creepy scene/area. Or affect the mood in other ways
 

MeowFace

Meow
Veteran
Joined
Feb 22, 2015
Messages
1,034
Reaction score
184
First Language
Meowish
Primarily Uses
Seems like a good script to add mood to a creepy scene/area. Or affect the mood in other ways
Thanks.

This can actually act as a map count saving solution too(for maze/puzzle map), 1 map (unlimited hue of colour).

Have your transfer area set up with a counter variable, and have the player repeat the same map over and over again with different hue colour until the counter reached X. Then do a real transfer to next area. :p Pair that with a random dungeon generator and you can have 99 floors in just 1 map all different colour. ;)
 
Last edited by a moderator:

Oddball

Veteran
Veteran
Joined
Sep 4, 2014
Messages
1,923
Reaction score
535
First Language
English
Primarily Uses
N/A
This might help with the lost woods portions of my game to let the player know there on the right track. Not just with eventing bushes, trees, ect...
 

MeowFace

Meow
Veteran
Joined
Feb 22, 2015
Messages
1,034
Reaction score
184
First Language
Meowish
Primarily Uses
This might help with the lost woods portions of my game to let the player know there on the right track. Not just with eventing bushes, trees, ect...
Since this is hue, unlike tint, it can work in rainbow colour. So, yes, a complex map puzzle based on hue colour can be done. ;)

And you can still use tint above the hue too, so do whatever chaos mess you like with the colours. Imaginations the limit! :p
 

tale

Volunteer
Veteran
Joined
Dec 16, 2016
Messages
711
Reaction score
1,196
First Language
English
Primarily Uses
N/A
Fixed script format, credit Meow Face.
tile_hue.png
Code:
#==============================================================================
# ■ Meow Face Tile Hue
#------------------------------------------------------------------------------
# Chage the hue of tiles using a game variable
#==============================================================================
# How to Use:
# [1] Put this script below Material and above Main
# [2] Change the VARIABLE number to game variable you wish to use
# [3] Change the value of the variable in game to set the hue (0-255, 0 = normal)
#==============================================================================
module MEOWTILEHUE #Do Not Remove!
#==============================================================================
# SETTINGS AREA
#==============================================================================
  VARIABLE = 1 #The game variable you wish to use
#==============================================================================
# END OF SETTINGS AREA
# !!EDIT BEYOND THIS LINE AT YOUR OWN RISK!!
#==============================================================================
end
module Cache
  def self.tileset(filename, hue = 0)
    load_bitmap("Graphics/Tilesets/", filename, hue)
  end
end
class Spriteset_Map
  alias meow_sprite_map initialize
  def initialize
    meow_sprite_map
    @meowhue = 0
  end
  def load_tileset
    @tileset = $game_map.tileset
    @meowhue = $game_variables[MEOWTILEHUE::VARIABLE]
    @tileset.tileset_names.each_with_index do |name, i|
      @tilemap.bitmaps[i] = Cache.tileset(name,@meowhue)
    end
    @tilemap.flags = @tileset.flags
  end
  def update_tileset
    if @tileset != $game_map.tileset || @meowhue != $game_variables[MEOWTILEHUE::VARIABLE]
      load_tileset
      refresh_characters
    end

  end
end
Add-On Script:
charhue.png
Code:
#==============================================================================
# ■ Meow Face Tile Hue (ADD ON for Character Hue)
#------------------------------------------------------------------------------
# Chage the hue of characters along with tiles
#==============================================================================
# Required:
# Meow Face Tile Hue Script
# How to Use:
# [1] Put this script below Meow Face Tile Hue Script
#==============================================================================
module Cache
  def self.character(filename, hue = 0)
    load_bitmap("Graphics/Characters/", filename, hue)
  end
end
class Sprite_Character < Sprite_Base
  def initialize(viewport, character = nil)
    super(viewport)
    @character = character
    @balloon_duration = 0
    @meowcharhue = 0
    update
  end
  def set_character_bitmap
    @meowcharhue = $game_variables[MEOWTILEHUE::VARIABLE]
    self.bitmap = Cache.character(@character_name, @meowcharhue)
    sign = @character_name[/^[\!\$]./]
    if sign && sign.include?('$')
      @cw = bitmap.width / 3
      @ch = bitmap.height / 4
    else
      @cw = bitmap.width / 12
      @ch = bitmap.height / 8
    end
    self.ox = @cw / 2
    self.oy = @ch
  end
  def update_bitmap
    if graphic_changed? || @meowcharhue != $game_variables[MEOWTILEHUE::VARIABLE]
      @tile_id = @character.tile_id
      @character_name = @character.character_name
      @character_index = @character.character_index
      if @tile_id > 0
        set_tile_bitmap
      else
        set_character_bitmap
      end
    end
  end
end
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

"You can thank my later", "But you haven't done anything", "Well, that's why ..."
Are we allowed to post about non-RPG Maker games?
I should realize that error was produced by a outdated version of MZ so that's why it pop up like that
Ami
i can't wait to drink some ice after struggling with my illness in 9 days. 9 days is really bad for me,i can't focus with my shop and even can't do something with my project
How many hours have you got in mz so far?

Forum statistics

Threads
105,884
Messages
1,017,242
Members
137,609
Latest member
shododdydoddy
Top