MOG Enemy Level System V1.1

3 de abril de 2014

MOG Enemy Level System é um script para o RPG Maker XP, desenvolvido pelo Moghunter, que adiciona um sistema de nível de poder dos monstros. Ou seja, um monstro pode ser mais forte ou mais fraco, dependendo de como for usado o script.

Os atributos do inimigo são baseados no nível do personagem ou na média do grupo. Você pode ativar ou desativar esse sistema a hora que quiser pelo switch. Isso é útil caso quisermos usar esse sistema apenas em chefões, etc.

Screenshot

MOG Enemy Level System

Utilização E Instalação

As customizações estão logo no começo do script. Por default o sistema de níveis já está ativado. Se quiser desativa-lo basta ativar a switch de desativação como True.

Para instalar, basta inserir o código abaixo acima do Main:

#_________________________________________________
# MOG_Enemy Level V1.2            
#_________________________________________________
# By Moghunter          
# http://www.atelier-rgss.com
#_________________________________________________
# Os atributos do inimigo são baseados no nível 
#do personagen(Ou na média do Grupo).
#_________________________________________________
module MOG
  ##########  
  # SET-UP #
  ##########
  # Você também pode ativar o sistema de level apenas nos
  #chefes, ativando ou desativando a Switch abaixo.
  #Definição ID da Switch que desativa o sistema de level.
  ENLV_DIS = 15 
  #_________________________________________________
  # Defina abaixo o valor que será multiplicado pelo
  #level do personagem.
  #Base de calculo que o inimigo ganhará por level.
  # 1 = aumenta 0 % 
  # 1.1 = aumenta 10% 
  # 1.01 = aumenta 1%
  #_________________________________________________
  ELV_HP = 1.01     # HP
  ELV_SP = 1.01     # SP
  ELV_STR = 1.01    # STR
  ELV_DEX = 1.01    # DEX
  ELV_AGI = 1.01    # AGI
  ELV_INT = 1.01    # INT
  ELV_ATK = 1.01    # ATK
  ELV_PDEF = 1.01   # PDEF
  ELV_MDEF = 1.01   # MDEF
  ELV_EVA = 1.0     # EVA
end

#===============================================================================
# Game_Enemy
#===============================================================================
class Game_Enemy < Game_Battler
include MOG
#--------------------------------------------------------------------------
# enemy_lv
#--------------------------------------------------------------------------        
  def enemy_lv(type)
    for i in 0...$game_party.actors.size
    actor = $game_party.actors[i]
      if  $game_switches[MOG::ENLV_DIS] == false
        case type
        when 0
          return actor.level * ELV_HP
        when 1
          return actor.level * ELV_SP
        when 2
          return actor.level * ELV_STR
        when 3
          return actor.level * ELV_DEX
        when 4
          return actor.level * ELV_AGI
        when 5
          return actor.level * ELV_INT
        when 6
          return actor.level * ELV_ATK
        when 7
          return actor.level * ELV_PDEF
        when 8
          return actor.level * ELV_MDEF
        when 9
          return actor.level * ELV_EVA
        end  
      else
        case type  
        when 0..9
          return 1
        end    
      end
    end
  end
#--------------------------------------------------------------------------
# base_maxhp
#--------------------------------------------------------------------------          
  def base_maxhp
    return $data_enemies[@enemy_id].maxhp * enemy_lv(0)
  end
#--------------------------------------------------------------------------
# base_maxsp
#--------------------------------------------------------------------------            
  def base_maxsp
    return $data_enemies[@enemy_id].maxsp * enemy_lv(1)
  end
#--------------------------------------------------------------------------
# base_str
#--------------------------------------------------------------------------              
  def base_str
    return $data_enemies[@enemy_id].str * enemy_lv(2)
  end
#--------------------------------------------------------------------------
# base_dex
#--------------------------------------------------------------------------                
  def base_dex
    return $data_enemies[@enemy_id].dex * enemy_lv(3)
  end
#--------------------------------------------------------------------------
# base_agi
#--------------------------------------------------------------------------                  
  def base_agi
    return $data_enemies[@enemy_id].agi * enemy_lv(4)
  end
#--------------------------------------------------------------------------
# base_int
#--------------------------------------------------------------------------                  
  def base_int
    return $data_enemies[@enemy_id].int * enemy_lv(5)
  end
#--------------------------------------------------------------------------
# base_atk
#--------------------------------------------------------------------------                  
  def base_atk
    return $data_enemies[@enemy_id].atk * enemy_lv(6)
  end
#--------------------------------------------------------------------------
# base_pdef
#--------------------------------------------------------------------------                  
  def base_pdef
    return $data_enemies[@enemy_id].pdef * enemy_lv(7)
  end
#--------------------------------------------------------------------------
# base_mdef
#--------------------------------------------------------------------------                  
  def base_mdef
    return $data_enemies[@enemy_id].mdef * enemy_lv(8)
  end
#--------------------------------------------------------------------------
# base_eva
#--------------------------------------------------------------------------                  
  def base_eva
    return $data_enemies[@enemy_id].eva * enemy_lv(9)
  end
end

$mog_rgss_enemy_level = true

Observação: se você gostou deste post ou ele lhe foi útil de alguma forma, por favor considere apoiar financeiramente a Gaming Room. Fico feliz só de ajudar, mas a contribuição do visitante é muito importante para que este site continua existindo e para que eu possa continuar provendo este tipo de conteúdo e melhorar cada vez mais. Clique aqui e saiba como. Obrigado!

Deixe um comentário

Inscreva-se na nossa newsletter!