Arena RPG Maker
Olá, visitante!
Seja bem-vindo ao fórum Arena RPG Maker, caso queira aprender sobre criação de jogos, está no fórum certo. Esperamos que possa aprender tanto quanto possa nos ensinar aqui.

Atenciosamente,
Equipe Arena RPG Maker.
Arena RPG Maker

Estamos de volta o/ ... Ou não.Eu amo a -Dark
Doações para o fórum abertas, clique aqui e saiba mais.
Últimos assuntos
» Pokémon Genesis Online! (PGO)
Qua 05 Jul 2017, 17:08 por Lexar

» Tileset Converter to MV
Sex 12 Maio 2017, 13:07 por Douggi

» [Dúvida] Como tirar a porcentagem de esquiva
Ter 09 Maio 2017, 22:15 por Neil Flame Runner

» Pack Resources, Sprites e etc
Qua 23 Dez 2015, 09:30 por raydengv

» Download RPG Maker 2003 + RTP em português
Ter 22 Dez 2015, 08:14 por ::KimMax::

» Fantasy Art Online
Dom 18 Out 2015, 16:42 por daviih123

» Você vai ter medo do Nerve gear?
Sab 25 Jul 2015, 16:02 por Kirito-kun

» O Barato é louco
Sab 27 Jun 2015, 15:26 por Halt

» Download RPG Maker 2000 + RTP em português
Qui 21 Maio 2015, 19:28 por Wismael

» Divulgando meu grupo e página do Facebook
Ter 19 Maio 2015, 13:06 por Halt


Você não está conectado. Conecte-se ou registre-se

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 1]

1Script Avisos/Mensagens na tela em Sex 28 Dez 2012, 13:27

Halt

avatar
Administrador
Administrador
RD12 escreveu:
Avisos na Tela


Esse script é bem legal, ele mostra umas mensagens na tela ao chamar um script, ao invés de ficar mostrando mensagens por eventos, assim é bem mais bonito e melhor.

Características:
* Só chamar um script com o texto
* Pode se escolher a cor do texto
* Você pode escolher quantas linhas exibir na tela (de 1 a 4 linhas)
* Você pode escolher o tempo para o texto ir sumindo
* Mostra mensagem quando ganha Itens, armas, moedas...(Opcional)

Como Usar:
Apenas chame o script: Aviso(0, "Mensagem")
onde o 0 é o ID da cor, você pode adicionar mais cores no script facilmente.

Imagens:


Spoiler:





Script:


Código:
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=::=:=
#|Autor: RD12|              Avisos/Mensagens no Mapa
#-----------------------------------------------------------------------------------
# Mostra Avisos na tela ao chamar um script, e se pode escolher a cor do aviso
#    Apenas chame o script: Aviso(0, "Mensagem")  >= onde 0 é o ID da cor
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=::=:=
#          Para mais scripts:      www.aldeiarpgbr.com

module Conf_Avisos

  #Tamanho e Nome da Fonte
  Font_Size = 14
  Font_Name = "Segoe UI"
  #Coordenadas
  X = 1
  Y = 300
  #Aviso ao ganhar Itens,moedas.. 0 é o id da cor da mensagem
  Gain_Aviso = [0,true]
  #Tempo pra ir limpando linha por linha em segundos
  Tempo = 15
  #Número de Avisos na Tela(de 1 a 4)
  Avisos = 4
  #Cores, você pode add mais
  Cor[0] = Color.new(255,255,255)#branco
  Cor[1] = Color.new(255,0,0)#vermelho
  Cor[2] = Color.new(0,255,0)#verde
  Cor[3] = Color.new(0,0,255)#azul
  Cor[4] = Color.new(255,255,0)#amarelo
  Cor[5] = Color.new(255,0,255)#rosa
  Cor[6] = Color.new(0,0,0)#preto
  #Cor[7] = Color.new(0,0,0)#Nova Cor
end

class Avisos < Sprite
  def initialize
    super
    self.bitmap = bitmap = Bitmap.new(200,300)
    self.bitmap.font.size = Conf_Avisos::Font_Size
    self.bitmap.font.name = Conf_Avisos::Font_Name
    #Inicia as linhas de avisos
    $linha1 = [Color.new(255,255,255), ""]
    $linha2 = [Color.new(255,255,255), ""]
    $linha3 = [Color.new(255,255,255), ""]
    $linha4 = [Color.new(255,255,255), ""]
    self.x = Conf_Avisos::X
    self.y = Conf_Avisos::Y
    refresh
  end
     
  def refresh
    self.bitmap.clear
  #Aqui escreve as mensagens na tela
  if Conf_Avisos::Avisos == 4
    self.bitmap.font.color = $linha1[0]
    self.bitmap.draw_text(10, 0, 900, 32, $linha1[1], 0)
    end
  if Conf_Avisos::Avisos >= 3
    self.bitmap.font.color = $linha2[0]
    self.bitmap.draw_text(10, 20, 900, 32, $linha2[1], 0)
  end
  if Conf_Avisos::Avisos >= 2
    self.bitmap.font.color = $linha3[0]
    self.bitmap.draw_text(10, 40, 900, 32, $linha3[1], 0)
  end
  if Conf_Avisos::Avisos >= 1
    self.bitmap.font.color = $linha4[0]
    self.bitmap.draw_text(10, 60, 900, 32, $linha4[1], 0)
  end
  end
end

#Método para add mensagens
def Aviso(cor, msg)
  cor = Conf_Avisos::Cor[cor]
  $linha1 = $linha2
  $linha2 = $linha3
  $linha3 = $linha4
  $linha4 = [cor, msg]
  $Avisos.refresh
end

#Coloca no mapa, Atualiza e vai deletando as mensagens
class Scene_Map
  alias avisos_main main
  def main
    $Avisos = Avisos.new
    avisos_main
    $Avisos.dispose
  end
  alias avisos_update update
  def update
    avisos_update
    $Avisos.refresh if Graphics.frame_count % 40 == 0
    Aviso(0, "") if Graphics.frame_count % (60*Conf_Avisos::Tempo) == 0
  end
end

#Adiciona mensagem ao ganhar itens ou moedas
class Game_Party < Game_Unit
  def gain_gold(amount)
    @gold = [[@gold + amount, 0].max, max_gold].min
    return if Conf_Avisos::Gain_Aviso[1] == false
    cor = Conf_Avisos::Gain_Aviso[0]
    Aviso(cor, "Você ganhou  "+amount.to_s+" Moedas")
  end
  def gain_item(item, amount, include_equip = false)
    container = item_container(item.class)
    return unless container
    last_number = item_number(item)
    new_number = last_number + amount
    container[item.id] = [[new_number, 0].max, max_item_number(item)].min
    container.delete(item.id) if container[item.id] == 0
    if include_equip && new_number < 0
      discard_members_equip(item, -new_number)
    end
    return if Conf_Avisos::Gain_Aviso[1] == false
    cor = Conf_Avisos::Gain_Aviso[0]
    Aviso(cor, "Você ganhou "+amount.to_s+" "+item.name)
    $game_map.need_refresh = true
  end
end

Créditos RD12


__________________________________________

Ei Convidado, sim você mesmo! Ajude o fórum à crescer postando coisas úteis, dê sugestões para melhorar-mos e divulgue o fórum.

Step inside, see the devil in I.

Gifts-
Fantasy - Fantasy - Fantasy - ~Razor - Darkmel

Zerei a internet
Ver perfil do usuário http://arenarpgmaker.eclipserpg.com

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo  Mensagem [Página 1 de 1]

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum