Esse tutorial serve para fazer com que na tela apareça o nome do seu personagem + a sua classe.
Esse sistema foi pedido pelo Wuudzin Santos, mais postei aqui pq ficou muito grande.
Se vc ainda não edito os scripts [NET] Network e [EXT] Event Text Display que vem original do netplay, faça o tutorial 1 se vc ja edito alguma coisa neles use o tutorial 2
Tutorial 1
Substitua o script [EXT] Event Text Display por esse:
Esse sistema foi pedido pelo Wuudzin Santos, mais postei aqui pq ficou muito grande.
Se vc ainda não edito os scripts [NET] Network e [EXT] Event Text Display que vem original do netplay, faça o tutorial 1 se vc ja edito alguma coisa neles use o tutorial 2
Tutorial 1
Substitua o script [EXT] Event Text Display por esse:
- Código:
#==============================================================================
# ** Event Text Display
#==============================================================================
# Created By: Áص¹
# Modified By: SephirothSpawn
# Modified By: Me™
# Modified By: Valentine
# Version 2.1
# 2006-03-04
#==============================================================================
# * Instructions :
#
# ~ Creating Event With Test Display
# - Put a Comment on the Page With
# [Name____]
# - Place Text to Be Displayed in the Blank
#------------------------------------------------------------------------------
# * Customization :
#
# ~ NPC Event Colors
# - Event_Color = Color
#
# ~ Player Event Color
# - Player_Color = Color
#
# ~ Player Text
# - Player_Text = text_display *
#
# ~ text_display
# - 'Name', 'Class', 'Level', 'Hp', 'Sp'
#==============================================================================
#------------------------------------------------------------------------------
# * SDK Log Script
#------------------------------------------------------------------------------
SDK.log('Event Text Display', 'SephirothSpawn', 2, '2006-03-04')
#------------------------------------------------------------------------------
# * Begin SDK Enable Test
#------------------------------------------------------------------------------
if SDK.state('Event Text Display') == true
#==============================================================================
# ** Game_Character
#==============================================================================
class Game_Character
#--------------------------------------------------------------------------
# * Dispaly Text Color (Event & Player)
#--------------------------------------------------------------------------
Event_Color = User_Edit::EVENT_COLOR#Color.new(0, 200, 0)
ADM_Color = User_Edit::ADM_COLOR#Color.new(250, 250, 0)
Player_Color = User_Edit::PLAYER_COLOR#Color.new(255, 255, 255)
#--------------------------------------------------------------------------
# * Display Choices
# ~ 'Name', 'Class', 'Level', 'Hp', 'Sp'
#--------------------------------------------------------------------------
Player_Text = 'Name'
#--------------------------------------------------------------------------
# * Public Instance Variables
#--------------------------------------------------------------------------
attr_accessor :text_display
end
#==============================================================================
# ** Game_Event
#==============================================================================
class Game_Event < Game_Character
#--------------------------------------------------------------------------
# * Alias Listings
#--------------------------------------------------------------------------
alias seph_characterdisplay_gevent_refresh refresh
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
# Original Refresh Method
seph_characterdisplay_gevent_refresh
# Checks to see if display text
# If the name contains CD, it takes the rest of the name as the text
unless @list.nil?
for i in 0...@list.size
if @list[i].code == 108
@list[i].parameters[0].dup.gsub!(/Name (.*)/) do
@text_display = [$1, Event_Color]
end
end
end
end
@text_display = nil if @erased
end
end
#==============================================================================
# ** Game_Player
#==============================================================================
class Game_Player < Game_Character
#--------------------------------------------------------------------------
# * Alias Listings
#--------------------------------------------------------------------------
alias seph_characterdisplay_gplayer_refresh refresh
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
# Original Refresh Method
seph_characterdisplay_gplayer_refresh
# Gets First Actor
name = $game_party.actors[0]
# Determines Text
case Player_Text
when 'Name'
txt = $game_party.actors[0].name + " - #{$data_classes[$game_party.actors[0].class_id].name}"
when 'Class'
txt = actor.class_name
when 'Level'
txt = "Level: #{actor.level}"
when 'Hp'
txt = "HP: #{actor.hp} / #{actor.maxhp}"
when 'Sp'
txt = "SP: #{actor.sp} / #{actor.maxsp}"
else
txt = ''
end
# Creates Text Display
if Network::Main.group == 'admin' and User_Edit::COLOR_ADMIN == true
@text_display = [txt, ADM_Color]
else
@text_display = [txt, Player_Color]
end
end
end
#==============================================================================
# ** Sprite_Character
#==============================================================================
class Sprite_Character < RPG::Sprite
#--------------------------------------------------------------------------
# * Alias Listings
#--------------------------------------------------------------------------
alias seph_characterdisplay_scharacter_update update
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
# Original update Method
seph_characterdisplay_scharacter_update
# Character Display Update Method
update_display_text
end
#--------------------------------------------------------------------------
# * Create Display Sprite
#--------------------------------------------------------------------------
def create_display_sprite(args)
# Creates Display Bitmap
bitmap = Bitmap.new(160, 24)
bitmap.font.size = 15
#bitmap.width = args[0].size+32
# Draws Text Shadow
bitmap.font.draw_shadow = false if bitmap.font.respond_to?(:draw_shadow)
bitmap.font.color = Color.new(0, 0, 0)
bitmap.draw_text(1, 1, 160, 24, args[0], 1)
bitmap.font.color = args[1]
# Draws Text
bitmap.draw_text(0, 0, 160, 24, args[0], 1)
# Creates Display Text Sprite
@_text_display = Sprite.new(self.viewport)
@_text_display.bitmap = bitmap
#@_text_display.opacity = 180
@_text_display.ox = 80
@_text_display.oy = 20
@_text_display.x = self.x
@_text_display.y = self.y - self.oy / 2 - 24
@_text_display.z = 30001
@_text_display.visible = self.visible #true
end
def create_display_guild(args)
# Creates Display Bitmap
bitmap = Bitmap.new(160, 24)
bitmap.font.name = "Comic Sans MS"
bitmap.font.size = 15
actor = $game_party.actors[0]
# Draws Text Shadow
if bitmap.font.respond_to?(:draw_shadow)
bitmap.font.draw_shadow = false
end
bitmap.font.color = Color.new(0, 0, 0)
bitmap.draw_text(6, 1, 160, 24, actor.guild, 1)
#bitmap.fill_rect(actor.guild.size*8+3,5,actor.guild.getw,13, Color.new(40, 40, 40))
# Changes Font Color
#bitmap.font.color = Color.new(0,0,0)
#bitmap.draw_text(-1, 2-1, 160, 20, actor.guild, 1)
#bitmap.draw_text(+1, 2-1, 160, 20, actor.guild, 1)
#bitmap.draw_text(-1, 2+1, 160, 20, actor.guild, 1)
#bitmap.draw_text(+1, 2+1, 160, 20, actor.guild, 1)
bitmap.font.color = args[0]
# Draws Text
if $flag == "cinco"
icon = RPG::Cache.icon("Mini-Flag5")
elsif $flag == "quatro"
icon = RPG::Cache.icon("Mini-Flag4")
elsif $flag == "treis"
icon = RPG::Cache.icon("Mini-Flag3")
elsif $flag == "dois"
icon = RPG::Cache.icon("Mini-Flag2")
elsif $flag == "um"
icon = RPG::Cache.icon("Mini-Flag1")
else
icon = RPG::Cache.icon("Mini-Flag1")
end
bitmap.blt(55-actor.guild.size,8,icon,icon.rect)
bitmap.draw_text(5, 0, 160, 24, actor.guild, 1)
$old_guild = args[0]
# Creates Display Text Sprite
@_g_display = Sprite.new(self.viewport)
@_g_display.bitmap = bitmap
#@_g_display.opacity = 180
@_g_display.ox = 80
@_g_display.oy = 22
@_g_display.x = self.x
@_g_display.y = self.y - self.oy / 2 - 24
@_g_display.z = 30001
@_g_display.visible = self.visible #true
end
#--------------------------------------------------------------------------
# * Dispose Display Sprite
#--------------------------------------------------------------------------
def dispose_display_text
@_text_display.dispose unless @_text_display.nil?
end
#--------------------------------------------------------------------------
# * Update Display Sprite
#--------------------------------------------------------------------------
def update_display_text
unless @character.text_display.nil?
create_display_sprite(@character.text_display) if @_text_display.nil?
@_text_display.x = self.x
@_text_display.y = self.y - self.oy / 2 - 24
else
dispose_display_text unless @_text_display.nil?
end
unless !@character.is_a?(Game_Player)
if $guild_name != ""
if @_g_display.nil? and User_Edit::GUILD_NAME == true
create_display_guild([User_Edit::GUILD_COLOR])#Color.new(0,0,200)])
end
if User_Edit::GUILD_NAME == true
@_g_display.x = self.x
@_g_display.y = self.y - self.oy / 2 - 35
end
end
#unless @_g_display.nil?
#@_g_display.dispose
#end
end
end
end
#--------------------------------------------------------------------------
# * End SDK Enable Test
#--------------------------------------------------------------------------
end
Última edição por gladistony em Sex maio 25, 2012 10:22 am, editado 2 vez(es)