PortalPortal  InícioInício  FAQFAQ  BuscarBuscar  Registrar-seRegistrar-se  Conectar-se  

Compartilhe|

BUG do pulo

Ver o tópico anterior Ver o tópico seguinte Ir em baixo
AutorMensagem
zecomeia
avatar
RPG Maker
RPG Maker

Masculino Postagens : 51
Data de inscrição : 20/08/2009


Ver perfil do usuário http://colmeia-do-ze.blogspot.com/
MensagemAssunto: BUG do pulo Ter Nov 17, 2009 8:53 pm

BUG do Pulo
por zecomeia

Introdução

Conserta um BUG do comando de pulo. Na verdade é apenas uma trava de segurança, porque no RMVX não existe essa trava que impeça o jogador pular em cima de um tile não passável e ficar preso, ou pular perto dos limites do mapa ultrapassando esses limites também fazendo com que o jogador fique preso. No RMXP a trava impede que o evento de pular aconteça nas situações descritas anteriormente, já com esse script para qualquer um dos doi (RMVX ou RMXP), caso as coordenadas de destino do pulo causem problemas, as mesmas são recauculadas de forma a diminuir a distância do pulo em 1 quadro até ser possível o evento de pulo ser concretizado sem possíveis problemas. Alguns costumam aproveitar deste "BUG" para fazer cut scenes "passando por cima" de tiles não passáveis, pensando nisso o script te dá a opção de ativar ou desativar o script de conserto a qualquer momento.

Características

* Conserta o BUG do pulo do RMVX
* Causa o mesmo efeito para o RMXP, mesmo não havendo BUG

Screenshots

Nenhuma

Como usar

Coloque o script acima de main.

Para deixar o BUG use o código, no comando "chamar script":
Código:
$BUGpulo = true

Para retirar o BUG use o código, no comando "chamar script":
Código:
$BUGpulo = nil

Sinta-se à vontade para colocar ou tirar o BUG quando quiser.

Demo

Demo RMXP
Demo RMVX

script

Código:
#========================
#BUG do pulo
#========================
#Autor: zecomeia
#Data:  12/11/2009
#------------------------
#Descrição:
#Este script impede que o
#personagem fique preso
#em tiles quando usado
#o comando de pulo.
#Pensando em quem costuma
#usar o comando de pulo
#mesmo em lugares não
#passáveis existe uma
#forma de ligar/desligar
#o efeito do script.
#Para manter o bug:
#$BUGpulo = true
#Para retirar o bug:
#$BUGpulo = false
if $TEST == true or (File.stat("Game.rgss2a").file? rescue false) or
  (File.stat("Game.rvproj").file? rescue false)
  $PLATFORM = 'VX'
elsif $DEBUG == true or (File.stat("Game.rgssad").file? rescue false) or
  (File.stat("Game.rxproj").file? rescue false)
  $PLATFORM = 'XP'
end

$BUGpulo = true
class Game_Character
  def jump(x_plus, y_plus)
    unless $BUGpulo == true
      if x_plus.abs > y_plus.abs
        x_plus < 0 ? turn_left : turn_right
      elsif x_plus.abs > y_plus.abs
        y_plus < 0 ? turn_up : turn_down
      end
      until ($PLATFORM.eql?('VX') ? map_passable?(@x + x_plus, @y + y_plus) : passable?(@x + x_plus, @y + y_plus,0))
        break if x_plus==0 and y_plus==0
        if x_plus > 0
          x_plus -= 1
        elsif x_plus < 0
          x_plus += 1
        end
        if y_plus > 0
          y_plus -= 1
        elsif y_plus < 0
          y_plus += 1
        end
      end     
      @x += x_plus
      @y += y_plus
      distance = Math.sqrt(x_plus * x_plus + y_plus * y_plus).round
      @jump_peak = 10 + distance - @move_speed
      @jump_count = @jump_peak * 2
      @stop_count = 0
      straighten
    else 
      if x_plus.abs > y_plus.abs
        x_plus < 0 ? turn_left : turn_right
      elsif x_plus.abs > y_plus.abs
        y_plus < 0 ? turn_up : turn_down
      end
      @x += x_plus
      @y += y_plus
      distance = Math.sqrt(x_plus * x_plus + y_plus * y_plus).round
      @jump_peak = 10 + distance - @move_speed
      @jump_count = @jump_peak * 2
      @stop_count = 0
      straighten
    end
  end
end


Perguntas Frequentes

Nenhuma

Créditos e Agradecimentos

* Feito por zecomeia



scripts RGSS, Resources, Tutorials and Translations by zecomeia is licensed under a
Creative Commons Atribuição-Uso Não-Comercial-Compartilhamento pela mesma Licença 2.5 Brasil License.
Permissions beyond the scope of this license may be available at Santuário RPG Maker


Última edição por zecomeia em Sex Nov 20, 2009 6:23 pm, editado 1 vez(es)
Voltar ao Topo Ir em baixo
Neto Rpg
avatar
Membro Especial
Membro Especial

Masculino Postagens : 30
Data de inscrição : 15/08/2009


Ver perfil do usuário
MensagemAssunto: Re: BUG do pulo Qui Nov 19, 2009 8:41 pm

Script interessante. Pode ser útil em alguns casos, como você descreveu acima.

Obrigado por desponibiliza-lo aqui ^^
Voltar ao Topo Ir em baixo
zecomeia
avatar
RPG Maker
RPG Maker

Masculino Postagens : 51
Data de inscrição : 20/08/2009


Ver perfil do usuário http://colmeia-do-ze.blogspot.com/
MensagemAssunto: Re: BUG do pulo Sex Nov 20, 2009 6:27 pm

Valeu Neto, espero que seja útil para o pessoal ^^

T+
Voltar ao Topo Ir em baixo
Douglanilo
avatar
Mestre
Mestre

Masculino Postagens : 959
Data de inscrição : 02/04/2009


Ver perfil do usuário http://www.twevergrand.com
MensagemAssunto: Re: BUG do pulo Sex Nov 20, 2009 6:30 pm

Hum... talvez eu possa usar esse seu script no meu sistema de Mario XD.

Valeu pelo Script, vai me ajudar e ajudar o pessoal!

Até o/

_________________________________________
Voltar ao Topo Ir em baixo
Conteúdo patrocinado




MensagemAssunto: Re: BUG do pulo

Voltar ao Topo Ir em baixo

BUG do pulo

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

Permissão deste fórum:Você não pode responder aos tópicos neste fórum
The World of EverGrand :: Programação em Linguagens :: Ruby Game Scripting System :: Scripts-