Você está na página 1de 8

27/11/2015 Variáveis: Aula 6

Olá, Visitante! Usuário ••••• Busca...

Centro RPG Maker » Variáveis: Aula 6

Variáveis: Aula 6

Comandos adicionais.

Variáveis condicionais:[/u]

Já vimos todos os modos de programar as variáveis, desde criar mini­quests
utilizando condições e somas, até se localizar com coordenadas.
Agora, iremos complementar nossa aula aprendendo onde e como utilizar alguns
comandos com variáveis, que não foram explicados nas aulas anteriores.

Apesar do nome, temos outro modo de trabalhar as variáveis com condições, porém
sem necessariamente utilizar o comando de condições.
Veja essa imagem:

No seu evento, abaixo das condicionais das switchs, você tem a opção “variável”.
Aqui, nós iremos fazer o mesmo que faríamos com uma switch: Ativar uma página
de determinado(s) evento(s). Só que a diferença entre uma switch e uma variável
que ativa páginas de eventos, é que as switchs apenas ficam ON ou OF se algum
outro comando mandar, porém, com as variáveis temos uma situação diferente, já
que essa página só será ativada se a variável X (uma variável que você escolher)
chegar a um determinado valor (que você também irá escolher).
O que eu acho péssimo é que apenas podemos ter a opção “maior/igual” nas
variáveis, ou seja, não podemos condicionar que algo ocorra se variável X diminuir e
chegar a um valor desejado, apenas aumentar, fazendo assim nós termos que criar
diversas “gambiarras”.
Mesmo com esse ponto negativo, ainda podemos programar muitas coisas com essa
condicional. Vamos como de costume a um exemplo?
Que tal criarmos um simples e prático mini­abs para isso? Como de costume: Se
encostarmos­nos ao inimigo, teremos que pressionar o botão de ataque, e claro...
Ataca­lo. Do contrário, se não pressionarmos nada, ele (inimigo) que nos atacará.
Se atacarmos o inimigo 5 (cinco) vezes, ele irá ser derrotado, e irá sumir do mapa.
Vamos lá?

Crie um evento dessa forma (se atente em todos os comandos e opções)

http://centrorpg.com/index.php?page=tutoriais9 1/8
27/11/2015 Variáveis: Aula 6

Acima temos tudo programado do que precisamos inicialmente: Leia com atenção o
comentário em verde do comando, também.
O que temos aqui? Se o personagem pressionar a tecla A ao encostar­se ao inimigo,
ele irá receber uma animação de golpe, e depois será empurrado dois passos para
trás.
Se ao encostarmos­nos ao inimigo, e não pressionarmos a tecla de ataque, o inimigo
irá nos dar um golpe (animação), seremos empurrados dois passos para trás
também, e depois perderemos 200 de HP.
Até aqui tudo tranquilo, correto? Porém, precisamos fazer com que de alguma forma
ao atacarmos o inimigo, ele perca HP também! Ou... No caso aqui, aumente os
pontos de danos!
Dentro da condição de tecla, após o comando da animação do golpe, crie uma nova
variável com o nome de “Danos do inimigo”.
Agora determine um valor que será adicionado aos pontos de danos do inimigo. Eu
irei colocar +1, mas você poderá definir a quantidade que preferir.

Certo, agora toda vez que o personagem atacar o inimigo, será adicionado aos
pontos de danos dele +1.
Agora, crie uma nova página nesse evento, e deixe sem gráfico.
Feito isso, vamos criar nossa condicional, ou seja, quando a variável “Danos do
inimigo” chegar a determinado valor, essa página do inimigo será ativada, onde não
há nada, ou seja, o inimigo sumirá do mapa.
Nessa segunda página do evento, marque a caixa “variável” da opção “condições do
evento”, selecione a variável “danos do inimigo” e dentro do Box onde há o número
zero, coloque a quantidade de danos que você deseja que o inimigo receba, ao ser
atacado diversas vezes. Eu irei colocar 5 (cinco), ou seja, se atacarmos o inimigo
cinco vezes, ele irá executar essa outra página do evento, onde ele irá sumir.

http://centrorpg.com/index.php?page=tutoriais9 2/8
27/11/2015 Variáveis: Aula 6

Rode o teste do jogo, e tente derrotar o inimigo, pressionando a tecla A ao encostar­
se a ele! Quando você ataca­lo as cinco vezes ele irá sumir certo? Se sim, tudo deu
certo!
Esse processo de utilizar variáveis condicionais nas páginas de eventos, sem
condições é muito eficaz e prático, e claro que o ABS mostrado aqui foi apenas um
exemplo (pois ele é bem bugado) você poderá fazer diversas coisas com esse
comando, basta a sua necessidade na programação.

Definir teclas:

Um comando que infelizmente as engines mais novas não possuem, é o
comando “definir teclas” que em minha opinião pode ser bem útil e podemos
utiliza­lo para outros fins, de um jeito que a condição de teclas não funcionaria.
Vamos supor que o jogador deva pressionar a tecla “S” numa quest, e se ele
por ventura pressionasse outro botão, o jogo daria game over.
Claro que esse exemplo é bem improvável, mas se quiséssemos programar
algo mais avançado, como por exemplo, um sistema de Guitar Hero, esse
comando cairia muito bem.
Mas, como não queremos deixar o tutorial enorme, iremos apenas utilizar esse
exemplo citado por mim, anteriormente.
O comando de definir teclas armazena o valor de uma variável nele, e com
essa variável podemos criar uma condição de tecla, porém com números. É
algo mais ‘livre’ que o comando “condição de tecla”.
Vamos comparar a diferença entre ambos os comandos? Irei utilizar o exemplo
da tecla S. Vamos primeiro programar com o definir teclas:
Crie um novo evento em processo paralelo em seu mapa, e vá ao comando
“Definir teclas”:

Uma janela assim irá aparecer:

http://centrorpg.com/index.php?page=tutoriais9 3/8
27/11/2015 Variáveis: Aula 6

Primeiramente você irá definir uma variável para trabalhar com o comando, no
caso acima eu já defini uma variável, a variável de ID 5 com o nome de
“Tecla”.
Essa lista de números representa o valor de cada tecla nesse comando. 
Então já que no exemplo o jogador deve pressionar a tecla “S”, eu irei criar
uma condição com o número 15, vide a lista: S = 15. Se no caso fosse à tecla
“Shift” seria o valor 11, e assim por diante...
Dê ok, e como dito acima, crie uma condição utilizando a variável que
armazena essa tecla, no meu caso a variável “Tecla” de ID 5.
Em constante deixe o valor da tecla desejada, e como no exemplo a tecla é a
S, deixarei o valor 15 na constante.
Agora, dentro da condição, utilize um comando que demonstre que o jogador
pressionou a tecla correta, eu apenas escrevi “Você venceu” com o comando
de mostrar mensagens.
Dentro da exceção desta condição, crie outra condição utilizando a mesma
variável de tecla, com 15 novamente na constante, só que dessa vez marque a
caixa “diferente”:

Dentro dessa outra condição, utilize o comando mostrar mensagens e escreva
algo do tipo: “Errado”.

Isso significa que: se o jogador pressionar a tecla S, o comando de definir
teclas vai armazenar o número 15 na variável, e a condição será executada, se
a variável da tecla for igual a 15, a mensagem de sucesso irá aparecer, mas
caso o jogador pressione qualquer tecla diferente da tecla S, a exceção será
executada.
Agora rode o teste do jogo e experimente: Primeiro pressione a tecla S. Tudo
certo, não? Agora tente pressionar qualquer tecla dentre (A,D,Q,W,Z e X) e
veja o que ocorre... A mensagem de erro aparece, certo? Se tudo isso ocorreu
corretamente parabéns!
Como eu já disse, esse exemplo é bem simples, mas com esse comando você
poderá fazer grandes coisas.
Mas você ainda não viu a diferença entre utilizar todo esse método do definir
teclas, e do comando de condição de tecla, certo?

http://centrorpg.com/index.php?page=tutoriais9 4/8
27/11/2015 Variáveis: Aula 6
Vamos ver isso agora! Apague tudo que fez até aqui, e iremos continuar com o
exemplo da tecla S:
Agora, crie uma condição de tecla, com a letra Y (caso não saiba, a letra “Y”
corresponde à tecla S no RPG Maker).
Agora faça o mesmo procedimento: Dentro da condição coloque a mensagem
“Você venceu”. Na exceção, já que não podemos utilizar o comando “diferente
da tecla Y” já que não estamos trabalhando com variáveis, utilize apenas o
comando de mostrar mensagens e escreva “errado”. Rode o teste do jogo.
Só de você entrar no jogo a mensagem de erro aparece, e isso ocorre porque o
RPG Maker entende que como nenhuma tecla está sendo pressionada, nem
mesmo a S, ele irá executar a exceção.
Temos um modo de impedir isso, mas para isso acontecer, teremos que criar
uma condição para cada tecla: A,D,W,Q,Z e X. Para só assim o RPG Maker
entender que a mensagem de erro apareça ao pressionar uma dessas teclas
citadas, e a mensagem de sucesso se pressionar S.
Teremos então sete condições no final (uma para cada tecla) sendo que com o
comando de “definir teclas” teremos apenas duas.
Viram a diferença agora? Garanto que com o definir teclas, não irá gerar lag
alguma no projeto, e ele é mais eficiente, evitando assim termos que
programar várias condições.
Agora que você aprendeu como utilizar/quando e de que forma, esse comando,
você poderá criar vários projetos e sistemas como os de Guitar Hero ou Dance
Revolution! Experimente!
 PORTAL

 FÓRUM O resto de uma divisão:

 JOGOS Nas aulas anteriores, eu prometi explicar como que o operador (%) funciona
nas variáveis do RPG Maker.
 TUTORIAIS Como o título diz: “O resto de uma divisão”, ou seja, esse comando nada mais,
nada menos serve para acessar o valor do resto de uma divisão entre
variáveis.
 LOJA
Ele é bastante utilizando se houver necessidade de fazermos algum comando
que entre uma divisão, algo ocorra se o resto da mesma for X.
 RPG MAKER Eu já o utilizei diversas vezes, para criar um sistema de HUD.
Em minha opinião, esse comando é pouco usado se não houver necessidade de
 Login um cálculo para executarmos alguma informação com base de uma divisão,
mas mesmo assim ele não deixa de ser importante.
 Registrar

Teleporte através de variáveis:
 BUSCA AVANÇADA

Você sabia que podemos teleportar eventos ou até mesmo o personagem, apenas utilizando
 EXPANDIR
variáveis de coordenadas?
Vamos primeiro testar o teleporte de eventos (que só podem ser teleportados no mesmo
 VOLTAR AO TOPO mapa do personagem).
Nós podemos fazer um exemplo de que o herói possui uma caixa, e se ele pressionar a tecla
A, ele soltará a caixa no mapa.
Para isso ocorrer, a caixa deve estar o tempo todo junto do herói no mapa, mas não iremos
utilizar o comando “seguir herói”, pois ele é pouco eficiente.
Nós podemos utilizar o comando de “posição do evento” e deixar para que a caixa sempre
fique nas mesmas coordenadas do herói.
Começando... Crie o evento da caixa no mapa em processo paralelo, e de preferência com o
gráfico da mesma. Deixe marcada a opção “direção fixa” e crie uma switch qualquer com o
nome de “Caixa” e deixe­a ON nessa página do evento em “condição do evento”.
Agora, nos comandos de eventos crie duas variáveis armazenando as coordenadas X e Y do
personagem no mapa:

http://centrorpg.com/index.php?page=tutoriais9 5/8
27/11/2015 Variáveis: Aula 6

Agora chame o comando “posição de evento” – que se encontra na pag.2 dos comandos de
eventos, e faça o seguinte na janela que aparecer: 
• Deixe marcada a opção “Este evento” e caso não esteja marcada, marque­a.
• Set a opção “Especificar por variável”, e onde está pedindo as coordenadas X e Y, coloque
as variáveis das coordenadas X e Y do personagem no mapa:

O que fizemos aqui? Primeiro armazenamos nessas duas variáveis, as coordenadas X e Y do
personagem no mapa, e depois com o comando “posição do evento” iremos teleportar o
evento da caixa sempre para as mesmas coordenadas X e Y do herói.
Depois de tudo isso, utilize uma switch local para o RPG Maker executar a segunda página
desse evento, onde iremos deixar a mesma com o gráfico da caixa, porém sem comandos.
Agora, crie um segundo evento no mapa em processo paralelo, porém com uma condição da
tecla A, e dentro desse comando deixe ON a switch “Caixa”.

Teste o jogo, e ande pelo mapa: Depois pressione a tecla A e veja o que ocorre: A caixa
apareceu bem onde você estava, é algo como “jogar a caixa no mapa”.
Esse sisteminha foi apenas um exemplo, e você poderá fazer diversos outros sistemas com o
teleporte de eventos através de variáveis, como sistemas de projéteis ou bombas, por
exemplo.
E você não precisa necessariamente sempre teleportar o evento para as coordenadas do
personagem, você pode teletransporta­lo para as coordenadas de outro evento, também.

Teleporte do personagem:

http://centrorpg.com/index.php?page=tutoriais9 6/8
27/11/2015 Variáveis: Aula 6

Assim como no teleporte através de eventos, você pode teleportar o personagem para as
coordenadas X e Y de um evento qualquer no mapa. Basta utilizar o comando “Teletransporte”
que também se encontra na página 2 dos comandos de eventos, e armazenar duas variáveis
com as coordenadas X e Y de um evento no mapa, e criar uma terceira variável com o nome
de “ID” que armazena justamente a ID do mapa, onde o personagem quer se teleportar: Para
fazer isso com essa terceira variável, vá até a opção “Outro” e selecione “ID do mapa”:

Agora, com o comando de opções de variável, utilize novamente a variável “ID” e deixe sua
constante igual a 1, já que estou no mapa 1.
Agora, com o comando de teletransporte, marque a opção “especifique por variável” e coloque
as respectivas variáveis nas opções que aparecerem: Variável de ID do mapa e as variáveis
das coordenadas X e Y do evento no mapa:

Seu comando de evento ficará assim:

Agora, o personagem será teleportado para as coordenadas X e Y de determinado evento.
Como eu sempre digo isso é apenas um exemplo, você poderá fazer o que desejar com esses
comandos, agora que sabe como eles funcionam.

<< Voltar para o Índice.

Autora: MayLeone

http://centrorpg.com/index.php?page=tutoriais9 7/8
27/11/2015 Variáveis: Aula 6

SMF 2.0.2 | SMF © 2013, Simple Machines 
© Centro RPG Maker ­ Alguns direitos reservados.
Layout por Uhtred

http://centrorpg.com/index.php?page=tutoriais9 8/8