Forums » RPG Maker XP

Sistema de Precisão

    • 404 posts
    14 de maio de 2015 01:11:02 ART

    Sistema de Precisão

     

    Sistema Por: José Railson (Railson_Games)                                            Incompatibilidades: Nenhuma*
    Engine: RMXP                                                                F.A.Q Embutido: Não
    Nível de dificuldade: Fácil



    [o]Explicação sobre o sistema:


    Então [you], mostrarei à você um sistema muito legal. É um sistema de precisão! Isso mesmo! Funciona da seguinte maneira: Tem uma barra, e do lado de fora, há uma seta se movendo para cima e para baixo constantemente, se o jogador apertar a tecla, na hora que a seta estiver bem no meio (ou quase) acontece tal coisa. Será mais esclarecido com um vídeo que eu certamente irei fazer.

    [o]Dados Específicos:


    Aqui ficam dados mais específicos sobre o sistema, Ex:

    • Número de Switches: 0
    • Número de Condições: 2 ou mais (Dependendo da customização).
    • Número de Variáveis: 2
    • Número de Itens necessários: 0
    • Número de Eventos Comuns: 0
    • Controles: C 

      [o]Sobre o criador:


      Então, este sistema eu usarei para meu jogo. A força do ataque depende do resultado obtido pelo mini-game.

      [o]Tutorial:


      Bem, crie uma evento em processo paralelo e  crie duas variáveis, a primeira com o nome de Seta Y, e a segunda com o nome de Velocidade. Por enquanto deixe os valores delas nulo (0). Para fazermos o sistema funcionar. Agora, procure uma imagem de uma barra e de uma seta, no tutorial eu utilizarei estas (A barra eu mesmo fiz, e não é preciso ninguém me dizer que sou péssimo em Design  :hehehe:: )

      Spoiler 
       

       

      Spoiler 
       


      Agora, vai em mostrar imagem, coloque o número da imagem 1 (Ou outro número, contato que ele seja o menor usado) e escolha um imagem corresponde a uma barra, e dê Ok. 

      Spoiler 
       


      Agora precisamos saber até que certo ponto a seta vai, na minha barra, depois de mudar o Y várias vezes, o limite é 270 (Vai testando aí, mudando o y, até achar um número propício para o sistema). Agora que sabemos o limite, já podemos colocar o valor da velocidade. Temos que colocar um número divisível por 270 (No meu caso). No momento, eu colocarei 10 (E 10 é divisível por 270).

      Spoiler 
       



      Depois de ter escolhido a imagem, o valor da Y seta (0) e o valor da velocidade 10, coloque uma swtch local, e abra uma nova página de vento, ligado a switch local que foi ativada. Ah! E antes de mais nada, o valor da velocidade tem que ser negativo, porque quero que no primeiro momento a seta suba. 

      Spoiler 
       

       

      Spoiler 
       


      Neste exato momento, você ([you]), deve está achando que eu estou errado. Que quando o Y é positivo, o movimento é para cima, e quando é negativo, o movimento é para baixo. Mas só quero lhe dizer uma coisa, você está REDONDAMENTE enganado, no RPG Maker, e maioria dos programas, funciona do jeito que falei (- para cima, + para baixo). Mas no colégio não vai fazer assim que você vai tirar um 0 redondamente redondo, quando for representar um gráfico, por exemplo.  :confiante:
      Então, depois de ter corrigido o sinal, e fechado o switch, vamos criar outro evento e coloque também em processo paralelo, nele você coloca uma imagem de uma seta (E deixe logo perto da barra). 

      Spoiler 
       


      E coloque a varável x (Ainda não foi criada nenhuma variável X, mas não precisa, porque não trabalharemos no eixo X, coloque qualquer uma váriavel, logo o valor dessa variável será nula)  e depois a variável Y seta. 

      Spoiler 
       


      Agora faremos uma operação, somaremos a Y seta e a Velocidade

      Spoiler 
       


      Bem, mas a onde fica o valor desse resultado? Isso deve ser uma dúvida bem frequente. Por exemplo, se somamos uma Variável qualquer (X) com uma outra variável qualquer (Y), o valor será guardado na variável X, porque é nela que a operação está sendo feita. E se o valor de X ser 5 e o Y ser 6, o resultado será 11, e esse resultado ficará guardado no X, e o valor dele passará de 5 para 11. Retomando, entendo a operação, no meu sistema, o Y seta é: 0; e a velocidade é; 10. A operação vai fazer: Y Seta (0) + Velocidade (10) = 10, e esse 10 passará sendo o valor do Y seta, depois novamente: Y seta(10) + Velocidade(10) = 20, e depois Y Seta (20) + Velocidade = 30, e assim sucessivamente, toda vez o Y seta vai aumenta +10 e somado +10. Então, vai em Opções de Variáveis selecione no individual a Y Seta, coloque a operação + e selecione no individual a Velocidade. Agora faremos uma condição, para que a seta não passe do limite da barra. Na minha barra, a seta só pode atingir -270, então vamos colocar uma condição para que quando o valor seja -270, fazemos uma outra operação. Coloque em condições, e selecione a variável: Y Seta; e coloque o valor da constante igual à: -270 (Que é meu caso). E dê Ok. 

      Depois disso, coloque dentro da condição: Operação de Switch Local A; e abra uma nova página, ativando a switch correspondente e coloque em processo paralelo. 

      Spoiler 
       

       

      Spoiler 
       


      E bem no começo da página, vamos fazer outra operação, desta vez diferente, como o valor do Y seta a esta altura é negativo (-270), temos que somar com um número positivo (Lembra? números com sinais diferentes, subtrai e coloca-se o sinal em quem tiver o maior modulo.) Subtrairemos com o Y seta, mas agora colocaremos a operação de menos, com isso, o valor vai aumentando até chegar à zero. Vai ficar assim: Y seta (-270) - Velocidade (-10) = -270 -(-10 ) => -270 + 10 => -260. Depois: -260 - (-10) = -260 + 10 => -250. E assim sucessivamente até chegar à zero. 

      Spoiler 
       


      E agora, criaremos uma condição para quando esse resultado for obtido. Vá em Condições, selecione a variável Y Seta e coloque a constante igual à 0. 
      [

      Spoiler 
       


      E dentro da condição, desativa a swich local que você usou, com isso o programa passará a executar os comandos da primeira página. Com isso, você percebe que o sistema virá uma especie de ciclo. A variável Y seta vai somando com a velocidade, diminuindo cada vez em -10, até chegar a -270, e com isso, ativa a segunda página, desta vez, somando +10 a variável Y Seta, que vai aumenta até chegar à 0. E quando chegar de novo à -270, vai ativar a segunda página....
      E por fim, faremos umas condições, quando a seta chegar na metade da barra e o jogador apertar a tecla nessa hora, ele ganha o mini-game. Primeiro vou falar uma coisa, não usarei o Press como condição, porque ia ser fácil ganhar, o cara ia ficar segurando a tecla até a seta chegar na posição X. Então, usarei o método Trigger, que se você apertar a tecla, fará determinada coisa apenas uma só vez (Mesmo se você segurar a tecla). Crie uma condição de Script, e coloque assim: 

      Input.trigger?(Input::C)
      Spoiler 
       


      Muita gente rebe um erro, quando se coloca um if na frente, e não é preciso (E não é pra colocar!). Ali é uma condição, e já tem um if automaticamente na frente do comando, então não coloque o if. Depois de ter colocado a condição, coloque outra condição dentro da condição  ('.'). Coloque condição de variável e coloque a constante igual à -140 (Eu disse que quando a seta chegasse na metade da barra ia acontecer tal coisa, mas a metade de 270 é -135, e como o valor está diminuindo em -10 em -10, nunca chegaria à 135  :hehehe: ) Depois de ter colocado o valor da constante, coloque uma exceção, para que aconteça tal coisa se a condição não for cumprida. 

      Spoiler 
       


      Dentro das duas condições, coloque uma imagem de positividade.

      Spoiler 
       


      E na exceção, coloque uma de negatividade, e também coloque o mesmo número para as duas imagens, para não ter que ficar apagando-as.

      Spoiler 
       

       

      Spoiler 
       


      Pronto!  :phew: O sistema terminou! Já já coloco um vídeo. [you], comente aí se você gostou ou não do sistema. Me diga alguma erro no tópico.
      Até! 


        


      [o]Multimídia:




      Vídeos:

      Spoiler 
       



      [o]Para Baixar:

       

      Imagem Postada
      Clique para baixar~




      [o]Nova Versão:

       

      Imagem Postada
      Clique para baixar~




      [o]Créditos:


      Eu (Railson_Games), por ter criado o sistema e ter compartilhado.