+4
MasterOp
IsraTwerknov
DevWithCoffee
Kies
8 participantes
[Kies~] Windows Top Perfect
Manticora- Membro Ativo
- Mensagens : 261
Créditos : 62
Ficha do personagem
Nível: 1
Experiência:
(0/0)
Vida:
(30/30)
- Mensagem nº11
Re: [Kies~] Windows Top Perfect
Kies- Diva
- Mensagens : 1155
Créditos : 124
Ficha do personagem
Nível: 1
Experiência:
(0/0)
Vida:
(30/30)
- Mensagem nº12
Re: [Kies~] Windows Top Perfect
Mas meu sistema não muda nada nesse script que da erro!
Kincy- Membro Ativo
- Mensagens : 288
Créditos : 31
Ficha do personagem
Nível: 1
Experiência:
(0/0)
Vida:
(30/30)
- Mensagem nº13
Re: [Kies~] Windows Top Perfect
Ficou maravilhoso, um ótimo sistema para atualizar a customização, muito obrigado! +REP
IsraTwerknov- Iniciante
- Mensagens : 40
Créditos : 5
Ficha do personagem
Nível: 1
Experiência:
(0/0)
Vida:
(30/30)
- Mensagem nº14
Re: [Kies~] Windows Top Perfect
Vc precisa adequar ele á 1.5. Ele da um conflito já que o VS Sprite_help mudou para Sprite_Desc.Kies escreveu:Olá a todos esse sistema é uma modificação que permite aumentar o tamanho das BAR da window aumentando ainda mais a customização da janela.Compatibilidade: 1.4AO TUTORIAL:Explicando o PSD:Link PSD
- O PSD:
- Alterando a COR:
Nos Spoiler acima, mostro um pouco de como o PSD é e de como alterar a COR do PSD.Dando continuidade:Agora procure [VS] Widnow_Base e substitua tudo por
- Código:
#==============================================================================
# ** Window_Base
#------------------------------------------------------------------------------
# Esta é a superclasse de todas as janelas do jogo.
#------------------------------------------------------------------------------
# Autor: Valentine
#==============================================================================
class Window_Base < Window
attr_reader :controls
def init_features
@dragable = true
@closable = false
@controls = []
@old_item = nil
@dif_x = nil
@dif_y = nil
end
def create_help
@help_sprite = Sprite_Help.new
@help_sprite.z = z + 2
end
def closable=(closable)
@closable = closable
end
def in_border_area?
in_area?(0, -30, width - 40, 40)
end
def title=(title)
dispose_title
@title = Sprite.new
#Posição X
@title.x = x
#Posição Y + Update
@title.y = y - 30
@title.z = z + 1
@title.visible = visible
#Tamanho do Bitmap
@title.bitmap = Bitmap.new(width, 40)
#Arquivo do Title
bitmap = Cache.system('TitleBar')
#Bitmap lado Esquerdo
@title.bitmap.blt(0, 0, bitmap, Rect.new(0, 0, 4, 40))
#Bitmap Centro
@title.bitmap.stretch_blt(Rect.new(4, 0, @title.bitmap.width - 8, 40), bitmap, Rect.new(4, 0, 32, 40))
#Bitmap Direito
@title.bitmap.blt(@title.bitmap.width - 4, 0, bitmap, Rect.new(36, 0, 4, 40))
#Bitmap Close btn
@title.bitmap.blt(@title.bitmap.width - 42, 0, bitmap, Rect.new(40, 0, 40, 40)) if @closable
#Title
@title.bitmap.draw_text(@title.bitmap.rect, title, 1)
end
def dispose_features
@controls.each(&:dispose)
dispose_help
dispose_title
end
def dispose_help
return unless @help_sprite
@help_sprite.bitmap.dispose
@help_sprite.dispose
end
def dispose_title
return unless @title
@title.bitmap.dispose
@title.dispose
end
def line_height
18
end
def show_help(item)
return if @old_item == item
@help_sprite.refresh(item)
@old_item = item
end
def hide_help
@help_sprite.visible = false
@old_item = nil
end
def trigger
self.visible ? hide : show
end
def show
self.visible = true
@title.visible = true if @title
@controls.each { |control| control.visible = true }
refresh
end
def hide
self.visible = false
@title.visible = false if @title
@controls.each { |control| control.visible = false }
hide_help if @help_sprite
end
def hide_window
hide
end
def draw_shadow(x, y)
bitmap = Cache.system('Shadow')
contents.blt(x, y, bitmap, bitmap.rect)
end
def draw_actor_graphic(actor, x, y)
draw_character(actor.character_name, actor.character_index, x, y)
draw_paperdolls(actor, x, y)
end
def draw_paperdolls(actor, x, y)
[3, 5, 2, 7, 6, 8, 1, 0, 4].each do |slot_id|
next unless actor.equips[slot_id]
draw_paperdoll(actor.equips[slot_id].paperdoll_name, actor.equips[slot_id].paperdoll_index, x, y)
end
end
def draw_paperdoll(paperdoll_name, paperdoll_index, x, y)
return unless paperdoll_name
bitmap = Cache.paperdoll(paperdoll_name)
sign = paperdoll_name[/^[\!\$]./]
if sign && sign.include?('$')
cw = bitmap.width / 3
ch = bitmap.height / 4
else
cw = bitmap.width / 12
ch = bitmap.height / 8
end
src_rect = Rect.new((paperdoll_index % 4 * 3 + 1) * cw, (paperdoll_index / 4 * 4) * ch, cw, ch)
contents.blt(x - cw / 2, y - ch, bitmap, src_rect)
end
def refresh
end
def in_area?(x = 0, y = 0, w = width, h = height)
Mouse.x >= self.x + x && Mouse.x <= self.x + x + w && Mouse.y >= self.y + y && Mouse.y <= self.y + y + h
end
def convert_gold(value)
value.to_s.reverse.scan(/...|..|./).join('.').reverse
end
def word_wrap(text, width = contents_width)
# Corrige a compressão de texto do RGD
width -= 20
bitmap = contents || Bitmap.new(1, 1)
return [text] if bitmap.text_size(text).width <= width
# Tamanho padrão dos caracteres
default_c_size = bitmap.text_size('a').width
lines = []
line = ''
line_size = 0
text.each_line(' ') do |word|
word_size = bitmap.text_size(word).width
if word_size > width
line, lines = character_wrap(word, width, line, lines, default_c_size)
elsif line_size + word_size <= width
line << word
line_size += word_size
else
lines << line
line = word
line_size = word_size
end
end
bitmap.dispose unless contents
lines << line
end
def character_wrap(word, width, line, lines, default_c_size)
cs = ''
cs_size = 0
word.each_char do |c|
if cs_size + default_c_size <= width
cs << c
cs_size += default_c_size
else
lines << line unless line.empty?
lines << cs
cs = c
cs_size = default_c_size
# Redefine em vez de chamar clear para que
#nenhuma linha seja suprimida
line = ''
end
end
return line << cs, lines
end
def update_features
update_dragging
hide_window if Mouse.click?(:L) && in_area?(width - 20, -12, 20, 20) && @closable
$dragging = Mouse.press?(:L) ? in_border_area? && !$dragging && self.opacity > 0 ? self : $dragging : nil
update_title
@controls.each(&:update)
end
def update_title
return unless @title
@title.x = x
@title.y = y - 30
end
def update_dragging
return unless @dragable
return if $cursor.object
if $dragging == self
self.x = Mouse.x - @dif_x
self.y = Mouse.y - @dif_y
else
@dif_x = Mouse.x - self.x
@dif_y = Mouse.y - self.y
end
end
end
Lembrando que, não mova o Close Btn de lugar pelo PSD, pode causar erros.Resultado:
E o seu sprite utiliza esse outro, se eu manjasse poderia ajeitar mas manjo 0.
_________________
Kies- Diva
- Mensagens : 1155
Créditos : 124
Ficha do personagem
Nível: 1
Experiência:
(0/0)
Vida:
(30/30)
- Mensagem nº15
Re: [Kies~] Windows Top Perfect
Obrigado por reportar, irei baixar o 1.5 e refazer!
Correção para o VXA-OS 1.1.5:
OBS: NÃO SIGA O TUTORIAL INICIAL, APENAS ESSE. CASO UTILIZE A VERSÃO 1.1.5, NO TÓPICO SIGA APENAS O TUTORIAL PARA MUDAR A COR DA TOP WINDOW QUE É UM PSD!
Primeiro vá até o Script [VS] Window_Base, Encontre:
E substitua toda essa DEF por:
Feito isso agora no mesmo script procure pela DEF:
Agora substitua toda essa DEF por:
Extra: Windows Skins + Top WIndow.
link
Correção para o VXA-OS 1.1.5:
OBS: NÃO SIGA O TUTORIAL INICIAL, APENAS ESSE. CASO UTILIZE A VERSÃO 1.1.5, NO TÓPICO SIGA APENAS O TUTORIAL PARA MUDAR A COR DA TOP WINDOW QUE É UM PSD!
Primeiro vá até o Script [VS] Window_Base, Encontre:
- Código:
def title=(title)
E substitua toda essa DEF por:
- Código:
def title=(title)
dispose_title
@title = Sprite.new
#Posição X
@title.x = x
#Posição Y + Update
@title.y = y - 30
@title.z = z + 1
@title.visible = visible
#Tamanho do Bitmap
@title.bitmap = Bitmap.new(width, 40)
#Arquivo do Title
bitmap = Cache.system('TitleBar')
#Bitmap lado Esquerdo
@title.bitmap.blt(0, 0, bitmap, Rect.new(0, 0, 4, 40))
#Bitmap Centro
@title.bitmap.stretch_blt(Rect.new(4, 0, @title.bitmap.width - 8, 40), bitmap, Rect.new(4, 0, 32, 40))
#Bitmap Direito
@title.bitmap.blt(@title.bitmap.width - 4, 0, bitmap, Rect.new(36, 0, 4, 40))
#Bitmap Close btn
@title.bitmap.blt(@title.bitmap.width - 42, 0, bitmap, Rect.new(40, 0, 40, 40)) if @closable
#Title
@title.bitmap.draw_text(@title.bitmap.rect, title, 1)
end
Feito isso agora no mesmo script procure pela DEF:
- Código:
def update_title
Agora substitua toda essa DEF por:
- Código:
def update_title
return unless @title
@title.x = x
@title.y = y - 30
end
Extra: Windows Skins + Top WIndow.
link
OFWGKTA- Experiente
- Mensagens : 408
Créditos : 27
Ficha do personagem
Nível: 1
Experiência:
(5/50)
Vida:
(30/30)
- Mensagem nº16
Re: [Kies~] Windows Top Perfect
gambiarra da porra
+1cred
+1cred
IsraTwerknov- Iniciante
- Mensagens : 40
Créditos : 5
Ficha do personagem
Nível: 1
Experiência:
(0/0)
Vida:
(30/30)
- Mensagem nº17
Re: [Kies~] Windows Top Perfect
Kies escreveu:Obrigado por reportar, irei baixar o 1.5 e refazer!
Correção para o VXA-OS 1.1.5:
OBS: NÃO SIGA O TUTORIAL INICIAL, APENAS ESSE. CASO UTILIZE A VERSÃO 1.1.5, NO TÓPICO SIGA APENAS O TUTORIAL PARA MUDAR A COR DA TOP WINDOW QUE É UM PSD!
Primeiro vá até o Script [VS] Window_Base, Encontre:
- Código:
def title=(title)
E substitua toda essa DEF por:
- Código:
def title=(title)
dispose_title
@title = Sprite.new
#Posição X
@title.x = x
#Posição Y + Update
@title.y = y - 30
@title.z = z + 1
@title.visible = visible
#Tamanho do Bitmap
@title.bitmap = Bitmap.new(width, 40)
#Arquivo do Title
bitmap = Cache.system('TitleBar')
#Bitmap lado Esquerdo
@title.bitmap.blt(0, 0, bitmap, Rect.new(0, 0, 4, 40))
#Bitmap Centro
@title.bitmap.stretch_blt(Rect.new(4, 0, @title.bitmap.width - 8, 40), bitmap, Rect.new(4, 0, 32, 40))
#Bitmap Direito
@title.bitmap.blt(@title.bitmap.width - 4, 0, bitmap, Rect.new(36, 0, 4, 40))
#Bitmap Close btn
@title.bitmap.blt(@title.bitmap.width - 42, 0, bitmap, Rect.new(40, 0, 40, 40)) if @closable
#Title
@title.bitmap.draw_text(@title.bitmap.rect, title, 1)
end
Feito isso agora no mesmo script procure pela DEF:
- Código:
def update_title
Agora substitua toda essa DEF por:
- Código:
def update_title
return unless @title
@title.x = x
@title.y = y - 30
end
Extra: Windows Skins + Top WIndow.
link
Obrigado pela correção! Eu percebi a mudança, porém não sabia como alterar ele kkkkkk
_________________
Kies- Diva
- Mensagens : 1155
Créditos : 124
Ficha do personagem
Nível: 1
Experiência:
(0/0)
Vida:
(30/30)
- Mensagem nº18
Re: [Kies~] Windows Top Perfect
GODZILLA escreveu:gambiarra da porra
+1cred
Não é uma gambiarra, eu apenas alterei os dados da variável para esticar de forma correta uma imagem maior. Mas vlw +1 respeito
Manticora- Membro Ativo
- Mensagens : 261
Créditos : 62
Ficha do personagem
Nível: 1
Experiência:
(0/0)
Vida:
(30/30)
- Mensagem nº19
Re: [Kies~] Windows Top Perfect
Este novo sistema na windows ficou muito bom. Obrigado por compartilhar conosco ! +1
Kincy- Membro Ativo
- Mensagens : 288
Créditos : 31
Ficha do personagem
Nível: 1
Experiência:
(0/0)
Vida:
(30/30)
- Mensagem nº20