RPG Maker Brasil
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Ir para baixo
Max Keisers
Max Keisers
Membro
Membro
Masculino Mensagens : 267
Reputação : 49

Efeito de TV Empty Efeito de TV

Qua Set 22, 2010 8:22 pm
Reputação da mensagem: 100% (1 votos)
Screenshot:
Spoiler:


Código:
#==================================================================
#==================================================================
# Efeito TV
# Autor: Matheus@lima
#==================================================================
# Função:
#------------------------------------------------------------------
# Simular uma televisão com chuviscos na tela.
#------------------------------------------------------------------
# Instruções:
#------------------------------------------------------------------
# Para ligar o efeito no comando chamar script dos eventos
# digite:
#
# $game_screen.efeito_tv(true)
#
# Para desligar o efeito no comando chamar script dos eventos
# digite:
#
# $game_screen.efeito_tv(false)
# $scene = Scene_Map.new
#
# As imagens dos frames do chuvisco e da tela da tv devem se
# encontrar na pasta Pictures do seu projeto.
#
# O nome das imagens do chuvisco devem estar desta maneira:
#
# 1º frame: nome_da_picture
# 2º frame: nome_da_picture0
# 3º frame: nome_da_picture1
# 4º frame: nome_da_picture2
# 5º frame: nome_da_picture3
# 6º frame: nome_da_picture4
# .
# .
# .
#------------------------------------------------------------------
# Edição:
#------------------------------------------------------------------
module Mada
  # Quantidade de frames que tem a imagem de chuvisco
  ETV_Frames = 6
  # A velocidade com que são passados os frames do chuvisco.
  # Quanto maior o valor mais devagar são trocados os frames
  # e vice-versa.
  ETV_Velocidade = 5
  # Nome do gráfico da tela da TV
  ETV_TV_Grafico = "TV Tela"
  # Nome do gráfico do chuvisco
  ETV_Chuvisco_Grafico = "TV Chuvisco"
  # ID da variável que ajusta a opacidade durante o jogo.
  # OBS: A opacidade vai de 0 a 255, em que 0 é completamente
  # transparente e 255 é completamente opaco.
  ETV_Chuvisco_Opacidade = 1
  # Opacidade inicial do efeito.
  # OBS: A opacidade vai de 0 a 255, em que 0 é completamente
  # transparente e 255 é completamente opaco.
  ETV_Chuvisco_Opacidade_I = 255
end
#------------------------------------------------------------------
# Fim da Edição
#==================================================================
class Game_Screen
  attr_reader  :efeito_tvs
  alias mada_gs_etv_initialize initialize
  def initialize
    @efeito_tvs = false
    mada_gs_etv_initialize
  end 
  def efeito_tv(a)
    @efeito_tvs = a
  end 
end
class Spriteset_Map
  alias mada_sm_etv_initialize initialize
  def initialize
    @tv_frames = 0
    @tv_tempo = Mada::ETV_Velocidade
    @tv_moldura = Sprite.new(@viewport2)
    @tv_moldura.bitmap = RPG::Cache.picture(Mada::ETV_TV_Grafico)
    @tv_moldura.z = 3100
    @tv_moldura.opacity = 255
    @tv_chuvisco = Sprite.new(@viewport2)
    @tv_chuvisco.bitmap = RPG::Cache.picture(Mada::ETV_Chuvisco_Grafico)
    @tv_chuvisco.z = 3050
    @tv_chuvisco.opacity = Mada::ETV_Chuvisco_Opacidade_I
    @tv_moldura.visible = false
    @tv_chuvisco.visible = false
    mada_sm_etv_initialize
  end 
  alias mada_sm_etv_dispose dispose
  def dispose
    @tv_moldura.dispose
    @tv_moldura.bitmap.dispose
    @tv_chuvisco.dispose
    @tv_chuvisco.bitmap.dispose
    mada_sm_etv_dispose
  end
  alias mada_sm_etv_update update
  def update
    if $game_screen.efeito_tvs
      unless @tv_moldura.visible
        @tv_moldura.visible = true
        @tv_chuvisco.visible = true
      end
      if @tv_chuvisco.opacity < $game_variables[Mada::ETV_Chuvisco_Opacidade]
        @tv_chuvisco.opacity += 1
      elsif @tv_chuvisco.opacity > $game_variables[Mada::ETV_Chuvisco_Opacidade]
        @tv_chuvisco.opacity -= 1
      end
      if @tv_tempo <= 0
        @tv_frames += 1
        @tv_tempo = Mada::ETV_Velocidade
      else
        @tv_tempo -= 1
      end
      if @tv_frames > Mada::ETV_Frames
        @tv_frames = 0
      end   
      @tv_chuvisco.bitmap = RPG::Cache.picture(Mada::ETV_Chuvisco_Grafico + @tv_frames.to_s) rescue primeiro_frame
    else
      if @tv_moldura.visible
        @tv_moldura.visible = false
        @tv_chuvisco.visible = false
      end
    end
    mada_sm_etv_update
  end
  def primeiro_frame
    @tv_chuvisco.bitmap = RPG::Cache.picture(Mada::ETV_Chuvisco_Grafico)
  end
end



Download Demo: mediafire.com/file/jkm3ttn1dju/Efeito%20TV.rar
Alucard_2
Alucard_2
Administrador
Administrador
Masculino Mensagens : 823
Reputação : 57
http://www.não tenho site ainda.com.nada

Efeito de TV Empty Re: Efeito de TV

Qua Set 22, 2010 11:04 pm
Muito interessante, vou utilizar em um futuro projeto que recomeçarei em RMXP.
Max Keisers
Max Keisers
Membro
Membro
Masculino Mensagens : 267
Reputação : 49

Efeito de TV Empty Re: Efeito de TV

Qui Set 23, 2010 1:02 pm
Obrigado, é muito bom ter um elogio seu, esperto ter ajudado. Ralph *-*
Caiobz009
Caiobz009
Novo Membro
Novo Membro
Mensagens : 136
Reputação : 51

Efeito de TV Empty Re: Efeito de TV

Qui Set 23, 2010 3:26 pm
Muito bom. Valeeu por disponibilizar.
Conteúdo patrocinado

Efeito de TV Empty Re: Efeito de TV

Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos