O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Dash & Stamina Bar

Iniciado por Raizen, 04/03/2013 às 16:00

[box class=titlebg]
Introdução
[/box]

  Script simples de estamina e corrida, por favor não me crucifiquem esse foi meu primeiro script  :o__o:
Le revirada no baú

[box class=titlebg]
Funções
[/box]

- Pode ser ativado e desativado por uma switch
- Muda o grafico enquanto o personagem corre
- pode ser usado para diminuir a velocidade tambem, como em jogos de tiro.
- é de facil entendimento para aqueles que não entendem scripts muito bem.
- contem barra de stamina na nova versão.
- barra de stamina pode ser modificada por variaveis, assim facil de mudar durante o jogo caso tenha
- itens ou partes que precisem aumentar ou diminuir a stamina.

Imagem
Spoiler
[close]


[box class=titlebg]
Script
[/box]
Script sem barra de stamina
Spoiler
#==================================================================== 
# Script de corrida por Raizen
#====================================================================
# Coloque aqui os valores de velocidade, 
# sendo 4 a velocidade normal, 
# valores maiores aumentam a velocidade
# e valores menores diminuem a velocidade.
VELOCIDADE_NORMAL = 4
VELOCIDADE_ALTERADA = 5
# Coloque a tecla a ser utilizada sendo as opções
# SHIFT, A, B, C, X, Y, Z, Q, W.
TECLA = Input::SHIFT
# Coloque o nome do arquivo do personagem que deseja mudar o grafico
# Com o nome do arquivo do personagem normal, e adicione um Run no final
# Caso não tenha o Grafico marque o Possui_grafico como false
Possui_grafico = true
#Switch que deve estar ligado para funcionar o script
SWITCH = 1
#=========================================================================
# A partir daqui começa o script, apenas altere caso saiba
# o que esta fazendo.
#=========================================================================
class Game_Character
  attr_accessor :move_speed
  end
# Mudança do grafico quando em movimento.
class Sprite_Character
  alias char_run update
def update
  char_run
  if @character.is_a?(Game_Player)
  if Input.press?(TECLA) and $game_switches[SWITCH] and Possui_grafico
    self.bitmap = RPG::Cache.character(@character.character_name + "Run", @character.character_hue)
    else 
    self.bitmap = RPG::Cache.character(@character.character_name, @character.character_hue)
  end
        @w = bitmap.width / 4
        @h = bitmap.height / 4
      self.src_rect.set(@character.pattern * @w, (@character.direction - 2) / 2 * @h, @w, @h)
  end
end
end
# mudança de velocidade
class Scene_Map
  alias char_move update
  def update
      char_move
  if Input.press?(TECLA) and $game_switches[SWITCH]
    $game_player.move_speed = VELOCIDADE_ALTERADA
  else
    $game_player.move_speed = VELOCIDADE_NORMAL
  end
end
end

[close]
Com barra de stamina
Spoiler
#==================================================================== 
# Script de corrida por Raizen
#====================================================================
# Coloque aqui os valores de velocidade, 
# sendo 4 a velocidade normal, 
# valores maiores aumentam a velocidade
# e valores menores diminuem a velocidade.
VELOCIDADE_NORMAL = 4
VELOCIDADE_ALTERADA = 5
# Coloque a tecla a ser utilizada sendo as opções
# SHIFT, A, B, C, X, Y, Z, Q, W.
TECLA = Input::SHIFT
# Coloque o nome do arquivo do personagem que deseja mudar o grafico
# Com o nome do arquivo do personagem normal, e adicione um Run no final
# Caso não tenha o Grafico marque o Possui_grafico como false
Possui_grafico = true
# Switch que deve estar ligado para funcionar o script
SWITCH = 1
# Variavel a ser usada para conter a barra de stamina.
VARIABLE = 1
# Velocidade de queda da stamina, numeros maiores aumentam a queda.
QUEDA = 1
# Velocidade de recuperação da stamina, numeros maiores aumentam a recuperação.
REC = 0.5
# Posição da hud de stamina.
# posição em x.
PX = 420
# posição em y.
PY = 415
#=========================================================================
# A partir daqui começa o script, apenas altere caso saiba
# o que esta fazendo.
#=========================================================================
class Game_Character
  attr_accessor :move_speed
  end
# Mudança do grafico quando em movimento.
class Sprite_Character
  alias char_run update
def update
  char_run
  if @character.is_a?(Game_Player)
  if Input.press?(TECLA) and $game_switches[SWITCH] and Possui_grafico and $game_variables[VARIABLE] > 0
    self.bitmap = RPG::Cache.character(@character.character_name + "Run", @character.character_hue)
    else 
    self.bitmap = RPG::Cache.character(@character.character_name, @character.character_hue)
  end
        @w = bitmap.width / 4
        @h = bitmap.height / 4
      self.src_rect.set(@character.pattern * @w, (@character.direction - 2) / 2 * @h, @w, @h)
  end
end
end
# mudança de velocidade    
class Scene_Map
  alias sth_main main
  def main
    @Sth = Sth.new
    sth_main
    @Sth.dispose
  end
  alias sth_update update
  def update
    sth_update
    @Sth.update
    @Sth.refresh
  end
  alias char_move update
  def update
      char_move
  if Input.press?(TECLA) and $game_switches[SWITCH]
    if $game_variables[VARIABLE] > 0
    $game_player.move_speed = VELOCIDADE_ALTERADA     
    $game_variables[VARIABLE] = $game_variables[VARIABLE] - QUEDA
      else
    $game_player.move_speed = VELOCIDADE_NORMAL
    end
  else
    $game_player.move_speed = VELOCIDADE_NORMAL
    $game_variables[VARIABLE] = $game_variables[VARIABLE] + REC
  end
  if $game_variables[VARIABLE] > 100
    $game_variables[VARIABLE] = 100
  end
end
class Sth < Window_Base
  def initialize
      super(0,0,648,512)
      self.contents = Bitmap.new(width - 32, height - 32)
      self.opacity = 0
      @ator = 0
      refresh
    end
      def refresh
    self.contents.clear
    stbar = RPG::Cache.picture("stamina bar")
    sthud = RPG::Cache.picture("stamina hud")
    stw = stbar.width * $game_variables[VARIABLE] / 100
    sth = stbar.height
    stbar_rect = Rect.new(0,0,stw,sth)
    sthud_rect = Rect.new(0,0,sthud.width,sthud.height)
    self.contents.blt(PX,PY + 7,stbar,stbar_rect)
    self.contents.blt(PX,PY,sthud,sthud_rect)
  end
  end
end
[close]

[box class=titlebg]
Adicionais
[/box]

como é necessário os 2 personagens, ele andando e ele correndo, apenas colocar os 2 na pasta Graphics/Characters caso não seja do rtp, se for do rtp necessita apenas do char correndo e mudar o nome do arquivo adicionando o nome original + Run no final, caso não tenha a imagem do personagem correndo
e quer manter ele normal não é necessário os 2 graficos, apenas marcar como false na parte indicada no script.

Por exemplo se o nome da imagem for "Personagem" e estiver na pasta graphics, basta colocar o nome dele correndo como "PersonagemRun". Caso não tenha o grafico, basta marcar na parte indicada do script como false que ele não vai buscar essa imagem dele correndo, assim não é necessario ter o grafico  dele correndo tb.

Aqui está os graficos
Correndo


Esses apenas se quiser usar com stamina!



[box class=titlebg]
Creditos e Avisos
[/box]

Raizen

Haha é bom ver esses scripts antigos e perceber seu progresso Raizen. É uma adição legal para quem quer dar mais uma pitada de realismo em certas mecânicas do Jogo.

OBS: Dá pra ver que é seu primeiro script, porque você criou dois scripts para algo que podia fazer em um só, não? e.e

Citação de: Fallen online 04/03/2013 às 16:45
Haha é bom ver esses scripts antigos e perceber seu progresso Raizen. É uma adição legal para quem quer dar mais uma pitada de realismo em certas mecânicas do Jogo.

OBS: Dá pra ver que é seu primeiro script, porque você criou dois scripts para algo que podia fazer em um só, não? e.e
Exato kk x], lembrei da existência dele hoje k, mas eu olhei de novo, até que estava bonitinho kk, bom ainda é útil então resolvi postar ^^, vlws o comment.