Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Jragyn

21
Like the name of the switch entails on line 30 of the script I posted,
the ONOFF_SWITCH must be ON if you want the HUD to be visible,
and OFF if you want the HUD to not be visible, ie: for cutscenes and whatever else you want.

Incase you have issues with this, this can be accomplished by setting the default switch (I labeled it 10) to ON/OFF with the event command on page 1 of event creation.

If you have further questions as to how this edit works, please address them to ForeverZer0.
He is a genius, you know.
22
Hunger_HUD Edit

Just needed a way to control the visibility of the HUD, right?
Well, now its definable by a switch.
The switch to be defined is at the bottom of the rest of the configuration.

All you need to do is copy-pasta this edit over your previous HUD, and set it accordingly.


--Jragyn
23
Active Count Battle 2
Authors: KGC
Version: 3
Type: Active Time Battle
Key Term: Custom Battle System



Introduction

This is a ATB-based Battle System written by KGC.
It replaces the entire Default Battle System.

The original script in japanese can be found here:
KGC ACB2


Features


  • Turns are taken in real/count time.

  • Seemingly quite compatible with a lot of other scripts.

  • etc.




Screenshots
Nothing terribley exciting, would be best to just download and give it a whirl.
Spoiler: ShowHide



Demo

Demo via myMediafire.
The demo has TONs 7.5 and my EQUAP bars,
but by no means does this CBS require them.
It just functions with them :)

I do encourage you download the demo, since it comes with default graphic files you need.


Script

The script is too large to paste in here.
It just has to go between Scene_Debug & Main somewhere.
Download the demo so you can have the default graphic files, though.



Instructions

There are details as to configuration all within the script.
Make sure you have the default graphic files, or your own files for graphics!


Compatibility

Probably won't function with other CBSs.
General compatibility with things that don't mess with the Battle system.
If you find something that absolutely will not work,
I'll post the incompatibilities here.

It IS however totally compatible with all the other KGC scripts.


Credits and Thanks


  • KGC: You guy(s) make awesome scripts. Too bad none of them for RMXP are in english!

  • Jragyn: I didn't make it whatsoever, but I did english-ify the configuration :)




Author's Notes

One more time, I did NOT write this script.
I just translated the configuration into english from its original in japanese.
24
RMXP Script Database / Re: [XP] J::Battle BOOST!
May 28, 2011, 01:39:03 pm
Fixed :3
25
RMXP Script Database / Re: [XP] J::EQUAP bars!
May 28, 2011, 11:29:25 am
Thanks Blizzard.
Fixed it :P
26
RMXP Script Database / [XP] J::Battle BOOST!
May 28, 2011, 01:43:15 am
J::Battle BOOST!
Authors: Unknown
Version: 1
Type: Battle Speed Enhancer
Key Term: Battle Add-on



Introduction

Its not even really a script as much as an altered definition.
But hot-damn, it MAKES THE DIFFERENCE.


Features


  • DRASTICALLY speeds up all battles.

  • etc.




Screenshots

You cannot screenshot speed.



Demo

No, I will not make a demo.
This is really just... plug and play.


Script

Spoiler: ShowHide
=begin
____________________________
| J::Battle BOOST!           |
| Author: Unknown            |
|____________________________|

 A ridiculously useful little altered definition that DRASTICALLY
 increases the battle speed.
 
 Its hard to explain, you should just give it a go and see what I mean.
 
 All you need to know is that the higher the number, the faster it goes.
 To a limit, of course.
   
=end


class RPG::Sprite
 def effect?
   @_whiten_duration > 16 ||     # 0 - 16
   @_appear_duration > 16 ||     # 0 - 16
   @_escape_duration > 32 ||     # 0 - 32
   @_collapse_duration > 12 ||   # 0 - 48
   @_damage_duration > 40 ||     # 0 - 40
   @_animation_duration > 200    # 0 - 200
 end
end



Instructions

This is totally plug and play.
Just copy-pasta into your script editor and it should do the job.
You can adjust the numbers if you want...
but I set them up for you, so you don't really need to. :)


Compatibility

I can't think of any issues I've ran into.
This essentially functions with any battle system that utilizes Scene_Battle.
(ie: doesn't work with BlizzABS because that uses Map_Battler or whatever)


Credits and Thanks


  • Unknown




Author's Notes

I did not actually write this scriptlet thingy, but the japanese site I found it on went down some time ago. :(
Its a sad day, they had a lot of other scripts I wish I grabbed so I could share here...
Though I have a few more :)
27
RMXP Script Database / [XP] J::EQUAP bars!
May 28, 2011, 01:13:45 am
J::EQUAP bars!
Authors: Jragyn
Version: 1
Type: TONs Plug-in
Key Term: Misc Add-on



Introduction

This script is just another visual representation of Blizzard's EQUAP system, but instead of AP/MAXap, it also uses bars.
The Blizzart Bars, mind you.


Features


  • Enables Bars to be used for Learnable EQUAP skills.

  • Can give a unique $game_system.bar_style to just the EQUAP bars.

  • Can change the coloring of just the EQUAP bars.

  • etc.




Screenshots

Spoiler: ShowHide



Demo

There doesn't need to be a demo for this.
Though I will make one of someone asks for it...(seriously I mean)


Script

Pastebin Link or:
Spoiler: ShowHide

=begin
____________________________
| J::EQUAP bars!             |
| Author: Jragyn             |
|____________________________|

 This script is more like a plug-in for the EQUAP system.
 It displays a bar that measures the AP vs. MAXap for any given skill.
 
 Of course...
 This script does require TONs to work.
 And the Blizzart BARS to be enabled.
 And the EQUAP System to be enabled and setup.
 

Credit to ForeverZer0 for being a Ruby Reference Bible for dummies :)

=end


#v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^
#::Aliased/Overwrite  [Window_Skill] ----- draw_item
#v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^v^

#========================#
# Set the wordage for a  #
# learned skill here:    #
module J                 #
 LEARNT = '-Master-'    #
#=======================================#
# Use a new color scheme                #
# for the EQUAP bars?                   #
 NEW_SCHEME = true                     #
# only need to set if NEW_SCHEME = true #
 SCHEME_1 = Color.new( 96, 96, 96,192) # (just a darkish grey)
 SCHEME_2 = Color.new(192,192,192,192) # (just a lighter grey)
#=======================================#
# Use a different $bar_style            #
# for the EQUAP bars?                   #
 NEW_BARS = true                       #
# only need to set if NEW_BARS = true   #
 J_STYLE = 2 # ( 0~6 )                 #
#=======================================#
end #
#===#

class Window_Skill
 alias j_draw_item_equap_bar draw_item
 def draw_item(index, w=148)

#checks to verify both Blizzart BARS and EQUAP are enabled.
if $game_system.BARS && TONS_OF_ADDONS::EQUAP_SKILLS

   skill = @data[index]    
   if @actor.skill_can_use?(skill.id)
     self.contents.font.color = normal_color
   else
     self.contents.font.color = disabled_color
   end
   
   rate = 0
   if BlizzCFG.maxap(skill.id) > 0
     rate = @actor.ap(skill.id).to_f / BlizzCFG.maxap(skill.id)
   end#if
 #uses set colors in J::~~ if set to true, otherwise uses defaults.  
 if J::NEW_SCHEME
   color1 = J::SCHEME_1
   color2 = J::SCHEME_2
 else
   
 #color determination, based on Blizzard's draw_hp_bar(whatever) colorscheme.
     if rate > 0.6
       color1 = Color.new(80 - 150 * (rate-0.6), 80, 50 * (rate-0.6), 192)
       color2 = Color.new(240 - 450 * (rate-0.6), 240, 150 * (rate-0.6), 192)
     elsif rate > 0.2 && rate <= 0.6
       color1 = Color.new(80, 200 * (rate-0.2), 0, 192)
       color2 = Color.new(240, 600 * (rate-0.2), 0, 192)
     elsif rate <= 0.2
       color1 = Color.new(400 * rate, 0, 0, 192)
       color2 = Color.new(240, 0, 0, 192)
     end#if
 end#ifJscheme
     color3 = Color.new(0, 80, 0, 192)
     
   x = 4 + index % 2 * (288 + 32)
   y = index / 2 * 32
   rect = Rect.new(x, y, self.width / @column_max - 32, 32)
   self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
   bitmap = RPG::Cache.icon(skill.icon_name)
   opacity = self.contents.font.color == normal_color ? 255 : 128
   self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
#===============================================================================
# The deciding part as to whether or not to draw the bars and/or ap_infos.    
     if BlizzCFG.maxap(skill.id) > 0 && @actor.ap(skill.id) == BlizzCFG.maxap(skill.id)
       self.contents.draw_text(x + 180, y, 60, 32, J::LEARNT, 2)
     elsif BlizzCFG.maxap(skill.id) > 0
       ap_info = "[#{@actor.ap(skill.id)}/#{BlizzCFG.maxap(skill.id)}]"
         if J::NEW_BARS
           original_style = $game_system.bar_style
           J::J_STYLE > 6 ? $game_system.bar_style = 2 : $game_system.bar_style = J::J_STYLE
           self.contents.gradient_bar(x+24, y, w, color1, color2, color3, rate)
           $game_system.bar_style = original_style
         else
           self.contents.gradient_bar(x+24, y, w, color1, color2, color3, rate)
         end#if_newbars
       self.contents.draw_text(x+180, y, 64, 32, ap_info, 0)
     end#if
#===============================================================================      
     self.contents.draw_text(x + 28, y, 204, 32, skill.name, 0)
   self.contents.draw_text(x + 232, y, 48, 32, skill.sp_cost.to_s, 2)
 else
   j_draw_item_equap_bar(index)
 end#bars&equap
end#def

end#class



Instructions

As long as you have both Blizzart BARS (within TONs) enabled, and EQUAP enabled,
this script will function completely fine on its own. Though there are a couple extra little
aesthetics you can play with if you like.


Compatibility

May not work if you have a custom Window_Skill.


Credits and Thanks


  • Jragyn: I made it!

  • ForeverZer0: for allowing me to reference him like a Ruby Bible (or something like that XD )




Author's Notes

I can't really think of anything else I should stack on or add to this,
but if you think of something I need to know about this,
or have a recommendation/request, please let me know :)
28
Its the version I modified for myself adding in my edits of:
J::BUY/SELL via variables!

But here, go ahead and use it if you like.
(Read the topic above for more information about it, if you can't figure it out yourself)

Spoiler: ShowHide
#===============================================================================
#  Leon's Shopping System, Modified by Jragyn!
#===============================================================================
# This shopping system has been modified to recieve variable multipliers
# against prices. Used for raising or decreasing shop prices at any
# point in the game.
module J
# The number after buy/sell rate is the variable it corresponds to.

  BUY_RATE  = 26  #This variable is typically set to 100, representing 100% buy rate.
  SELL_RATE = 27  #This variable is typically set to 50, representing half price selling.

  DIVISOR   = 100 #A global price modifier. 100 = 1x, 50 = 2x, 200 = 0.5x pricing.
end
#===============================================================================
class Scene_Title
  alias new_game_buy_sell command_new_game
  def command_new_game
    new_game_buy_sell
#==============================================#
# These are the default prices that            #
# are setup upon a new game.                   #
#==============================================#
    $game_variables[J::BUY]  = 100             #
    $game_variables[J::SELL] = 50              #
#==============================================#
  end
end
#===============================================================================

#===============================================================================
#  Window_Shop_Info
#===============================================================================
class Window_Shop_Info < Window_Base
  def initialize
    super(160, 0, 480, 64)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $defaultfonttype
    self.contents.font.size = $defaultfontsize
    refresh
  end
 
  def refresh(selection = 0)
    self.contents.clear
    if selection == 0
      self.contents.draw_text(0, 0, 448, 32, "Buy, sell, or leave?", 1)
    else
      self.contents.draw_text(0, 0, 448, 32, "Press 'SHIFT' for compatabilitiy.", 1)
    end
  end
end
#===============================================================================
#  END Window_Shop_Info
#===============================================================================


#===============================================================================
#  Window_Shop_Option
#===============================================================================
class Window_Shop_Option < Window_Selectable
  def initialize
    super(0, 0, 160, 128)
    @option = ["Buy", "Sell", "Leave"]
    @item_max = @option.size
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $defaultfonttype
    self.contents.font.size = $defaultfontsize
    self.index = 0
    self.active = true
    refresh
  end
 
  def refresh
    self.contents.clear
    for i in 0...@option.size
      y = i * 32
      self.contents.draw_text(0, y, 128, 32, @option[i], 1)
    end
  end
end
#===============================================================================
#  END Window_Shop_Option
#===============================================================================


#===============================================================================
#  Window_Shop_Gold
#===============================================================================
class Window_Shop_Gold < Window_Base
  def initialize
    super(0, 128, 160, 64)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $defaultfonttype
    self.contents.font.size = $defaultfontsize
    refresh
  end
 
  def refresh
    self.contents.clear
    self.contents.font.color = system_color
    self.contents.draw_text(0, 0, 60, 32, $data_system.words.gold + ":")
    self.contents.font.color = normal_color
    self.contents.draw_text(0, 0, 128, 32, $game_party.gold.to_s, 2)
  end
end
#===============================================================================
#  END Window_Shop_Gold
#===============================================================================


#===============================================================================
#  Window_Shop_Own
#===============================================================================
class Window_Shop_Own < Window_Base
  def initialize
    super(0, 192, 160, 64)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $defaultfonttype
    self.contents.font.size = $defaultfontsize
    item = nil
    refresh(item)
  end
 
  def refresh(item)
    self.contents.clear
    self.contents.font.color = system_color
    self.contents.draw_text(0, 0, 48, 32, "Own:")
    if item == nil
      return
    end
    self.contents.font.color = normal_color
    case item
    when RPG::Item
      number = $game_party.item_number(item.id)
    when RPG::Weapon
      number = $game_party.weapon_number(item.id)
    when RPG::Armor
      number = $game_party.armor_number(item.id)
    end
    self.contents.draw_text(0, 0, 128, 32, number.to_s, 2)
  end
end
#===============================================================================
#  END Window_Shop_Own
#===============================================================================


#===============================================================================
#  Window_Shop_List
#===============================================================================
class Window_Shop_List < Window_Selectable
  def initialize(shop_goods)
    super(160, 64, 480, 192)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $defaultfonttype
    self.contents.font.size = $defaultfontsize
    self.active = false
    self.index = 0
    self.visible = false
    @shop_goods = shop_goods
    @sell = false
  end
 
  def item
    if @data != nil
      return @data[index]
    end
  end
 
  def refresh
    @sell = false
    @option_index = nil
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    @data = []
    for goods_item in @shop_goods
      case goods_item[0]
      when 0
        item = $data_items[goods_item[1]]
      when 1
        item = $data_weapons[goods_item[1]]
      when 2
        item = $data_armors[goods_item[1]]
      end
      if item != nil
        @data.push(item)
      end
    end
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 32, row_max * 32)
      self.contents.font.name = $defaultfonttype
      self.contents.font.size = $defaultfontsize
      for i in 0...@item_max
        draw_item(i)
      end
    end
  end
 
  def refresh_sell(option_index)
    @sell = true
    @option_index = option_index
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    @data = []
    for i in 1...$data_items.size
      if $game_party.item_number(i) > 0
        @data.push($data_items[i])
      end
    end
    for i in 1...$data_weapons.size
      if $game_party.weapon_number(i) > 0
        @data.push($data_weapons[i])
      end
    end
    for i in 1...$data_armors.size
      if $game_party.armor_number(i) > 0
        @data.push($data_armors[i])
      end
    end
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 32, row_max * 32)
      self.contents.font.name = $defaultfonttype
      self.contents.font.size = $defaultfontsize
      for i in 0...@item_max
        draw_item(i)
      end
    end
  end
 
  def draw_item(index)
    item = @data[index]
    case item
    when RPG::Item
      number = $game_party.item_number(item.id)
    when RPG::Weapon
      number = $game_party.weapon_number(item.id)
    when RPG::Armor
      number = $game_party.armor_number(item.id)
    end
    if @option_index == nil
      if (item.price * $game_variables[J::BUY_RATE] / J::DIVISOR) <= $game_party.gold and number < 99
        self.contents.font.color = normal_color
      else
        self.contents.font.color = disabled_color
      end
    else
      self.contents.font.color = normal_color
    end
    x = 4
    y = index * 32
    if item.price == 0
      self.contents.font.color = disabled_color
    else
      self.contents.font.color = normal_color
    end
    if @sell == false
      if (item.price * $game_variables[J::BUY_RATE] / J::DIVISOR) <= $game_party.gold and number < 99
        self.contents.font.color = normal_color
      else
        self.contents.font.color = disabled_color
      end
    end
    rect = Rect.new(x, y, self.width - 32, 32)
    self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
    bitmap = RPG::Cache.icon(item.icon_name)
    opacity = self.contents.font.color == normal_color ? 255 : 128
    self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
    self.contents.draw_text(x + 28, y, 212, 32, item.name, 0)
    if @option_index == nil
      item_price = (item.price * $game_variables[J::BUY_RATE] / J::DIVISOR)
      self.contents.draw_text(x + 350, y, 88, 32, item_price.to_s, 2)
    else
      item_sell = (item.price * $game_variables[J::SELL_RATE] / J::DIVISOR).round
      self.contents.draw_text(x + 350, y, 88, 32, item_sell.to_s, 2)
    end
  end
end
#===============================================================================
#  END Window_Shop_List
#===============================================================================


#===============================================================================
#  Window_Shop_Description_Item
#===============================================================================
class Window_Shop_Description_Item < Window_Base
  def initialize
    super(90, 256, 460, 192)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $defaultfonttype
    self.contents.font.size = $defaultfontsize
    self.visible = false
    item = nil
    refresh(item)
  end
 
  def refresh(item)
    self.contents.clear
    if item == nil
      return
    end
    bitmap = RPG::Cache.icon(item.icon_name)
    opacity = self.contents.font.color == normal_color ? 255 : 128
    self.contents.blt(0, 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
    self.contents.draw_text(28, 0, 120, 32, item.name)
    self.contents.draw_text(0, 32, 428, 32, item.description)
    self.contents.font.color = system_color
    self.contents.draw_text(0, 64, 120, 32, "Range:")
    self.contents.draw_text(0, 96, 140, 32, "% HP Recovered:")
    self.contents.draw_text(0, 128, 140, 32, "% SP Recovered:")
    self.contents.draw_text(230, 96, 120, 32, "HP Recovered:")
    self.contents.draw_text(230, 128, 120, 32, "SP Recovered:")
    self.contents.font.color = normal_color
    self.contents.draw_text(150, 96, 90, 32, item.recover_hp_rate.to_s)
    self.contents.draw_text(150, 128, 90, 32, item.recover_sp_rate.to_s)
    self.contents.draw_text(360, 96, 90, 32, item.recover_hp.to_s)
    self.contents.draw_text(360, 128, 90, 32, item.recover_sp.to_s)
    case item.scope
    when 0
      self.contents.draw_text(70, 64, 120, 32, "None")
    when 1
      self.contents.draw_text(70, 64, 120, 32, "One Enemy")
    when 2
      self.contents.draw_text(70, 64, 120, 32, "All Enemies")
    when 3
      self.contents.draw_text(70, 64, 120, 32, "One Ally")
    when 4
      self.contents.draw_text(70, 64, 120, 32, "All Allies")
    when 5
      self.contents.draw_text(70, 64, 120, 32, "One Dead Ally")
    when 6
      self.contents.draw_text(70, 64, 120, 32, "All Dead Allies")
    when 7
      self.contents.draw_text(70, 64, 120, 32, "User")
    end
  end
end
#===============================================================================
#  END Window_Shop_Description_Item
#===============================================================================


#===============================================================================
#  Window_Shop_Description_Equipment
#===============================================================================
class Window_Shop_Description_Equipment < Window_Base
  def initialize
    super(0, 256, 640, 224)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $defaultfonttype
    self.contents.font.size = $defaultfontsize
    self.visible = false
    item = nil
    refresh(item)
  end
 
  def refresh(item)
    self.contents.clear
    if item == nil
      return
    end
    bitmap = RPG::Cache.icon(item.icon_name)
    opacity = self.contents.font.color == normal_color ? 255 : 128
    self.contents.blt(0, 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
    self.contents.draw_text(28, 0, 120, 32, item.name)
    self.contents.draw_text(0, 32, 460, 32, item.description)
    self.contents.font.color = system_color
    if item.is_a?(RPG::Weapon)
      self.contents.draw_text(0, 64, 75, 32, "Attack:")
      self.contents.draw_text(0, 96, 120, 32, "Phys. Def:")
      self.contents.draw_text(0, 128, 120, 32, "Mag. Def:")
      self.contents.draw_text(165, 64, 120, 32, "Str:")
      self.contents.draw_text(165, 96, 120, 32, "Dex:")
      self.contents.draw_text(165, 128, 120, 32, "Agi:")
      self.contents.draw_text(165, 160, 120, 32, "Int:")
      self.contents.draw_text(290, 64, 120, 32, "Elements:")
      self.contents.draw_text(470, 64, 120, 32, "Inflicts:")
    else
      self.contents.draw_text(0, 64, 120, 32, "Phys. Def:")
      self.contents.draw_text(0, 96, 120, 32, "Mag. Def:")
      self.contents.draw_text(0, 128, 120, 32, "Evade:")
      self.contents.draw_text(0, 160, 120, 32, "Auto:")
      self.contents.draw_text(165, 64, 120, 32, "Str:")
      self.contents.draw_text(165, 96, 120, 32, "Dex:")
      self.contents.draw_text(165, 128, 120, 32, "Agi:")
      self.contents.draw_text(165, 160, 120, 32, "Int:")
      self.contents.draw_text(370, 64, 120, 32, "Guards Against:")
    end
    self.contents.font.color = normal_color
    if item.is_a?(RPG::Weapon)
      self.contents.draw_text(60, 64, 75, 32, item.atk.to_s)
      self.contents.draw_text(90, 96, 75, 32, item.pdef.to_s)
      self.contents.draw_text(90, 128, 75, 32, item.mdef.to_s)
      self.contents.draw_text(195, 64, 50, 32, item.str_plus.to_s, 2)
      self.contents.draw_text(195, 96, 50, 32, item.dex_plus.to_s, 2)
      self.contents.draw_text(195, 128, 50, 32, item.agi_plus.to_s, 2)
      self.contents.draw_text(195, 160, 50, 32, item.int_plus.to_s, 2)
      self.contents.font.size = 14
      for i in 0...item.element_set.size
        x = 265 + i % 2 * 75
        y = 80 + i / 2 * 14
        self.contents.draw_text(x, y, 120, 32, $data_system.elements[item.element_set[i]])
      end
      for i in 0...item.plus_state_set.size
        x = 445 + i % 2 * 75
        y = 80 + i / 2 * 14
        self.contents.draw_text(x, y, 120, 32, $data_states[item.plus_state_set[i]].name)
      end
    else
      self.contents.draw_text(90, 64, 75, 32, item.pdef.to_s)
      self.contents.draw_text(90, 96, 75, 32, item.mdef.to_s)
      self.contents.draw_text(60, 128, 75, 32, item.eva.to_s)
      if $data_states[item.auto_state_id] != nil
        self.contents.draw_text(55, 160, 75, 32, $data_states[item.auto_state_id].name)
      end
      self.contents.draw_text(195, 64, 50, 32, item.str_plus.to_s, 2)
      self.contents.draw_text(195, 96, 50, 32, item.dex_plus.to_s, 2)
      self.contents.draw_text(195, 128, 50, 32, item.agi_plus.to_s, 2)
      self.contents.draw_text(195, 160, 50, 32, item.int_plus.to_s, 2)
      self.contents.font.size = 14
      @defense = []
      for i in 0...item.guard_element_set.size
        @defense.push($data_system.elements[item.guard_element_set[i]])
      end
      for i in 0...item.guard_state_set.size
        @defense.push($data_states[item.guard_state_set[i]].name)
      end
      for i in 0...@defense.size
        x = 265 + i % 4 * 80
        y = 80 + i / 4 * 14
        self.contents.draw_text(x + 15, y, 85, 32, @defense[i])
      end
    end
    self.contents.font.size = $defaultfontsize
  end
end
#===============================================================================
#  END Window_Shop_Description_Equipment
#===============================================================================


#===============================================================================
#  Window_Shop_Actors
#===============================================================================
class Window_Shop_Actors < Window_Base
  def initialize
    super(84, 32, 472, 416)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $defaultfonttype
    self.contents.font.size = $defaultfontsize
    self.visible = false
    self.active = false
    self.z += 100
    item = nil
    refresh(item)
  end
 
  def refresh(item)
    self.contents.clear
    if item == nil
      return
    end
    for i in 0...$game_party.actors.size
      x = i%2 * 236
      y = i/2 * 192
      draw_actor_graphic($game_party.actors[i], x + 16, y + 48)
      draw_actor_name($game_party.actors[i], x + 48, y + 8)
      pdef1 = item.pdef
      mdef1 = item.mdef
      str1 = item.str_plus
      dex1 = item.dex_plus
      agi1 = item.agi_plus
      int1 = item.int_plus
      atk2 = 0
      eva2 = 0
      pdef2 = 0
      mdef2 = 0
      str2 = 0
      dex2 = 0
      agi2 = 0
      int2 = 0
      if item.is_a?(RPG::Weapon)
        if $data_weapons[$game_party.actors[i].weapon_id] != nil
          atk1 = item.atk
          atk2 = $data_weapons[$game_party.actors[i].weapon_id].atk
          pdef2 = $data_weapons[$game_party.actors[i].weapon_id].pdef
          mdef2 = $data_weapons[$game_party.actors[i].weapon_id].mdef
          str2 = $data_weapons[$game_party.actors[i].weapon_id].str_plus
          dex2 = $data_weapons[$game_party.actors[i].weapon_id].dex_plus
          agi2 = $data_weapons[$game_party.actors[i].weapon_id].agi_plus
          int2 = $data_weapons[$game_party.actors[i].weapon_id].int_plus
        end
      else
        eva1 = item.eva
        case item.kind
        when 0
        if $data_armors[$game_party.actors[i].armor1_id] != nil
          eva2 = $data_armors[$game_party.actors[i].armor1_id].eva
          pdef2 = $data_armors[$game_party.actors[i].armor1_id].pdef
          mdef2 = $data_armors[$game_party.actors[i].armor1_id].mdef
          str2 = $data_armors[$game_party.actors[i].armor1_id].str_plus
          dex2 = $data_armors[$game_party.actors[i].armor1_id].dex_plus
          agi2 = $data_armors[$game_party.actors[i].armor1_id].agi_plus
          int2 = $data_armors[$game_party.actors[i].armor1_id].int_plus
        end
        when 1
        if $data_armors[$game_party.actors[i].armor2_id] != nil
          eva2 = $data_armors[$game_party.actors[i].armor2_id].eva
          pdef2 = $data_armors[$game_party.actors[i].armor2_id].pdef
          mdef2 = $data_armors[$game_party.actors[i].armor2_id].mdef
          str2 = $data_armors[$game_party.actors[i].armor2_id].str_plus
          dex2 = $data_armors[$game_party.actors[i].armor2_id].dex_plus
          agi2 = $data_armors[$game_party.actors[i].armor2_id].agi_plus
          int2 = $data_armors[$game_party.actors[i].armor2_id].int_plus
        end
        when 2
        if $data_armors[$game_party.actors[i].armor3_id] != nil
          eva2 = $data_armors[$game_party.actors[i].armor3_id].eva
          pdef2 = $data_armors[$game_party.actors[i].armor3_id].pdef
          mdef2 = $data_armors[$game_party.actors[i].armor3_id].mdef
          str2 = $data_armors[$game_party.actors[i].armor3_id].str_plus
          dex2 = $data_armors[$game_party.actors[i].armor3_id].dex_plus
          agi2 = $data_armors[$game_party.actors[i].armor3_id].agi_plus
          int2 = $data_armors[$game_party.actors[i].armor3_id].int_plus
        end
        when 3
        if $data_armors[$game_party.actors[i].armor4_id] != nil
          eva2 = $data_armors[$game_party.actors[i].armor4_id].eva
          pdef2 = $data_armors[$game_party.actors[i].armor4_id].pdef
          mdef2 = $data_armors[$game_party.actors[i].armor4_id].mdef
          str2 = $data_armors[$game_party.actors[i].armor4_id].str_plus
          dex2 = $data_armors[$game_party.actors[i].armor4_id].dex_plus
          agi2 = $data_armors[$game_party.actors[i].armor4_id].agi_plus
          int2 = $data_armors[$game_party.actors[i].armor4_id].int_plus
        end
        end
      end
      color1 = Color.new(25, 210, 25, 255)
      color2 = Color.new(210, 25, 25, 255)
      if $game_party.actors[i].equippable?(item)
        self.contents.font.color = normal_color
        # PDEF
        if (pdef1 - pdef2) > 0
          self.contents.font.color = color1
        elsif (pdef1 - pdef2) < 0
          self.contents.font.color = color2
        else
          self.contents.font.color = normal_color
        end
        self.contents.draw_text(x + 25, y + 80, 70, 32, (pdef1 - pdef2).to_s, 2)
        # MDEF
        if (mdef1 - mdef2) > 0
          self.contents.font.color = color1
        elsif (mdef1 - mdef2) < 0
          self.contents.font.color = color2
        else
          self.contents.font.color = normal_color
        end
        self.contents.draw_text(x + 25, y + 112, 70, 32, (mdef1 - mdef2).to_s, 2)
        # STR
        if (str1 - str2) > 0
          self.contents.font.color = color1
        elsif (str1 - str2) < 0
          self.contents.font.color = color2
        else
          self.contents.font.color = normal_color
        end
        self.contents.draw_text(x + 125, y + 48, 70, 32, (str1 - str2).to_s, 2)
        # DEX
        if (dex1 - dex2) > 0
          self.contents.font.color = color1
        elsif (dex1 - dex2) < 0
          self.contents.font.color = color2
        else
          self.contents.font.color = normal_color
        end
        self.contents.draw_text(x + 125, y + 80, 70, 32, (dex1 - dex2).to_s, 2)
        # AGI
        if (agi1 - agi2) > 0
          self.contents.font.color = color1
        elsif (agi1 - agi2) < 0
          self.contents.font.color = color2
        else
          self.contents.font.color = normal_color
        end
        self.contents.draw_text(x + 125, y + 112, 70, 32, (agi1 - agi2).to_s, 2)
        # INT
        if (int1 - int2) > 0
          self.contents.font.color = color1
        elsif (int1 - int2) < 0
          self.contents.font.color = color2
        else
          self.contents.font.color = normal_color
        end
        self.contents.draw_text(x + 125, y + 144, 70, 32, (int1 - int2).to_s, 2)
        if item.is_a?(RPG::Weapon)
          self.contents.font.color = system_color
          self.contents.draw_text(x, y + 48, 80, 32, "Atk:")
          self.contents.draw_text(x, y + 80, 80, 32, "Pdef:")
          self.contents.draw_text(x, y + 112, 80, 32, "Mdef:")
          self.contents.draw_text(x + 110, y + 48, 80, 32, "Str:")
          self.contents.draw_text(x + 110, y + 80, 80, 32, "Dex:")
          self.contents.draw_text(x + 110, y + 112, 80, 32, "Agi:")
          self.contents.draw_text(x + 110, y + 144, 80, 32, "Int:")
          self.contents.font.color = normal_color
          #  ATTACK
          if (atk1 - atk2) > 0
            self.contents.font.color = color1
          elsif (atk1 - atk2) < 0
            self.contents.font.color = color2
          else
            self.contents.font.color = normal_color
          end
          self.contents.draw_text(x + 25, y + 48, 70, 32, (atk1 - atk2).to_s, 2)
          #  ELSE if armor...
        else
          self.contents.font.color = system_color
          self.contents.draw_text(x, y + 48, 80, 32, "Eva:")
          self.contents.draw_text(x, y + 80, 80, 32, "Pdef:")
          self.contents.draw_text(x, y + 112, 80, 32, "Mdef:")
          self.contents.draw_text(x + 110, y + 48, 80, 32, "Str:")
          self.contents.draw_text(x + 110, y + 80, 80, 32, "Dex:")
          self.contents.draw_text(x + 110, y + 112, 80, 32, "Agi:")
          self.contents.draw_text(x + 110, y + 144, 80, 32, "Int:")
          self.contents.font.color = normal_color
          if (eva1 - eva2) > 0
            self.contents.font.color = color1
          elsif (eva1 - eva2) < 0
            self.contents.font.color = color2
          else
            self.contents.font.color = normal_color
          end
          self.contents.draw_text(x + 25, y + 48, 70, 32, (eva1 - eva2).to_s, 2)
        end
      else
        self.contents.font.color = disabled_color
        self.contents.draw_text(x + 10, y + 80, 120, 32, "Cannot Equip")
        self.contents.font.color = normal_color
      end
    end
  end
end
#===============================================================================
#  END Window_Shop_Actors
#===============================================================================


#===============================================================================
#  Window_Shop_Amount
#===============================================================================
class Window_Shop_Amount < Window_Selectable
 
  attr_accessor :amount
 
  def initialize
    super(80, 208, 480, 96)
    @item_max = 1
    self.contents = Bitmap.new(width - 32, height - 32)
    self.contents.font.name = $defaultfonttype
    self.contents.font.size = $defaultfontsize
    self.visible = false
    self.z += 100
    @amount = 1
    item = $data_items[1]
    option_index = 0
    refresh(item, option_index)
  end
 
  def refresh(item, option_index)
    self.contents.clear
    if item == nil
      return
    end
    if option_index == nil
      return
    end
    if option_index == 0
      self.contents.font.color = system_color
      self.contents.draw_text(0, 0, 200, 32, "How many?")
      self.contents.font.color = normal_color
      if $game_party.gold < (@amount * (item.price * $game_variables[J::BUY_RATE] / J::DIVISOR))
        self.contents.font.color = disabled_color
      end
      bitmap = RPG::Cache.icon(item.icon_name)
      opacity = self.contents.font.color == normal_color ? 255 : 128
      self.contents.blt(0, 36, bitmap, Rect.new(0, 0, 24, 24), opacity)
      self.contents.draw_text(28, 32, 120, 32, item.name)
      self.contents.draw_text(335, 32, 10, 32, "x")
      self.contents.draw_text(280, 32, 30, 32, @amount.to_s, 2)
      self.cursor_rect.set(284, 32, 32, 32)
      self.contents.draw_text(370, 32, 70, 32, (@amount * (item.price * $game_variables[J::BUY_RATE] / J::DIVISOR)).to_s, 2)
    else
      self.contents.font.color = system_color
      self.contents.draw_text(0, 0, 200, 32, "How many?")
      self.contents.font.color = normal_color
      bitmap = RPG::Cache.icon(item.icon_name)
      opacity = self.contents.font.color == normal_color ? 255 : 128
      self.contents.blt(0, 36, bitmap, Rect.new(0, 0, 24, 24), opacity)
      self.contents.draw_text(28, 32, 120, 32, item.name)
      self.contents.draw_text(335, 32, 10, 32, "x")
      self.contents.draw_text(280, 32, 30, 32, @amount.to_s, 2)
      self.cursor_rect.set(284, 32, 32, 32)
      self.contents.draw_text(370, 32, 70, 32, (@amount * (item.price * $game_variables[J::SELL_RATE] / J::DIVISOR)).to_s, 2)
    end
  end
end
#===============================================================================
#  END Window_Shop_Amount
#===============================================================================


#===============================================================================
#  Scene_Shop
#===============================================================================
class Scene_Shop
  def main
    @counter = 0
    @info_window = Window_Shop_Info.new
    @option_window = Window_Shop_Option.new
    @gold_window = Window_Shop_Gold.new
    @own_window = Window_Shop_Own.new
    @list_window = Window_Shop_List.new($game_temp.shop_goods)
    @desc_item_window = Window_Shop_Description_Item.new
    @desc_equip_window = Window_Shop_Description_Equipment.new
    @actor_window = Window_Shop_Actors.new
    @amount_window = Window_Shop_Amount.new
   
    Graphics.transition
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
    Graphics.freeze
   
    @info_window.dispose
    @option_window.dispose
    @gold_window.dispose
    @own_window.dispose
    @list_window.dispose
    @desc_item_window.dispose
    @desc_equip_window.dispose
    @actor_window.dispose
    @amount_window.dispose
  end
 
  def update
    @info_window.update
    @option_window.update
    @gold_window.update
    @own_window.update
    @list_window.update
    @desc_item_window.update
    @desc_equip_window.update
    @actor_window.update
    @amount_window.update
   
    if @option_window.active
      update_option
      return
    end
   
    if @list_window.active
      update_list
      return
    end
   
    if @actor_window.visible
      update_actors
      return
    end
   
    if @amount_window.active and @option_window.index == 0
      update_amount
      return
    end
   
    if @amount_window.active and @option_window.index == 1
      update_sell
      return
    end
  end
 
  def update_option
    @info_window.refresh(0)
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      $scene = Scene_Map.new
      return
    end
    if Input.trigger?(Input::C)
      case @option_window.index
      when 0
        $game_system.se_play($data_system.decision_se)
        @list_window.refresh
        @option_window.active = false
        @list_window.visible = true
        @list_window.active = true
        @list_window.index = 0
      when 1
        $game_system.se_play($data_system.decision_se)
        @list_window.refresh_sell(@option_window.index)
        @option_window.active = false
        @list_window.visible = true
        @list_window.active = true
        @list_window.index = 0
      when 2
        $game_system.se_play($data_system.cancel_se)
        $scene = Scene_Map.new
        return
      end
    end
  end
 
  def update_list
    @info_window.refresh(1)
    @item = @list_window.item
    if @counter != 1
      if @item.is_a?(RPG::Item)
        @desc_item_window.refresh(@item)
        @counter = 1
      else
        @desc_equip_window.refresh(@item)
        @counter = 1
      end
    end
    @own_window.refresh(@list_window.item)
    if Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN) or Input.repeat?(Input::UP) or Input.repeat?(Input::DOWN)
      @counter = 0
    end
    if @item.is_a?(RPG::Item)
      if @counter != 1
        @desc_item_window.refresh(@item)
        @counter = 1
      end
      @desc_item_window.visible = true
      @desc_equip_window.visible = false
    else
      if @counter != 1
        @desc_equip_window.refresh(@item)
        @counter = 1
      end
      @desc_item_window.visible = false
      @desc_equip_window.visible = true
    end
    if Input.trigger?(Input::B)
      @counter = 0
      $game_system.se_play($data_system.cancel_se)
      @desc_item_window.visible = false
      @desc_equip_window.visible = false
      @desc_item_window.refresh(nil)
      @desc_equip_window.refresh(nil)
      @option_window.active = true
      @list_window.visible = false
      @list_window.active = false
      @own_window.refresh(nil)
      return
    end
    if Input.trigger?(Input::A)
      unless @item.is_a?(RPG::Item)
        $game_system.se_play($data_system.decision_se)
        @actor_window.refresh(@item)
        @actor_window.visible = true
        @list_window.active = false
        return
      else
        $game_system.se_play($data_system.buzzer_se)
      end
    end
    if Input.trigger?(Input::C)
      if @item == nil or @item.id == 0 or @item.price == 0
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      if @option_window.index == 0
        case @item
        when RPG::Item
          if $game_party.item_number(@item.id) >= 99
            $game_system.se_play($data_system.buzzer_se)
            return
          end
        when RPG::Weapon
         if $game_party.weapon_number(@item.id) >= 99
            $game_system.se_play($data_system.buzzer_se)
            return
          end
        when RPG::Armor
          if $game_party.armor_number(@item.id) >= 99
            $game_system.se_play($data_system.buzzer_se)
            return
          end
        end
      end
      $game_system.se_play($data_system.decision_se)
      @amount_window.visible = true
      @amount_window.active = true
      @list_window.active = false
      return
    end
  end
 
  def update_actors
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @actor_window.visible = false
      @list_window.active = true
    end
  end
 
  def update_amount
    @amount_window.refresh(@item, @option_window.index)
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @amount_window.amount = 1
      @amount_window.visible = false
      @amount_window.active = false
      @list_window.active = true
      return
    end
    if Input.trigger?(Input::C)
      if $game_party.gold >= (@amount_window.amount * (@item.price * $game_variables[J::BUY_RATE] / J::DIVISOR))
        $game_system.se_play($data_system.decision_se)
        $game_party.lose_gold(@amount_window.amount * (@item.price * $game_variables[J::BUY_RATE] / J::DIVISOR))
        case @item
        when RPG::Item
          $game_party.gain_item(@item.id, @amount_window.amount)
        when RPG::Weapon
          $game_party.gain_weapon(@item.id, @amount_window.amount)
        when RPG::Armor
          $game_party.gain_armor(@item.id, @amount_window.amount)
        end
        @gold_window.refresh
        @amount_window.amount = 1
        @amount_window.visible = false
        @amount_window.active = false
        @list_window.active = true
        @list_window.refresh
        return
      else
        $game_system.se_play($data_system.buzzer_se)
      end
    end
    if Input.trigger?(Input::LEFT)
      $game_system.se_play($data_system.cursor_se)
      @amount_window.amount -= 1
      if @amount_window.amount == 0
        @amount_window.amount = 1
      end
      return
    end
    if Input.trigger?(Input::RIGHT)
      $game_system.se_play($data_system.cursor_se)
      @amount_window.amount += 1
      case @item
      when RPG::Item
        if ($game_party.item_number(@item.id) + @amount_window.amount) > 99
          @amount_window.amount = (99 - $game_party.item_number(@item.id))
        end
      when RPG::Weapon
        if ($game_party.weapon_number(@item.id) + @amount_window.amount) > 99
          @amount_window.amount = (99 - $game_party.weapon_number(@item.id))
        end
      when RPG::Armor
        if ($game_party.armor_number(@item.id) + @amount_window.amount) > 99
          @amount_window.amount = (99 - $game_party.armor_number(@item.id))
        end
      end
      return
    end
    if Input.trigger?(Input::UP)
      $game_system.se_play($data_system.cursor_se)
      @amount_window.amount += 10
      case @item
      when RPG::Item
        if ($game_party.item_number(@item.id) + @amount_window.amount) > 99
          @amount_window.amount = (99 - $game_party.item_number(@item.id))
        end
      when RPG::Weapon
        if ($game_party.weapon_number(@item.id) + @amount_window.amount) > 99
          @amount_window.amount = (99 - $game_party.weapon_number(@item.id))
        end
      when RPG::Armor
        if ($game_party.armor_number(@item.id) + @amount_window.amount) > 99
          @amount_window.amount = (99 - $game_party.armor_number(@item.id))
        end
      end
      return
    end
    if Input.trigger?(Input::DOWN)
      $game_system.se_play($data_system.cursor_se)
      @amount_window.amount -= 10
      if @amount_window.amount < 1
        @amount_window.amount = 1
      end
      return
    end
  end
 
  def update_sell
    @amount_window.refresh(@item, @option_window.index)
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @amount_window.amount = 1
      @amount_window.visible = false
      @amount_window.active = false
      @list_window.active = true
      return
    end
    if Input.trigger?(Input::C)
      if @item.price == 0
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      $game_system.se_play($data_system.decision_se)
      case @item
      when RPG::Item
        $game_party.gain_gold(@amount_window.amount * (@item.price * $game_variables[J::SELL_RATE] / J::DIVISOR))
        $game_party.lose_item(@item.id, @amount_window.amount)
      when RPG::Weapon
        $game_party.gain_gold(@amount_window.amount * (@item.price * $game_variables[J::SELL_RATE] / J::DIVISOR))
        $game_party.lose_weapon(@item.id, @amount_window.amount)
      when RPG::Armor
        $game_party.gain_gold(@amount_window.amount * (@item.price * $game_variables[J::BUY_RATE] / J::DIVISOR))
        $game_party.lose_armor(@item.id, @amount_window.amount)
      end
      @gold_window.refresh
      @amount_window.amount = 1
      @amount_window.visible = false
      @amount_window.active = false
      @list_window.active = true
      @list_window.refresh_sell(@option_window.index)
      @desc_equip_window.refresh(nil)
      @desc_item_window.refresh(nil)
    end
    if Input.trigger?(Input::LEFT)
      $game_system.se_play($data_system.cursor_se)
      @amount_window.amount -= 1
      if @amount_window.amount < 1
        @amount_window.amount = 1
      end
    end
    if Input.trigger?(Input::RIGHT)
      $game_system.se_play($data_system.cursor_se)
      case @item
      when RPG::Item
        @amount_window.amount += 1
        if @amount_window.amount > $game_party.item_number(@item.id)
          @amount_window.amount = $game_party.item_number(@item.id)
        end
      when RPG::Weapon
        @amount_window.amount += 1
        if @amount_window.amount > $game_party.weapon_number(@item.id)
          @amount_window.amount = $game_party.weapon_number(@item.id)
        end
      when RPG::Armor
        @amount_window.amount += 1
        if @amount_window.amount > $game_party.armor_number(@item.id)
          @amount_window.amount = $game_party.armor_number(@item.id)
        end
      end
    end
    if Input.trigger?(Input::UP)
      $game_system.se_play($data_system.cursor_se)
      case @item
      when RPG::Item
        @amount_window.amount += 10
        if @amount_window.amount > $game_party.item_number(@item.id)
          @amount_window.amount = $game_party.item_number(@item.id)
        end
      when RPG::Weapon
        @amount_window.amount += 10
        if @amount_window.amount > $game_party.weapon_number(@item.id)
          @amount_window.amount = $game_party.weapon_number(@item.id)
        end
      when RPG::Armor
        @amount_window.amount += 10
        if @amount_window.amount > $game_party.armor_number(@item.id)
          @amount_window.amount = $game_party.armor_number(@item.id)
        end
      end
    end
    if Input.trigger?(Input::DOWN)
      $game_system.se_play($data_system.cursor_se)
      @amount_window.amount -= 10
      if @amount_window.amount < 1
        @amount_window.amount = 1
      end
    end
  end
 
end


Enjoy.
29
C is the confirm button, right?
So what? You're using the skill?
Not like I'm a professional scripter or expert by any means, but knowing what I know about the system, and judging by the error, I'd wager maybe you have no cast time specified for the skill used?

Seeing the error is one thing, but like Zer0 said above, it'd be best to upload a copy of your project so that someone can test it themselves and see if they can solve the issue.


--J
30
It is from computer time, but for convenience it places all the info for time-related shit into variables for you to be used accordingly.
31
Resource Database / Re: Awesome 420 Icon pack
May 22, 2011, 09:15:28 pm
Took the icon sheet and resized it as pretty as I could, and chopped it into pieces using ForeverZer0's sheet-cutter script.

Here is the result: 420icons


--J
32
 >:(

BLIZZARD.
CHEATER.
THATS CHEATING.

NO GAMESHARK ALLOWED ON DROPBOX REFERRALS.
33
Actually, you should click HERE to sign up for dropbox.
...
Much better than Zer0's link.
Really.  :naughty:
34
http://pastebin.com/3FjGMVja

I modded this a while ago to suit my needs.
It tracks all sorts of switches and variables for time, season, days and all that jazz.
You can event out the toning for night and day if you need it. (not sure if I left it enabled or disabled it)

It was a VX script, but I changed necessary things to make it relatively compatible with XP.
35
Script Requests / Re: [XP] Fade Room Effect?
May 21, 2011, 05:36:02 pm
Perhaps in conjunction with an "area" script, this could be expanded upon?
36
Instead of drawing an icon, could the sprite within the event just... glow or something? Or both.

Just an idea.
37
Quote..., in the database where you write the descriptions,...


:D I like.
38
How would you have done it then? >.<
39
fname = "Data\\actor" + actor.id.to_s + "exp.rxdata"
    if FileTest.exist?(fname)
      get_exp_list_from_file(fname)
      if @exp_file_error
        @exp_list = Array.new(101)
      else
        return
      end


Then what does this mean?
I don't /really/ know, I'm just guessing in an attempt to be useful..
I haven't used this script in a long while. :x
40
# Manual Experience Table Enumeration  
# by RPG Advocate
=begin
To create customized xp tables for a character, make a txt document and
devise numbers for the experience.
Note: The numbers you put in are the Total experience for that level.
ie=

0
20
55
125
260

would really be this:

0 xp at level 1
20 xp to level 2
35 xp to level 3
70 xp to level 4
135 xp to level 5

Make sense?
If you don't fill in enough numbers, it will replace the numbers with the
default experience equivelant for that level.
If you put too many levels worth of experience, it will just cut off wherever
you set the max level at.

=end
  #   Displays error messages
  #   if set to true
      METE_ERROR_SHOW = true
 

#==============================================================================
# ** Game_Actor
#------------------------------------------------------------------------------
#  This class handles the actor. It's used within the Game_Actors class
#  ($game_actors) and refers to the Game_Party class ($game_party).
#==============================================================================

class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  # * Calculate EXP
  #--------------------------------------------------------------------------
  alias mete_make_exp_list make_exp_list
  def make_exp_list
    # The original call
    mete_make_exp_list
    # Obtain actor and read outside experience chart if available
    actor = $data_actors[@actor_id]
    fname = "Data\\actor" + actor.id.to_s + "exp.rxdata"
    if FileTest.exist?(fname)
      get_exp_list_from_file(fname)
      if @exp_file_error
        @exp_list = Array.new(101)
      else
        return
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Obtain experience table from file
  #--------------------------------------------------------------------------
  def get_exp_list_from_file(filename)
    begin
      if @exp_file_error
        return
      end
      f = File.open(filename)
      list = f.readlines
      list = correct_malformed_input(list)
      if @exp_file_error
        return
      end
      for i in 0..list.size - 1
        list[i] = list[i].to_i
      end
      list = correct_erroneous_data(list)
      for i in list.size..100
        list[i] = 0
      end
      list.unshift(0)
      @exp_list = list
      rescue StandardError
        s1 = "Unrecoverable error while reading " + @name + "'s EXP list.\n"
        s2 = "Experience curve declared in the database will be used instead."
        print(s1 + s2) if METE_ERROR_SHOW
        @exp_file_error = true
        retry
      ensure
        if f != nil
          f.close
        end
      end
  end
  #--------------------------------------------------------------------------
  # * Delete and repair experience table
  #--------------------------------------------------------------------------
  def correct_malformed_input(list)
    lines_to_delete = []
    if list.size == 0
      s1 = "Warning: " + @name + "'s experience requirement file is empty.  "
      s2 = "Experience curve declared in the database will be used instead."
      print(s1 + s2) if METE_ERROR_SHOW
      @exp_file_error = true
      return
    end
    for i in 0..list.size - 1
      delflag = false
      for j in 0..list[i].size - 1
        if list[i][j] != 10 && list[i][j] != 32 &&
          !(list[i][j] >= 48 && list[i][j] <= 57)
          delflag = true
        end
      end
      if list[i].size == 1 && list[i][0] == 10
        delflag = true
      end
      if delflag
        lines_to_delete.push(list[i])
      end
    end
    if lines_to_delete != []
      for i in 0..lines_to_delete.size - 1
        list.delete(lines_to_delete[i])
      end
    end
    for i in 0..list.size - 1
      while list[i].include?(32)
        list[i].slice!(0)
      end
    end
    return list
  end
  #--------------------------------------------------------------------------
  # * Correct the new experience table
  #--------------------------------------------------------------------------
  def correct_erroneous_data(list)
    warnings = ""
    wrong_exp = false
    if list[0] != 0
      list[0] = 0
      s1 = "Warning: " + @name + "'s experience requirement for level 1 "
      s2 = "must be zero.  Automatically correcting error.\n"
      warnings += s1 + s2
    end
    if list.size < $data_actors[@actor_id].final_level
      if list.size >= 2
        value = list[list.size - 1] - list[list.size - 2]
        for i in list.size..$data_actors[@actor_id].final_level - 1
          list[i] = list[i-1] + value
        end
      else
        list = []
        for i in 0..$data_actors[@actor_id].final_level - 1
          list[i] = i
        end
      end
      s1 = "Warning: Fewer levels than " + @name + "'s maximum level have "
      s2 = "been declared.  Creating temporary substitute values.\n"
      warnings += s1 + s2
    end
    if list.size > $data_actors[@actor_id].final_level
      new_list = []
      for i in 0..$data_actors[@actor_id].final_level - 1
        new_list[i] = list[i]
      end
      list = new_list
      s1 = "Warning: More levels than " + @name + "'s maximum level have "
      s2 = "been declared.  Ignoring excess declarations.\n"
      warnings += s1 + s2
    end
    for i in 1..list.size - 1
      if list[i] <= list[i-1]
        if i == list.size - 1 && list.size != 2
          diff = list[i-1] - list[i-2]
          list[i] = list[i-1] + diff
        elsif i == list.size - 1 && list.size == 2
          list[i] = 10
        else
          if list[i+1] > list[i-1]
            diff = list[i+1] - list[i-1]
            list[i] = list[i-1] + diff / 2
          else
            list[i] = list[i-1] + 10
          end
        end
        wrong_exp = true
      end
    end
    if wrong_exp
      s1 = "Warning: One or more experience requirements for " + @name + " "
      s2 = "is less than or equal to the previous level's requirement.  "
      s3 = "Creating temporary substitute values."
      warnings += s1 + s2 + s3
    end
    if warnings != ""
      print(warnings) if METE_ERROR_SHOW
    end
    return list
  end
end


I think the txt document has to be named 'actor#exp.rxdata', where # is the ID in the database of the actor.