Chaos Project

RPG Maker => RPG Maker Scripts => Script Troubleshooting => Topic started by: Futendra on December 26, 2011, 07:00:02 am

Title: Making Tons of Add-Ons Difficulties compatible with Moghunter's Title screen?
Post by: Futendra on December 26, 2011, 07:00:02 am
Hi, I want to use a customised Stand-Alone version of Different Difficulties:
Stand-alone Difficulties: ShowHide
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# Different Difficulties by Blizzard
# Version: 1.3b
# Date: 24.3.2007
# Date v1.1b: 27.3.2008
# Date v1.2b: 18.4.2008
# Date v1.3b: 22.4.2008
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
#
# Instructions:
#
#   You can always check the current difficulty of the game by using
#   
#     $game_system.difficulty_name == 'NAME'
#   
#   in your conditional branch. The NAMEs are the same as you specify in the
#   configuration below.
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
module TONS_OF_ADDONS
 
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# START Configuration 2-1, UTILITY add-ons
#
#   You can enable/disable any add-on here if you wish. Set the value to false
#   to disable it. These features CANNOT be turned on/off during the game.
#
#     NAME_OF_THE_ADDON = true
#     NAME_OF_THE_ADDON = false
#
#   where NAME_OF_THE_ADDON is the same variable as the one used below.
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  DIFFICULTY             = true
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# END Configuration 2-1
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 
end

if TONS_OF_ADDONS::DIFFICULTY

#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# START Congfiguration
#
# Use the following template to create difficulties in your game
# ['NAME', EXP_RATE, GOLD_RATE, ACTOR_DAMAGE_RATE, ENEMY_DAMAGE_RATE]
# Note that all the "rates" are in %. Values over 100 will increase, values
# under 100 will decrease the given attribute. Of course you can add/remove
# any difficulties you want, be sure to separate them with commas.
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

DIFFICULTIES = [['Super Easy', 200, 200, 200, 50],
                ['Easy', 150, 150, 150, 75],
                ['Normal', 100, 100, 100, 100],
                ['Hard', 75, 75, 75, 150],
                ['Extreme', 50, 50, 50, 200]]

#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# END Congfiguration
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

#==============================================================================
# Game_System
#==============================================================================

class Game_System
 
  attr_reader :difficulty_name
  attr_reader :exp_rate
  attr_reader :gold_rate
  attr_reader :actor_rate
  attr_reader :enemy_rate
 
  def init_difficulty(index)
    @difficulty_name, @exp_rate, @gold_rate, @actor_rate, @enemy_rate =
        DIFFICULTIES[index]
  end
 
end

#==============================================================================
# Window_BattleResult
#==============================================================================

class Window_BattleResult
 
  attr_accessor :gold
  attr_accessor :exp
 
end

#==============================================================================
# Window_BattleStatus
#==============================================================================

class Window_BattleStatus
 
  attr_accessor :level_up_flags
 
end

#==============================================================================
# Game_Battler
#==============================================================================

class Game_Battler
 
  alias attack_effect_difficulty_later attack_effect
  def attack_effect(attacker)
    last_sr = self.sr if $crls && self.is_a?(Game_Actor)
    last_hp = self.hp
    result = attack_effect_difficulty_later(attacker)
    if result && self.damage.is_a?(Numeric)
      self.hp = last_hp
      self.hp = self.hp
      if attacker.is_a?(Game_Actor)
        self.sr = last_sr if $crls && self.is_a?(Game_Actor)
        self.damage = self.damage * $game_system.actor_rate / 100
      elsif attacker.is_a?(Game_Enemy)
        self.damage = self.damage * $game_system.enemy_rate / 100
      end
      self.hp -= self.damage
    end
    return result
  end
 
  alias skill_effect_difficulty_later skill_effect
  def skill_effect(user, skill)
    last_sr = self.sr if $crls && self.is_a?(Game_Actor)
    last_hp = self.hp
    result = skill_effect_difficulty_later(user, skill)
    if result && self.damage.is_a?(Numeric)
      self.hp = last_hp
      self.hp = self.hp
      if user.is_a?(Game_Actor)
        self.damage = self.damage * $game_system.actor_rate / 100
        self.sr = last_sr if $crls
      elsif user.is_a?(Game_Enemy)
        self.damage = self.damage * $game_system.enemy_rate / 100
      end
      self.hp -= self.damage
    end
    return result
  end
 
end
 
#==============================================================================
# Scene_Title
#==============================================================================

class Scene_Title
 
  alias main_difficulties_later main
  def main
    main_difficulties_later
    @difficulty_window.dispose if @difficulty_window != nil
  end
 
  alias command_new_game_difficulties_later command_new_game
  def command_new_game
    $game_system.se_play($data_system.decision_se)
    d = []
    DIFFICULTIES.each {|diff| d.push(diff[0])}
    @difficulty_window = Window_Command.new(@command_window.width, d)
    @difficulty_window.x = @command_window.x
    @difficulty_window.y = @command_window.y -
        (@difficulty_window.height - @command_window.height) / 2
    @difficulty_window.back_opacity = @command_window.back_opacity
    @command_window.active = @command_window.visible = false
  end
 
  alias upd_difficulties_later update
  def update
    if @difficulty_window == nil
      upd_difficulties_later
      return
    end
    @difficulty_window.update unless defined?(SDK)
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      @command_window.active = @command_window.visible = true
      @difficulty_window.dispose
      @difficulty_window = nil
    elsif Input.trigger?(Input::C)
      command_new_game_difficulties_later
      $game_system.init_difficulty(@difficulty_window.index)
    end
  end
 
end

#==============================================================================
# Scene_Battle
#==============================================================================

class Scene_Battle
 
  alias start_phase5_difficulty_later start_phase5
  def start_phase5
    old_gold, old_exp, old_levels = $game_party.gold, [], []
    $game_party.actors.each {|actor|
        old_exp.push(actor.exp)
        old_levels.push(actor.level)}
    start_phase5_difficulty_later
    new_gold = $game_party.gold - old_gold
    $game_party.lose_gold(new_gold)
    @result_window.gold = new_gold * $game_system.gold_rate / 100
    $game_party.gain_gold(@result_window.gold)
    new_exp = 0
    $game_party.actors.each_index {|i|
        if $game_party.actors[i].exp - old_exp[i] > 0
          new_exp = $game_party.actors[i].exp - old_exp[i]
        end
        $game_party.actors[i].exp = old_exp[i]}
    @result_window.exp = new_exp * $game_system.exp_rate / 100
    @result_window.refresh
    $game_party.actors.each_index {|i|
        @status_window.level_up_flags[i] = false
        unless $game_party.actors[i].cant_get_exp?
          $game_party.actors[i].exp += @result_window.exp
          @status_window.level_up(i) if $game_party.actors[i].level > old_levels[i]
        end}
  end
 
end

end

Compatible with Moghunter's Title screen:
Moghunter's Title Screen: ShowHide
#_________________________________________________
# MOG_Animated Title Sofia V1.2           
#_________________________________________________
# By Moghunter 
# http://www.atelier-rgss.com
#_________________________________________________
module MOG
#Auto Fullscreen.   
FULL_SCREEN = true
#Logo Picture Name.
LOGO_PIC = "logo"
#Logo Time.
LOGO_TIME = 120
#Logo ME.
LOGO_ME = "015-mystery01"
#Set Game Frame Rate (Default 40FPS).
PER = 40
#Random Music.
RAND_MUSIC = false
#Set Random Music.
MUSIC1 = "The Legend of Earth"
MUSIC2 = "Sons of War"
MUSIC3 = "Keisei Gyakuten"
#Active Title BGS.   
BGS_ON = false
#Set Title BGS.   
BGS = "004-Wind04"
#Set BGS volume.   
BGS_VOL = 10
#Transition Type.
TRANS_TITLE = "Flare"
#Transition Time.
TRANS_TIME = 60
#Texto para acessar o menu de opções(Press any Key)
T_B = "Press ENTER key"
#Tamanho da fonte(Press any Key).
T_B_FONT = 28
#Posição do texto na horizontal.(Press any Key)
T_B_X = 250
#Posição do texto na vertical.(Press any Key)
T_B_Y = 300
#Som ao apertar a tecla.(Press any Key)
T_B_SE = "105-Heal01"
#Ativar Zoom reverso na imagem de fundo.
BACK_ZOOM = false
#Nome da picture de opções de comando.
#É necessário ter 3 picures nomeadas com
#o nome abaixo mais o prefixo _01 , _02 e _03.
COM = "Com"
#-----------------
# Imagem de Fundo
#-----------------
PIC_FD = "Back"#Nome da imagem.
PIC_FD_OX = 1  #Velocidade de movimento na horizontal.
PIC_FD_OY = 0  #Velocidade de movimento na vertical.
PIC_FD_PRIOR = 1 #Prioridade da imagem.
PIC_FD_OPA = 255 #Transparência da imagem.
PIC_FD_BLEND = 0 #Tipo de Blend.
#-----------------
# Letras do Titulo
#-----------------
PIC_TEXTO = "Texto"#Nome da imagem.
PIC_TEXTO_OX = 0  #Velocidade de movimento na horizontal.
PIC_TEXTO_OY = 0  #Velocidade de movimento na vertical.
PIC_TEXTO_OPA = 0 #Transparência Inicial da imagem.
PIC_TEXTO_PRIOR = 9 #Prioridade da imagem.
PIC_TEXTO_BLEND = 0 #Tipo de Blend.
#-----------------
# Imagem Camada 1
#-----------------
PIC_FOG1 = "Fog01" #Nome da imagem.
PIC_FOG_RAND = true #Ativar Sistema de Vento.
PIC_FOG_MOV = 100  #Time para mudar de direção.
PIC_FOG_OX_01 = 2  #Velocidade de movimento na horizontal.
PIC_FOG_OY_01 = 2  #Velocidade de movimento na vertical.
PIC_FOG_OX_02 = 3  #Velocidade de movimento na horizontal.
PIC_FOG_OY_02 = -3 #Velocidade de movimento na vertical.
PIC_FOG1_PRIOR = 3 #Prioridade da imagem.
PIC_FOG1_BLEND = 1 #Tipo de Blend.
PIC_FOG1_ZOOMX = 2 #Zoom da imagem na horizontal.
PIC_FOG1_ZOOMY = 2 #Zoom da imagem na vertical.
PIC_FOG1_OPA = 255 #Transparência da imagem.
#-----------------
# Imagem Camada 2
#-----------------
PIC_FOG2 = "Fog02" #Nome da imagem.
PIC_FOG2_RAND = true #Ativar Sistema de Vento.
PIC_FOG2_MOV = 100 #Time para mudar de direção. 
PIC_FOG2_PRIOR = 2 #Prioridade da imagem.
PIC_FOG2_BLEND = 1 #Tipo de Blend.
PIC_FOG2_ZOOMX = 1 #Zoom da imagem na horizontal.
PIC_FOG2_ZOOMY = 1 #Zoom da imagem na vertical.
PIC_FOG2_OX_01 = 3 #Velocidade de movimento na horizontal.
PIC_FOG2_OY_01 = 3 #Velocidade de movimento na vertical.
PIC_FOG2_OX_02 = -3 #Velocidade de movimento na horizontal.
PIC_FOG2_OY_02 = 3 #Velocidade de movimento na vertical.
PIC_FOG2_OPA = 50  #Transparência da imagem.
#-----------------
# Imagem Camada 3
#-----------------
PIC_FOG3 = "Tree"  #Nome da imagem.
PIC_FOG3_RAND = false #Ativar Sistema de Vento.
PIC_FOG3_MOV = 100 #Time para mudar de direção. 
PIC_FOG3_PRIOR = 7 #Prioridade da imagem.
PIC_FOG3_BLEND = 0 #Tipo de Blend.
PIC_FOG3_ZOOMX = 1 #Zoom da imagem na horizontal.
PIC_FOG3_ZOOMY = 1 #Zoom da imagem na vertical.
PIC_FOG3_OX_01 = 3 #Velocidade de movimento na horizontal.
PIC_FOG3_OY_01 = 0 #Velocidade de movimento na vertical.
PIC_FOG3_OX_02 = -3 #Velocidade de movimento na horizontal.
PIC_FOG3_OY_02 = 3 #Velocidade de movimento na vertical.
PIC_FOG3_OPA = 255 #Transparência da imagem.
#-----------------
# Imagem LEAF - 01
#-----------------
PIC_LEAF1 = "Leaf01" #Nome da imagem.
PIC_LEAF1_RAND = true #Ativar Sistema de Vento.
PIC_LEAF1_MOV = 200  #Time para mudar de direção.
PIC_LEAF1_PRIOR = 10 #Prioridade da imagem.
PIC_LEAF1_BLEND = 0 #Tipo de Blend.
PIC_LEAF1_ZOOMX = 1 #Zoom da imagem na horizontal.
PIC_LEAF1_ZOOMY = 1 #Zoom da imagem na vertical.
PIC_LEAF1_OX1 = 1 #Velocidade de movimento na horizontal.
PIC_LEAF1_OY1 = 1 #Velocidade de movimento na vertical.
PIC_LEAF1_OX2 = 1 #Velocidade de movimento na horizontal.
PIC_LEAF1_OY2 = 1 #Velocidade de movimento na vertical.
PIC_LEAF1_OPA = 255 #Transparência da imagem.
#-----------------
# Imagem LEAF - 02
#-----------------
PIC_LEAF2 = "Leaf02" #Nome da imagem.
PIC_LEAF2_RAND = true #Ativar Sistema de Vento.
PIC_LEAF2_MOV = 150 #Time para mudar de direção.
PIC_LEAF2_PRIOR = 8 #Prioridade da imagem.
PIC_LEAF2_BLEND = 0 #Tipo de Blend.
PIC_LEAF2_ZOOMX = 1 #Zoom da imagem na horizontal.
PIC_LEAF2_ZOOMY = 1 #Zoom da imagem na vertical.
PIC_LEAF2_OX1 = 2 #Velocidade de movimento na horizontal.
PIC_LEAF2_OY1 = 2 #Velocidade de movimento na vertical.
PIC_LEAF2_OX2 = 2 #Velocidade de movimento na horizontal.
PIC_LEAF2_OY2 = 2 #Velocidade de movimento na vertical.
PIC_LEAF2_OPA = 255 #Transparência da imagem.
#-------------------------------------------------------------------------------
#Movimento de Dispose.
#-------------------------------------------------------------------------------
#Alterar movimento ao escolher uma opção de comando.
DIS_MOV = true
#Tempo do movimento
DIS_TIME = 80
#Redução da Transparência imagem.
DIS_PIC1_OPA = 0
DIS_PIC2_OPA = 5
DIS_PIC3_OPA = 0
DIS_PIC4_OPA = 0
DIS_PIC5_OPA = 0
DIS_PIC6_OPA = 0
DIS_PIC_LEAF1_OPA = 5
DIS_PIC_LEAF2_OPA = 5
#Movimento da imagem
DIS_PIC1_OX = -6
DIS_PIC1_OY = 0
DIS_PIC2_OX = 0
DIS_PIC2_OY = 0
DIS_PIC3_OX = 0
DIS_PIC3_OY = 0
DIS_PIC4_OX = 0
DIS_PIC4_OY = 0
DIS_PIC5_OX = 4
DIS_PIC5_OY = 0
DIS_PIC6_OX = 0
DIS_PIC6_OY = 0
DIS_PIC_LEAF1_OX = 0
DIS_PIC_LEAF1_OY = 0
DIS_PIC_LEAF2_OX = 0
DIS_PIC_LEAF2_OY = 0
#Zoom da imagem
DIS_PIC1_ZOOMX = 0.02
DIS_PIC1_ZOOMY = 0.02
DIS_PIC2_ZOOMX = 0
DIS_PIC2_ZOOMY = 0
DIS_PIC3_ZOOMX = 0
DIS_PIC3_ZOOMY = 0
DIS_PIC4_ZOOMX = 0
DIS_PIC4_ZOOMY = 0
DIS_PIC5_ZOOMX = 0.004
DIS_PIC5_ZOOMY = 0.004
DIS_PIC6_ZOOMX = 0
DIS_PIC6_ZOOMY = 0
DIS_PIC_LEAF1_ZOOMX = 0
DIS_PIC_LEAF1_ZOOMY = 0
DIS_PIC_LEAF2_ZOOMX = 0
DIS_PIC_LEAF2_ZOOMY = 0
end

#===============================================================================
# Scene Title
#===============================================================================
class Scene_Title 
#--------------------------------------------------------------------------
# Main
#-------------------------------------------------------------------------- 
  def main
    if $BTEST
      battle_test
      return
    end
    $full_screen += 1
    if MOG::FULL_SCREEN == true and $full_screen == 1
    $showm = Win32API.new 'user32', 'keybd_event', %w(l l l l), ' '
    $showm.call(18,0,0,0)
    $showm.call(13,0,0,0)
    $showm.call(13,0,2,0)
    $showm.call(18,0,2,0)
    end         
    $data_actors        = load_data("Data/Actors.rxdata")
    $data_classes       = load_data("Data/Classes.rxdata")
    $data_skills        = load_data("Data/Skills.rxdata")
    $data_items         = load_data("Data/Items.rxdata")
    $data_weapons       = load_data("Data/Weapons.rxdata")
    $data_armors        = load_data("Data/Armors.rxdata")
    $data_enemies       = load_data("Data/Enemies.rxdata")
    $data_troops        = load_data("Data/Troops.rxdata")
    $data_states        = load_data("Data/States.rxdata")
    $data_animations    = load_data("Data/Animations.rxdata")
    $data_tilesets      = load_data("Data/Tilesets.rxdata")
    $data_common_events = load_data("Data/CommonEvents.rxdata")
    $data_system        = load_data("Data/System.rxdata")
    $game_system = Game_System.new
    s1 = ""
    s2 = ""
    s3 = ""
    @command_window = Window_Command.new(160, [s1, s2, s3])
    @command_window.opacity = 0
    @command_window.x = 0 - @command_window.width / 2
    @command_window.y = 0
    @command_window.visible = false
    @command_window.active = false   
    @mb01 = Plane.new
    @mb01.bitmap = RPG::Cache.title(MOG::PIC_FD)
    @mb01.opacity = MOG::PIC_FD_OPA
    @mb01.z = MOG::PIC_FD_PRIOR
    @mb01.blend_type = MOG::PIC_FD_BLEND
    @mb02 = Plane.new
    @mb02.bitmap = RPG::Cache.title(MOG::PIC_TEXTO)
    @mb02.z = MOG::PIC_TEXTO_PRIOR
    @mb02.opacity = MOG::PIC_TEXTO_OPA
    @mb02.blend_type = MOG::PIC_TEXTO_BLEND     
    @mb03 = Plane.new
    @mb03.bitmap = RPG::Cache.title(MOG::PIC_FOG1)
    @mb03.z = MOG::PIC_FOG1_PRIOR
    @mb03.zoom_x = MOG::PIC_FOG1_ZOOMX
    @mb03.zoom_y = MOG::PIC_FOG1_ZOOMY
    @mb03.blend_type = MOG::PIC_FOG1_BLEND
    @mb03.opacity = MOG::PIC_FOG1_OPA
    @mb04 = Plane.new
    @mb04.bitmap = RPG::Cache.title(MOG::PIC_FOG2)
    @mb04.z = MOG::PIC_FOG2_PRIOR
    @mb04.zoom_x = MOG::PIC_FOG2_ZOOMX
    @mb04.zoom_y = MOG::PIC_FOG2_ZOOMY
    @mb04.blend_type = MOG::PIC_FOG2_BLEND
    @mb04.opacity = MOG::PIC_FOG2_OPA
    @mb05 = Plane.new
    @mb05.bitmap = RPG::Cache.title(MOG::PIC_FOG3)
    @mb05.z = MOG::PIC_FOG3_PRIOR
    @mb05.zoom_x = MOG::PIC_FOG3_ZOOMX
    @mb05.zoom_y = MOG::PIC_FOG3_ZOOMY
    @mb05.blend_type = MOG::PIC_FOG3_BLEND
    @mb05.opacity = MOG::PIC_FOG3_OPA
    @mb07 = Plane.new
    @mb07.bitmap = RPG::Cache.title(MOG::PIC_LEAF1)
    @mb07.z = MOG::PIC_LEAF1_PRIOR
    @mb07.zoom_x = MOG::PIC_LEAF1_ZOOMX
    @mb07.zoom_y = MOG::PIC_LEAF1_ZOOMY   
    @mb07.blend_type = MOG::PIC_LEAF1_BLEND 
    @mb07.opacity = MOG::PIC_LEAF1_OPA
    @mb08 = Plane.new
    @mb08.bitmap = RPG::Cache.title(MOG::PIC_LEAF2)
    @mb08.z = MOG::PIC_LEAF2_PRIOR
    @mb08.zoom_x = MOG::PIC_LEAF2_ZOOMX
    @mb08.zoom_y = MOG::PIC_LEAF2_ZOOMY   
    @mb08.blend_type = MOG::PIC_LEAF2_BLEND     
    @mb08.opacity = MOG::PIC_LEAF2_OPA   
    @bot = Sprite.new
    @bot.bitmap = Bitmap.new(160,100)
    @bot.x = MOG::T_B_X
    @bot.y = MOG::T_B_Y
    @bot.z = 9999
    @bot.opacity = 0
    @bot.bitmap.font.size = MOG::T_B_FONT
    @bot.bitmap.font.bold = true
    @bot.bitmap.draw_text(0, 20, 160, 64, MOG::T_B)
    @bot2 = Sprite.new
    @bot2.bitmap = Bitmap.new(160,100)
    @bot2.x = MOG::T_B_X
    @bot2.y = MOG::T_B_Y
    @bot2.z = 9998
    @bot2.opacity = 0
    @bot2.bitmap.font.size = MOG::T_B_FONT
    @bot2.bitmap.font.bold = true
    @bot2.color.set(0,0,0)
    @bot2.bitmap.draw_text(2, 22, 160, 64, MOG::T_B)
    @com = Sprite.new
    @com.bitmap = RPG::Cache.title(MOG::COM + "_01")
    @com.z = 10000
    @com.opacity = 0
    @com.y = 300
    @logo = Plane.new
    @logo.bitmap = RPG::Cache.title(MOG::LOGO_PIC)
    @logo.z = 999999
    @logo.opacity = 0   
    @time = 0
    @time_zoom = 0
    @time_music = 0
    @time_logo = MOG::LOGO_TIME
    @logo_r = 0
    @rs = 0
    @mb01.visible = false     
    @mb02.visible = false 
    @mb03.visible = false 
    @mb04.visible = false 
    @mb05.visible = false 
    @mb07.visible = false 
    @mb08.visible = false 
    @com.visible = false 
    @logo.visible = true
    @continue_enabled = false
    for i in 0..3
      if FileTest.exist?("Save#{i+1}.rxdata")
        @continue_enabled = true
      end
    end
    if @continue_enabled
      @command_window.index = 1
    else
      @command_window.disable_item(1)
    end
    Audio.bgm_stop
    Audio.me_stop
    Audio.bgs_stop
    if MOG::BGS_ON == true
    Audio.bgs_play("Audio/BGS/" + MOG::BGS, MOG::BGS_VOL, 100)
    end
    Graphics.transition(MOG::TRANS_TIME, "Graphics/Transitions/" + MOG::TRANS_TITLE )
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
    if MOG::DIS_MOV == true
    for i in 1..MOG::DIS_TIME
    @mb01.opacity -= MOG::DIS_PIC1_OPA     
    @mb02.opacity -= MOG::DIS_PIC2_OPA
    @mb03.opacity -= MOG::DIS_PIC3_OPA
    @mb04.opacity -= MOG::DIS_PIC4_OPA
    @mb05.opacity -= MOG::DIS_PIC5_OPA
    @mb07.opacity -= MOG::DIS_PIC_LEAF1_OPA
    @mb08.opacity -= MOG::DIS_PIC_LEAF2_OPA
    @com.opacity -= MOG::DIS_PIC2_OPA
    @mb01.ox += MOG::DIS_PIC1_OX
    @mb01.oy += MOG::DIS_PIC1_OY
    @mb02.ox += MOG::DIS_PIC2_OX
    @mb02.oy += MOG::DIS_PIC2_OY
    @mb03.ox += MOG::DIS_PIC3_OX
    @mb03.oy += MOG::DIS_PIC3_OY
    @mb04.ox += MOG::DIS_PIC4_OX
    @mb04.oy += MOG::DIS_PIC4_OY
    @mb05.ox += MOG::DIS_PIC5_OX
    @mb05.oy += MOG::DIS_PIC5_OY
    @mb07.ox += MOG::DIS_PIC_LEAF1_OX
    @mb07.oy += MOG::DIS_PIC_LEAF1_OY
    @mb08.ox += MOG::DIS_PIC_LEAF2_OX
    @mb08.oy += MOG::DIS_PIC_LEAF2_OY
    @mb01.zoom_x += MOG::DIS_PIC1_ZOOMX
    @mb01.zoom_y += MOG::DIS_PIC1_ZOOMY
    @mb02.zoom_x += MOG::DIS_PIC2_ZOOMX
    @mb02.zoom_y += MOG::DIS_PIC2_ZOOMY
    @mb03.zoom_x += MOG::DIS_PIC3_ZOOMX
    @mb03.zoom_y += MOG::DIS_PIC3_ZOOMY
    @mb04.zoom_x += MOG::DIS_PIC4_ZOOMX
    @mb04.zoom_y += MOG::DIS_PIC4_ZOOMY
    @mb05.zoom_x += MOG::DIS_PIC5_ZOOMX
    @mb05.zoom_y += MOG::DIS_PIC5_ZOOMY
    @mb07.zoom_x += MOG::DIS_PIC_LEAF1_ZOOMX
    @mb07.zoom_y += MOG::DIS_PIC_LEAF1_ZOOMY
    @mb08.zoom_x += MOG::DIS_PIC_LEAF2_ZOOMX
    @mb08.zoom_y += MOG::DIS_PIC_LEAF2_ZOOMY
    @bot.opacity -= 10
    @bot2.opacity -= 10
    Graphics.update
    end
    end
    Graphics.freeze
    @command_window.dispose
    @mb01.dispose
    @mb02.dispose
    @mb03.dispose
    @mb04.dispose
    @mb05.dispose
    @mb07.dispose
    @mb08.dispose
    @bot.dispose
    @bot2.dispose
    @com.dispose
    @logo.dispose
  end
#--------------------------------------------------------------------------
# Update
#--------------------------------------------------------------------------   
  def update
    @time_logo -= 1
    if @time_logo <= 0
       @time_logo = 0
    end   
    if @logo.opacity < 30 and @logo_r == 1
       @logo.visible = false
       @logo.opacity = 0
       @logo.bitmap = RPG::Cache.title("")
    end
    if @bot.opacity < 30 and @command_window.active == true
       @bot.visible = false
       @bot2.visible = false
       @bot.bitmap.draw_text(0, 0, 32, 32,"")
       @bot2.bitmap.draw_text(0, 0, 32, 32,"")
    end   
    if @logo_r == 0 and @logo.opacity <= 250
    @logo.opacity += 2   
    elsif @time_logo <= 0 
    @logo_r = 1
    @logo.opacity -= 2
    @mb01.visible = true     
    @mb02.visible = true 
    @mb03.visible = true 
    @mb04.visible = true 
    @mb05.visible = true 
    @mb07.visible = true 
    @mb08.visible = true
    @com.visible = true
    @bot.opacity += 2
    @bot2.opacity +=  2
    Audio.me_fade(500)
    if @bot.opacity >= 255
       @bot.opacity = 255
       @bot2.opacity = 255       
    end 
    end   
    if MOG::RAND_MUSIC == true and @logo_r == 1 and @rs == 1
    @rs += 1
    case rand(3)
    when 0
    Audio.bgm_play("Audio/BGM/" + MOG::MUSIC1, 100, 100)
    when 1
    Audio.bgm_play("Audio/BGM/" + MOG::MUSIC2, 100, 100)
    when 2 
    Audio.bgm_play("Audio/BGM/" + MOG::MUSIC3, 100, 100)
    end
    else   
    if @logo_r == 1 and @rs == 1
    $game_system.bgm_play($data_system.title_bgm)
    @rs += 1
    end 
    end     
    if @command_window.active == true
    @bot.opacity -= 5
    @bot2.opacity -=  5
    @bot.x -= 5
    @bot2.x += 5
    @com.opacity += 2
    if @com.y > 0
       @com.y -= 5     
    elsif @com.y < 0
       @com.y = 0
       @com.opacity = 255
    end
    end
    r = rand(100) + 150
    g = rand(100) + 150
    b = rand(100) + 150
    @command_window.update
    @time += 2
    @time_zoom += 1
    if @time_zoom > 1000
       @time_zoom = 0
    end
    if @time_zoom > 500 and MOG::BACK_ZOOM == true
    @mb01.zoom_x += 0.004
    @mb01.zoom_y += 0.004
    if @mb01.zoom_x >= 2
       @mb01.zoom_x = 2
       @mb01.zoom_y = 2   
    end
    elsif MOG::BACK_ZOOM == true
    @mb01.zoom_x -= 0.004
    @mb01.zoom_y -= 0.004
    if @mb01.zoom_x <= 1
       @mb01.zoom_x = 1
       @mb01.zoom_y = 1   
    end
    end 
    @mb01.ox -= MOG::PIC_FD_OX
    @mb01.oy -= MOG::PIC_FD_OY
    @mb02.ox -= MOG::PIC_TEXTO_OX
    @mb02.oy -= MOG::PIC_TEXTO_OY
    @mb02.opacity += 2
    Graphics.frame_rate = MOG::PER
    if  @time < MOG::PIC_LEAF1_MOV and  MOG::PIC_LEAF1_RAND == true
    @mb07.ox += MOG::PIC_LEAF1_OX2
    @mb07.oy -= MOG::PIC_LEAF1_OY2
    else
    @mb07.ox -= MOG::PIC_LEAF1_OX1
    @mb07.oy -= MOG::PIC_LEAF1_OY1
    end 
    if  @time < MOG::PIC_LEAF2_MOV and  MOG::PIC_LEAF2_RAND == true
    @mb08.ox -= MOG::PIC_LEAF2_OX2
    @mb08.oy -= MOG::PIC_LEAF2_OY2
    else
    @mb08.ox += MOG::PIC_LEAF2_OX1
    @mb08.oy -= MOG::PIC_LEAF2_OY1
    end   
    if @time < MOG::PIC_FOG_MOV and  MOG::PIC_FOG_RAND == true
    @mb03.ox -= MOG::PIC_FOG_OX_02
    @mb03.oy -= MOG::PIC_FOG_OY_02 
    else
    @mb03.ox += MOG::PIC_FOG_OX_01
    @mb03.oy -= MOG::PIC_FOG_OY_01     
    end   
    if @time < MOG::PIC_FOG2_MOV and  MOG::PIC_FOG2_RAND == true
    @mb04.ox -= MOG::PIC_FOG2_OX_02
    @mb04.oy -= MOG::PIC_FOG2_OY_02
    else
    @mb04.ox -= MOG::PIC_FOG2_OX_01
    @mb04.oy -= MOG::PIC_FOG2_OY_01
    end
    if @time < MOG::PIC_FOG3_MOV and  MOG::PIC_FOG3_RAND == true
    @mb05.ox -= MOG::PIC_FOG3_OX_02
    @mb05.oy -= MOG::PIC_FOG3_OY_02
    else
    @mb05.ox -= MOG::PIC_FOG3_OX_01
    @mb05.oy -= MOG::PIC_FOG3_OY_01
    end
    @bot.color.set(r,g,b)   
    if @time > 400
       @time = 0
    end       
    if @rs == 0
    Audio.me_play("Audio/ME/" + MOG::LOGO_ME, 100, 100)
    @rs += 1
    end
    if @logo.opacity <= 100 and @logo_r == 1
    if Input.trigger?(Input::C) and @command_window.active == true
      case @command_window.index
      when 0 
        command_new_game
      when 1
        command_continue
      when 2 
        command_shutdown
      end
    elsif Input.trigger?(Input::C) and @command_window.active == false or
      Input.trigger?(Input::B) and @command_window.active  == false
      Audio.se_play("Audio/SE/" + MOG::T_B_SE)
      @command_window.active = true
    end
    end
    case @command_window.index
     when 0       
     @com.bitmap = RPG::Cache.title(MOG::COM + "_01")   
     when 1       
     @com.bitmap = RPG::Cache.title(MOG::COM + "_02")
     when 2       
     @com.bitmap = RPG::Cache.title(MOG::COM + "_03")   
     end
   end
#--------------------------------------------------------------------------
# Command_New_Game
#--------------------------------------------------------------------------     
  def command_new_game
    Audio.bgs_fade(800)
    $game_system.se_play($data_system.decision_se)
    Audio.bgm_stop
    Graphics.frame_count = 0
    $game_temp          = Game_Temp.new
    $game_system        = Game_System.new
    $game_switches      = Game_Switches.new
    $game_variables     = Game_Variables.new
    $game_self_switches = Game_SelfSwitches.new
    $game_screen        = Game_Screen.new
    $game_actors        = Game_Actors.new
    $game_party         = Game_Party.new
    $game_troop         = Game_Troop.new
    $game_map           = Game_Map.new
    $game_player        = Game_Player.new
    $game_party.setup_starting_members
    $game_map.setup($data_system.start_map_id)
    $game_player.moveto($data_system.start_x, $data_system.start_y)
    $game_player.refresh
    $game_map.autoplay
    $game_map.update
    $scene = Scene_Map.new
  end
#--------------------------------------------------------------------------
# Command_Continue
#--------------------------------------------------------------------------   
  def command_continue
    unless @continue_enabled
      $game_system.se_play($data_system.buzzer_se)
      return
    end
    Audio.bgs_fade(800)
    $game_system.se_play($data_system.decision_se)
    $scene = Scene_Load.new
  end
#--------------------------------------------------------------------------
# Command_Shutdown
#--------------------------------------------------------------------------   
  def command_shutdown
    $game_system.se_play($data_system.decision_se)
    Audio.bgm_fade(800)
    Audio.bgs_fade(800)
    Audio.me_fade(800)
    $scene = Scene_Story.new
  end
#--------------------------------------------------------------------------
# Battle_Test
#--------------------------------------------------------------------------   
  def battle_test
    $data_actors        = load_data("Data/BT_Actors.rxdata")
    $data_classes       = load_data("Data/BT_Classes.rxdata")
    $data_skills        = load_data("Data/BT_Skills.rxdata")
    $data_items         = load_data("Data/BT_Items.rxdata")
    $data_weapons       = load_data("Data/BT_Weapons.rxdata")
    $data_armors        = load_data("Data/BT_Armors.rxdata")
    $data_enemies       = load_data("Data/BT_Enemies.rxdata")
    $data_troops        = load_data("Data/BT_Troops.rxdata")
    $data_states        = load_data("Data/BT_States.rxdata")
    $data_animations    = load_data("Data/BT_Animations.rxdata")
    $data_tilesets      = load_data("Data/BT_Tilesets.rxdata")
    $data_common_events = load_data("Data/BT_CommonEvents.rxdata")
    $data_system        = load_data("Data/BT_System.rxdata")
    Graphics.frame_count = 0
    $game_temp          = Game_Temp.new
    $game_system        = Game_System.new
    $game_switches      = Game_Switches.new
    $game_variables     = Game_Variables.new
    $game_self_switches = Game_SelfSwitches.new
    $game_screen        = Game_Screen.new
    $game_actors        = Game_Actors.new
    $game_party         = Game_Party.new
    $game_troop         = Game_Troop.new
    $game_map           = Game_Map.new
    $game_player        = Game_Player.new
    $game_party.setup_battle_test_members
    $game_temp.battle_troop_id = $data_system.test_troop_id
    $game_temp.battle_can_escape = true
    $game_map.battleback_name = $data_system.battleback_name
    $game_system.se_play($data_system.battle_start_se)
    $game_system.bgm_play($game_system.battle_bgm)
    $scene = Scene_Battle.new
  end
end

$full_screen = 0
$mog_rgss_title_sofia = true


I tried some things but really, I do not understand the difficulties script...

Can someone help me out?

Scripts I am using:
- Blizz-ABS
- Custom Menu Scene's made by Moghunter
- Z-HUD and Moghunter's HUD
- Fake Save and Load screen
- Killcount Variable
- F12 Pause
- Combo Chains
- BABS Autotarget
- Custom Bars
- Actions
- Hit sprite
- Location Names
- Critical Hit Sound
- Custom 3 slot Save
- Custom Game Over

Please help me out, will credit!

The problem I have is that the window for choosing difficulties is in the top left corner, It is impossible to see, how do I center it?
Title: Re: Making Tons of Add-Ons Difficulties compatible with Moghunter's Title screen?
Post by: G_G on December 26, 2011, 01:39:27 pm
For future reference, here's how you center windows in the screen.
@window.x = 640 / 2 - @window.width / 2
@window.y = 480 / 2 - @window.height / 2
Title: Re: Making Tons of Add-Ons Difficulties compatible with Moghunter's Title screen?
Post by: Futendra on December 26, 2011, 05:52:52 pm
Quote from: game_guy on December 26, 2011, 01:39:27 pm
For future reference, here's how you center windows in the screen.
@window.x = 640 / 2 - @window.width / 2
@window.y = 480 / 2 - @window.height / 2


That didn't work, It was the first thing I did, the window is located using the top left corner, so I had to figure out where to place it to get it almost exactly in the middle. Thanks anyways!
Title: Re: Making Tons of Add-Ons Difficulties compatible with Moghunter's Title screen?
Post by: ForeverZer0 on December 26, 2011, 05:58:56 pm
x = (640 - @window.width) / 2
y = (480 - @window.height) / 2