MOG MPW Map Name V1.3

16 de junho de 2015

Se você está procurando um script para o seu projeto de RPG Maker XP que mostra o nome do mapa onde o herói está, você pode tentar o MOG MPW Map Name, do Moghunter.

Uma vez instalado em seu game, ele faz a apresentação automática do nome do mapa com de efeito Fade e Move.

Instalação

Primeiro, copie a imagem abaixo para a pasta Graphics/Pictures, do seu projeto:

Mpname

Depois, insira o código abaixo acima do “Main”, na parte de scripts:

#_______________________________________________________________________________
# MOG_MPW Map_Name V1.3            
#_______________________________________________________________________________
# By Moghunter       
# http://www.atelier-rgss.com
#_______________________________________________________________________________
module MOG
#Font Name.
MPFONT = "Georgia"
#Fade ON/OFF(True - False).
MPNMFD = true
#Fade Time.
MPNMTM = 7
#Window Position.
# 0 = Upper Left.
# 1 = Lower Left.
# 2 = Upper Right.
# 3 = Lower Right.
MPNMPS = 3
# Disable Window Switch(ID).
WM_SWITCH_VIS_DISABLE = 15
end
#_________________________________________________
$mogscript = {} if $mogscript == nil
$mogscript["mpmapname"] = true
#############
# Game_Temp #            
#############
class Game_Temp
attr_accessor :fdtm
attr_accessor :mpnm_x
attr_accessor :mpnm_y
alias mog24_initialize initialize
def initialize
mog24_initialize
@fdtm = 255 + 40 * MOG::MPNMTM
if MOG::MPNMPS == 0 
@mpnm_x = -300
@mpnm_y = 0
elsif MOG::MPNMPS == 1
@mpnm_x = -300
@mpnm_y = 380
elsif MOG::MPNMPS == 2
@mpnm_x = 640
@mpnm_y = 0
else 
@mpnm_x = 640
@mpnm_y = 380
end  
end
end
############
# Game_Map #
############
class Game_Map
attr_reader   :map_id  
def mpname
$mpname = load_data("Data/MapInfos.rxdata") 
$mpname[@map_id].name
end
end
###############
# Window Base #
###############
class Window_Base < Window
def nd_mapic 
mapic = RPG::Cache.picture("")     
end  
def draw_mpname(x,y)
mapic = RPG::Cache.picture("Mpname") rescue nd_mapic   
cw = mapic.width  
ch = mapic.height 
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x , y - ch + 65, mapic, src_rect)
self.contents.font.name = MOG::MPFONT
self.contents.font.size = 22
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 76, y + 27, 110, 32, $game_map.mpname.to_s,1)
self.contents.font.color = Color.new(255,255,255,255)
self.contents.draw_text(x + 75, y + 26, 110, 32, $game_map.mpname.to_s,1)
end
end
##########
# Mpname #
##########
class Mpname < Window_Base
def initialize
super($game_temp.mpnm_x, $game_temp.mpnm_y, 250, 100)
self.contents = Bitmap.new(width - 32, height - 32)
self.opacity = 0
refresh
end
def refresh
self.contents.clear
draw_mpname(10,0)    
end
end
#############
# Scene_Map #
#############
class Scene_Map
alias mog24_main main
def main
@mpnm = Mpname.new
@mpnm.contents_opacity = $game_temp.fdtm
if $game_switches[MOG::WM_SWITCH_VIS_DISABLE] == false
@mpnm.visible = true
else
@mpnm.visible = false  
end  
mog24_main
@mpnm.dispose
end
alias mog24_update update
def update
mog24_update  
$game_temp.mpnm_x = @mpnm.x
$game_temp.mpnm_y = @mpnm.y
if $game_switches[MOG::WM_SWITCH_VIS_DISABLE] == false
if $game_temp.fdtm <= 0
@mpnm.visible = false  
else
@mpnm.visible = true  
end 
else
@mpnm.visible = false  
end 
if MOG::MPNMPS == 0 or MOG::MPNMPS == 1 
if @mpnm.x < 0
   @mpnm.x += 8
elsif @mpnm.x >= 0
   @mpnm.x = 0
end   
else
if @mpnm.x > 400
   @mpnm.x -= 8
elsif @mpnm.x <= 400
   @mpnm.x = 400
end     
end 
@mpnm.contents_opacity = $game_temp.fdtm
if MOG::MPNMFD == true
$game_temp.fdtm -= 3
end
end
alias mog24_transfer_player transfer_player
def transfer_player
mog24_transfer_player
if MOG::MPNMPS == 0 
$game_temp.mpnm_x = -300
$game_temp.mpnm_y = 0
elsif MOG::MPNMPS == 1
$game_temp.mpnm_x = -300
$game_temp.mpnm_y = 380
elsif MOG::MPNMPS == 2
$game_temp.mpnm_x = 640
$game_temp.mpnm_y = 0
else 
$game_temp.mpnm_x = 640
$game_temp.mpnm_y = 380
end  
@mpnm.y = $game_temp.mpnm_y
@mpnm.x = $game_temp.mpnm_x
$game_temp.fdtm = 255 + 40 * MOG::MPNMTM
@mpnm.refresh
end
end

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!