Save-Point
KLevelChange XP - Printable Version

+- Save-Point (https://www.save-point.org)
+-- Forum: Material Development (https://www.save-point.org/forum-8.html)
+--- Forum: Scripts Database (https://www.save-point.org/forum-39.html)
+--- Thread: KLevelChange XP (/thread-8371.html)



KLevelChange XP - kyonides - 10-01-2021

KLevelChange XP

by Kyonides Arkanthes


Introduction

This is a simple scriptlet that will let you call common events whenever the hero levels up or down via gaining or losing experience points, thus changing his or her current level, or by leveling up or down directly. Please read the instructions embedded in the script to learn how to set them up.

There is also the possibility to trigger it randomly by changing the LVLUP_ACTIVATION_RATE or LVLDOWN_ACTIVATION_RATE.
Set their value to 100 if you always need them to get triggered by the system. Winking

Code:
# * KLevelChange XP
#   Scripter : Kyonides Arkanthes
#   2021-09-30
# Free for use in any kind of game!

# The LVLUP_COMMON_EVENT_ID and LVLDOWN_COMMON_EVENT_ID Constants will let you
# call a common event whenever a hero levels up or down during gameplay. Even so
# that will depend on the corresponding value of the ACTIVATION_RATEs.
# Set them to 100 if you want them to be triggered automatically.

class Game_Actor
  LVLUP_COMMON_EVENT_ID = 1
  LVLDOWN_COMMON_EVENT_ID = 2
  LVLUP_ACTIVATION_RATE = 75
  LVLDOWN_ACTIVATION_RATE = 65
  alias :kyon_level_reaction_exp= :exp=
  def exp=(new_exp)
    level = @level
    kyon_level_reaction_exp = new_exp
    if @level > level and rand(100) < LVLUP_ACTIVATION_RATE
      $game_temp.common_event_id = $data_common_events[LVLUP_COMMON_EVENT_ID]
    elsif @level < level and rand(100) < LVLDOWN_ACTIVATION_RATE
      $game_temp.common_event_id = $data_common_events[LVLDOWN_COMMON_EVENT_ID]
    end
    @exp
  end
end

Terms & Conditions

Free for use in any kind of game.
Mention me in your game credits.
[End of list of conditions]