Forums » RGSS

    • 683 posts
    2 de junho de 2015 18h38min49s ART

    janelas

     

    As janelas são muito importantes nos jogos de RPG, hoje aprendere,os um pouco sobre elas

    def initialize    super(0,0,640,480)   self.contents =Bitmap.new(width -32, height -32)self.opacity =100end

    Oquê é inititialize ?

     

      Initialize é uma def usada iniciar os dados da janela

     

    em super é definido a altura e a largura da janela

    #super(0, 0, #altura, #largura)

    Mas porque os dois zeros na frente    ? esses dois zeros definem um tipo de um recuo nos cantos da janela, exemplo: troque a linha 12 do script Window_DebugLeft por:

    super(0,82,192,480)

      , rode o jogo e veja como como ficou...

    Spoiler 

    imagen.png

    viu ficou um espaço em branco em cima e em baixo da janela, neste caso, como a janela ocupava toda a  coordenada x da tela, um pedaço dela não foi possivel ver o recuo de baixo da janela, então estes dois primeiros algarismos tem função de recuo, este recuo

    #super(recuo x, recuo y, tamanho, largura) 
    Spoiler 
    #---------------------------------------------------#  Atualizar#---------------------------------------------------def refresh   self.contents.clear   self.contents.font.color = system_color   end

     

     
    ai atualiza-se o auto conteudo, sobre as atualizações a mais a estudar mas veremos isso no final da aula
     

     

     1º script

     

    vamos fazer o primeiro scipt completo  :palmas: para isso você davera ter
    1 uma classe(lembre-se que todas as janelas são afilhadas da...)
    2 uma def initialize 
    3 Altura e largura da janela
    4 bitmap e opacity
    5 atualizar a janela
    6 vá para Scene_Menu na def main coloque:

    @#coloque uma palavra_window = nome da class da janela.new@#coloque a palavraanterior_window.x = coloque a cordenada x @#coloque uma palavra_window.y = coloque a cordenada y #cole em qualquer lugar da def main menos depois da palavra loop do

    exemplo:

    Spoiler 

     

    @actor_window=Window_Actor,new@actor_window.x =100@actor_window.y =100

     


    agora teste seu jogo e vai no menu

    uma janela !  :-) mas esta branco  :triste: calma ai já vamos preencher está janela  :meditando:
    explicando sobre o que fizemos no scene_menu nos criamos um dado(@actor_window) é igual a Widow_Actor.new  e colocamos a cordenada x e y. no script que você criou na def initialize coloque:

     

    self.contents.draw_text(self.width -40,32,"",0)#coloque algo entre aspas

      agora teste seu jogo e vai no menu
    um texto !agora acresente

    IMG =("Granpincs/#complete com imagem que caiba na sua janela") rect =Rect.new(0,0, IMG.width, icone.height)self.contents.blt(0,0, IMG, rect)

    agora troque

    self.contents.draw_text(self.width -40,32,"",0)#coloque algo entre aspas

    por

    self.contents.draw_text(IMG.widht +4,0,self.width -40,32,"",0)#coloque algo entre aspas

    seu script devera ficar mais ou menos assim:

    classWindow_Actordef initialize IMG =("Granpincs/#complete com recurso que caiba na sua janela")super(0,0,30064)self.contents =Bitmap.new(width -32, height -32) rect =Rect.new(0,0, IMG.width, IMG.height)self.contents.blt(0,0, IMG, rect)self.contents.draw_text(IMG.widht +4,0,self.width -40,32,"",0)end#---------------------------------------------------#  Atualizar#---------------------------------------------------def refresh   self.contents.clear   self.contents.font.color = system_color endend

    pronto o script tem uma imagem e um texto

    esplicação
     

    rect =Rect.new(0,0, IMG.width, IMG.height)self.contents.blt(0,0, IMG, rect)self.contents.draw_text(IMG.widht +4,0,self.width -40,32,"",0)

    em rect definimos a altura e largura da imagem, na linha seguinte localização de rect e na ultima explica que o texto esta ao lado da IMG

    ativando imagens no script

    para quem teve dificudade ou não conseguiu colocar a imagem no script abra seu projeto e aperte f10
    resman1.png
    onde esta Granphics/#complete exemplo
    Granphics/pictures/coloque a imagem

    alguns links uteis
    http://www.mundorpgm...esource-manager
    http://www.mundorpgm...?topic=121682.0