luistop12Sáb Ene 19, 2013 11:34 pm
SUPER MODERADOR
Bien les traigo una pantalla de estado estilo Cozziekuns, esto hace que se muestre una foto al fondo de la pantalla de estado, la imagen puede ser la que tu elijas
¿como se usa?
así Ithan_bg, tunombre_bg
¿vez?
cualquie duda me dices y ya
screen
script
credito:Cozziekuns
¿como se usa?
así Ithan_bg, tunombre_bg
¿vez?
cualquie duda me dices y ya
screen
script
- Código:
#===============================================================================
#
# Cozziekuns' Status Screen
# Last Date Updated: 11/28/2010
#
# A status screen. A nice looking one at that.
#
#===============================================================================
# Updates
# -----------------------------------------------------------------------------
# o 18/07/11 - Updated Script.
# o 11/28/10 - Started Script.
#===============================================================================
# What's to come?
# -----------------------------------------------------------------------------
# o I dunno. You tell me!
#===============================================================================
# Instructions
# -----------------------------------------------------------------------------
# To install this script, open up your script editor and copy/paste this script
# to an open slot below ? Materials but above ? Main. Remember to save. You can
# edit the modules as you wish.
#
# The background images should be of size 544 * 416. When importing a background
# image, import it to the folder Graphics/Pictures. The name of the actor should
# be on the name of the file, followed by _bg.
#
# Example: Raven_bg
#===============================================================================
module COZZIEKUNS
BACKGROUND_OPACITY = 100
HP_ICON = 99
MP_ICON = 100
EXP_ICON = 98
LEVEL_ICON = 62
ATTACK_ICON = 26
DEFENSE_ICON = 52
SPIRIT_ICON = 20
AGILITY_ICON = 49
CLASS_ICONS ={
0 => 0,
1 => 16,
2 => 32,
3 => 21,
4 => 8,
}
BIOGRAPHIES ={
# Actor => Biography
0 => "I like pie.",
1 => "Our average hero who hails from a family that lives in poverty.",
2 => "Our hero's best friend, but sometimes worst rival. Can be irrational at times.",
3 => "Our 3rd hero, a magician with a nice personality, and has powerful skills to boot.",
4 => "Our 4th hero, a thief shrouded in mystery. Not much is known about Sora, except she's damn pro.",
}
end
#==============================================================================
# ** Window_Base
#------------------------------------------------------------------------------
# This is a superclass of all windows in the game.
#==============================================================================
class Window_Base < Window
#--------------------------------------------------------------------------
# * Get Exp Gauge Colour 1
#--------------------------------------------------------------------------
def exp_gauge_colour1
return text_color(7)
end
#--------------------------------------------------------------------------
# * Get Exp Gauge Colour 2
#--------------------------------------------------------------------------
def exp_gauge_colour2
return text_color(8)
end
end
#==============================================================================
# ** Window_Status
#------------------------------------------------------------------------------
# This window displays full status specs on the status screen.
#==============================================================================
class Window_Status < Window_Base
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
self.contents.clear
draw_actor_back(@actor, 0, 0)
unless Input.press?(Input::A)
@hp_icon = COZZIEKUNS::HP_ICON
@mp_icon = COZZIEKUNS::MP_ICON
@exp_icon = COZZIEKUNS::EXP_ICON
@level_icon = COZZIEKUNS::LEVEL_ICON
@atk_icon = COZZIEKUNS::ATTACK_ICON
@def_icon = COZZIEKUNS::DEFENSE_ICON
@spi_icon = COZZIEKUNS::SPIRIT_ICON
@agi_icon = COZZIEKUNS::AGILITY_ICON
draw_actor_name(@actor, 4, 0)
draw_actor_class(@actor, 160, 0)
draw_icon(62, 128, 32)
draw_icon(98, 128, WLH * 3 + 32)
draw_icon(99, 128, WLH + 32)
draw_icon(100, 128, WLH * 2 + 32)
draw_icon(26, 320, 33)
draw_icon(52, 320, 33 + WLH + 1)
draw_icon(20, 320, 33 + WLH * 2 + 2)
draw_icon(49, 320, 33 + WLH * 3 + 3)
if COZZIEKUNS::CLASS_ICONS.include?(@actor.id)
@icon_number = COZZIEKUNS::CLASS_ICONS[@actor.id]
else
@icon_number = COZZIEKUNS::CLASS_ICONS[0]
end
draw_icon(@icon_number, 128, 0)
draw_actor_face(@actor, 8, 32)
draw_basic_info(160, 32)
draw_parameters(352, 32)
draw_actor_tnl(@actor, 160, WLH * 3 + 32)
draw_equipments(288, 154)
self.contents.font.color = system_color
self.contents.draw_text(320, 0, 80, WLH, "Status:", 0)
end
end
#--------------------------------------------------------------------------
# * Draw Basic Information
# x : Draw spot X coordinate
# y : Draw spot Y coordinate
#--------------------------------------------------------------------------
def draw_basic_info(x, y)
draw_actor_level(@actor, x, y + WLH * 0)
draw_actor_state(@actor, 400, 0)
draw_actor_hp(@actor, x, y + WLH * 1)
draw_actor_mp(@actor, x, y + WLH * 2)
end
#--------------------------------------------------------------------------
# * Draw Actor Back
# actor : the actor you want
# x : draw spot x-coordinate
# y : draw spot y-coordinate
#--------------------------------------------------------------------------
def draw_actor_back(actor, x, y)
@background_opacity = COZZIEKUNS::BACKGROUND_OPACITY
bitmap = Cache.picture(actor.name + "_bg")
rect = Rect.new(0, 0, 544,416)
self.contents.blt(x, y, bitmap, rect, @background_opacity)
bitmap.dispose
end
#--------------------------------------------------------------------------
# * Draw Equipment
# x : Draw spot X coordinate
# y : Draw spot Y coordinate
#--------------------------------------------------------------------------
def draw_equipments(x, y)
self.contents.font.color = system_color
self.contents.draw_text(x, y, 120, WLH, Vocab::equip + "s:")
for i in 0..4
draw_item_name(@actor.equips[i], x + 16, y + 11 + WLH * (i + 1))
end
end
#--------------------------------------------------------------------------
# * Draw TNL (To next level)
# actor : actor
# x : draw spot x-coordinate
# y : draw spot y-coordinate
# width : Width
#--------------------------------------------------------------------------
def draw_actor_tnl(actor, x, y, width = 120)
draw_actor_tnl_gauge(actor, x, y, width)
self.contents.font.color = system_color
self.contents.draw_text(x, y, 30, WLH, "E")
self.contents.font.color = hp_color(actor)
last_font_size = self.contents.font.size
xr = x + width
if width < 120
self.contents.draw_text(xr - 44, y, 44, WLH, actor.exp_s, 2)
else
self.contents.draw_text(xr - 99, y, 44, WLH, actor.exp_s, 2)
self.contents.font.color = normal_color
self.contents.draw_text(xr - 55, y, 11, WLH, "/", 2)
self.contents.draw_text(xr - 44, y, 44, WLH, actor.next_exp_s, 2)
end
end
#--------------------------------------------------------------------------
# * Draw TNL gauge
# actor : actor
# x : draw spot x-coordinate
# y : draw spot y-coordinate
# width : Width
#--------------------------------------------------------------------------
def draw_actor_tnl_gauge(actor, x, y, width = 120)
gw = width * actor.exp_s / actor.next_exp_s
gc1 = exp_gauge_colour1
gc2 = exp_gauge_colour2
self.contents.fill_rect(x, y + WLH - 8, width, 6, gauge_back_color)
self.contents.gradient_fill_rect(x, y + WLH - 8, gw, 6, gc1, gc2)
end
#--------------------------------------------------------------------------
# * Update
#--------------------------------------------------------------------------
def update
super
refresh
end
end
#==============================================================================
# ** Window_Biography
#------------------------------------------------------------------------------
# Basically what Yanfly did. Kudos to you, Yanfly.
#==============================================================================
class Window_Biography < Window_Base
#--------------------------------------------------------------------------
# * Initalize
#--------------------------------------------------------------------------
def initialize(actor)
super(0, 154, 288, 416)
@actor = actor
self.opacity = 0
refresh
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
self.contents.clear
unless Input.press?(Input::A)
self.contents.font.color = system_color
self.contents.draw_text(4, 0, 284, WLH, "Biography:", 0)
self.contents.font.color = normal_color
self.contents.font.size = 20
if COZZIEKUNS::BIOGRAPHIES.include?(@actor.id)
text = COZZIEKUNS::BIOGRAPHIES[@actor.id]
else
text = COZZIEKUNS::BIOGRAPHIES[0]
end
self.contents.draw_paragraph(4, 32, 252, WLH * 4, text)
end
end
#--------------------------------------------------------------------------
# * Update
#--------------------------------------------------------------------------
def update
super
refresh
end
end
#==============================================================================
# ** Window_Status_Help
#------------------------------------------------------------------------------
# Helps you out, I guess...
#==============================================================================
class Window_StatusHelp < Window_Base
#--------------------------------------------------------------------------
# * Initalize
#--------------------------------------------------------------------------
def initialize(x, y)
super(x, y, 544, 60)
refresh
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
self.contents.draw_text(4, 0, 544, WLH, "Press Q and W to switch characters. Press X to exit.")
end
end
#==============================================================================
# ** Game_Actor
#------------------------------------------------------------------------------
# This class handles actors. It's used within the Game_Actors class
# ($game_actors) and referenced by the Game_Party class ($game_party).
#==============================================================================
class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
# * Get Experience String
#--------------------------------------------------------------------------
def exp_s
return @exp_list[@level+1] > 0 ? @exp : 1
end
#--------------------------------------------------------------------------
# * Get String for Next Level Experience
#--------------------------------------------------------------------------
def next_exp_s
return @exp_list[@level+1] > 0 ? @exp_list[@level+1] : 1
end
#--------------------------------------------------------------------------
# * Get String for Experience to Next Level
#--------------------------------------------------------------------------
def next_rest_exp_s
return @exp_list[@level+1] > 0 ? (@exp_list[@level+1] - @exp) : 1
end
end
#==============================================================================
# ** Scene_Status
#------------------------------------------------------------------------------
# This class performs the status screen processing.
#==============================================================================
class Scene_Status < Scene_Base
#--------------------------------------------------------------------------
# * Start processing
#--------------------------------------------------------------------------
alias coz_ssw_ss_start start
def start
coz_ssw_ss_start
@bio_window = Window_Biography.new(@actor)
@statushelp_window = Window_StatusHelp.new(0, 356)
end
#--------------------------------------------------------------------------
# * Termination Processing
#--------------------------------------------------------------------------
alias coz_ssw_ss_terminate terminate
def terminate
coz_ssw_ss_terminate
@bio_window.dispose
@statushelp_window.dispose
end
#--------------------------------------------------------------------------
# * Update Processing
#--------------------------------------------------------------------------
alias coz_ssw_ss_update update
def update
coz_ssw_ss_update
@bio_window.update
@statushelp_window.update
end
end
credito:Cozziekuns