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

Ir para baixo
Jhonn
Jhonn
Novo Membro
Novo Membro
Masculino Mensagens : 114
Reputação : 48

[RMVX] Sistema Vampírico Empty [RMVX] Sistema Vampírico

Qua Jul 14, 2010 5:04 pm
Reputação da mensagem: 100% (1 votos)
Sistema Vampírico v1.0
por Woratana

Introdução
Este script permite que seu jogo tenha um sistema simples de necessidade de sangue para vampiros. Seu personagem principal será um vampiro e terá de se alimentar, caso contrário morrerá.

Como usar
Abra o Editor de scripts, crie um novo script na seção de scripts Adicionais e cole o código abaixo.

Script
Código:
#==============================================================================
# Sistema Vampírico [EXCLUSIVO RPG MAKER BRASIL]
#------------------------------------------------------------------------------
# Criado por Woratana em 14/06/2008
# Versão: 1.0
# woratana@hotmail.com
#------------------------------------------------------------------------------
# Este script permite que você crie um sistema simples de necessidade de
# sangue para vampiros. Seu personagem principal será um vampiro e terá de
# se alimentar, caso contrário morrerá.
#
# Para iniciar o sistema, você deverá ativar um switch. Você também precisa
# definir duas variáveis que definem a quantidade de sangue que o vampiro
# possui atualmente e qual a quantidade máxima. Você pode definir as ID's de
# cada switch e variável logo abaixo.
#
# O sistema irá remover 0.1 pontos de sangue a cada frame, portanto, é bom
# que você coloque valores altos para o valor máximo de sangue e o sangue atual
# do vampiro.
#
# Abaixo você encontra várias configurações que deverão ser feitas antes de
# utilizar o sistema em seu jogo. Preste bastante atenção!
#==============================================================================

class Wora_Vampire
 
  BLOOD_START_SWITCH = 1 # ID do switch que ativará o sistema
  BLOOD_AMOUNT_VARIABLE = 10 # ID da variável de quantidade de sangue
  BLOOD_MAX_VARIABLE = 11 # ID da variável de quantidade máxima de sangue
  BLOOD_DECREASE = 0.1 # Quantidade de sangue diminuído a cada frame
 
  # Você também pode alterar esta variável chamando o script:
  # $game_player.blood_dec = (valor)
 
  # Parar de diminuir sangue enquanto o jogador estiver falando com NPCs?
  # true para sim, false para não
  STOP_DECREASE_WHEN_TALKING = true
   
  # O que acontece quando o sangue acaba?
  # -1: Nada
  # 0: Tela de game over
  # 1: Chama um evento comum, sendo que o número escolhido deve ser igual
  #    à ID do evento comum
  BLOOD_LOST_RESULT = 0
 
  # Texto exibido acima da barra
  BLOOD_TEXT = 'Sangue'
 
  # Cores da barra
  BLOOD_GAUGE_COLOR1 = Color.new(0, 0, 0, 192)
  BLOOD_GAUGE_COLOR2 = Color.new(255, 255, 192, 192)
  BLOOD_GAUGE_COLOR3 = Color.new(0, 0, 0, 12)
  BLOOD_GAUGE_COLOR4 = Color.new(64, 0, 0, 92)
 
  # Cor do conteúdo da barra
  BLOOD_GAUGE_COLOR5 = Color.new(253, 53, 56, 192)
  BLOOD_GAUGE_COLOR6 = Color.new(242, 2, 6, 192)
 
  def initialize
    $game_player.blood_dec ||= BLOOD_DECREASE
    @hud = Window_Base.new(0,0,152,64)
    @hud.visible = $game_switches[BLOOD_START_SWITCH]
    refresh_hud
  end
 
  def update
    @hud.visible = $game_switches[BLOOD_START_SWITCH]
    if @hud.visible
      $game_variables[BLOOD_AMOUNT_VARIABLE] = $game_variables[BLOOD_MAX_VARIABLE] if
    $game_variables[BLOOD_AMOUNT_VARIABLE] > $game_variables[BLOOD_MAX_VARIABLE]
      if $game_variables[BLOOD_AMOUNT_VARIABLE] > 0
        $game_variables[BLOOD_AMOUNT_VARIABLE] -= $game_player.blood_dec
      else
        case BLOOD_LOST_RESULT
        when -1 # Nada
        when 0 # Game Over
          $game_temp.next_scene = 'gameover'
        when 1 # Chamar evento comum
          $game_map.common_event_id = BLOOD_LOST_RESULT
        end
      end
      blood_old = $game_variables[Wora_Vampire::BLOOD_AMOUNT_VARIABLE] /
  [$game_variables[Wora_Vampire::BLOOD_MAX_VARIABLE],1].max
      if @old_blood != blood_old
        refresh_hud
      end
    end
  end
 
  def refresh_hud
    @hud.contents.clear
    @old_blood = $game_variables[Wora_Vampire::BLOOD_AMOUNT_VARIABLE] /
  [$game_variables[Wora_Vampire::BLOOD_MAX_VARIABLE],1].max
    @hud.draw_actor_blood_gauge(2,1,116)
    @hud.contents.draw_text(0, 0, @hud.contents.width, Window_Base::WLH, BLOOD_TEXT)
  end
 
  def terminate
    @hud.dispose
  end
end

class Window_Base < Window
  def draw_actor_blood_gauge(x, y, width = 120)
    gw = width * $game_variables[Wora_Vampire::BLOOD_AMOUNT_VARIABLE] /
  [$game_variables[Wora_Vampire::BLOOD_MAX_VARIABLE],1].max
    gc1 = Wora_Vampire::BLOOD_GAUGE_COLOR1
    gc2 = Wora_Vampire::BLOOD_GAUGE_COLOR2
    gc3 = Wora_Vampire::BLOOD_GAUGE_COLOR3
    gc4 = Wora_Vampire::BLOOD_GAUGE_COLOR4
    gc5 = Wora_Vampire::BLOOD_GAUGE_COLOR5
    gc6 = Wora_Vampire::BLOOD_GAUGE_COLOR6
    self.contents.fill_rect(x-2, y + WLH - 10, width+4, 10, gc1)
    self.contents.fill_rect(x-1, y + WLH - 9, width+2, 8, gc2)
    self.contents.gradient_fill_rect(x, y + WLH - 8, width, 6, gc3, gc4)
    self.contents.gradient_fill_rect(x, y + WLH - 8, gw, 6, gc5, gc6)
  end
end

class Scene_Map < Scene_Base
  alias wor_scemap_str_vamp start
  alias wor_scemap_upd_vamp update
  alias wor_scemap_ter_vamp terminate
 
  def start
    wor_scemap_str_vamp
    @vamp = Wora_Vampire.new
  end
 
  def update
    wor_scemap_upd_vamp
    @vamp.update unless ($game_message.visible and Wora_Vampire::STOP_DECREASE_WHEN_TALKING)
  end
 
  def terminate
    @vamp.terminate
    wor_scemap_ter_vamp
  end
end

class Game_Player < Game_Character
  attr_accessor :blood_dec
end

Observação
Este script foi desenvolvido com exclusividade para a RPG Maker Brasil. Este script não pode ser postado em nenhum outro site/fórum.

Créditos e Agradecimentos
  • Criado por Woratana
  • Backup da antiga RMB restaurado por Jhonn


Última edição por Jhonn em Qui Jul 15, 2010 11:37 am, editado 1 vez(es)
MestreJujuba
MestreJujuba
Membro
Membro
Masculino Mensagens : 413
Reputação : 66
http://www.lokosmaniacos.blogspot.com

[RMVX] Sistema Vampírico Empty Re: [RMVX] Sistema Vampírico

Qua Jul 14, 2010 6:39 pm
Parece ser muito bom \õ/
Baixando...
(pena que certamente não usarei)
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos