AgitaGAMES


Bem Vindos ao AgitaGAMES!

Registre-se para obter acesso especial em todo conteúdo presente no Fórum!
Tenha um bom uso do nosso fórum, e seja ativo!






Você não está conectado. Conecte-se ou registre-se

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 1]

avatar
Administrador
O sistema a seguir é útil para quem quer
sortear valores aleatórios para várias variáveis sem que os valores
delas se repitam. Com isso é possível fazer sistemas para embaralhar
Card Games e coisas do tipo.

(É recomendável que saiba o básico sobre variáveis, labels, switches e condições.)

Primeiro, crie um evento. Ele pode ser
ativado da forma que você quiser, depende de que sistema você vai
acoplar a isso. No exemplo a seguir, o evento iniciará em processo
paralelo.

*

Parte 1: Organizando as variáveis


Para que fique tudo organizado e que
você não se confunda na hora de programar o sistema, é altamente
recomendado nomear as variáveis.


Repare nos nomes: as variáveis Valor e Aux irão nos auxiliar no sistema, enquanto num1, num2, num3, num4 e num5 são as variáveis que receberão os valores aleatórios e diferentes.

*

Parte 2: Os primeiros comandos


Agora vamos começar a programar: selecione o comando de evento Opções de Variável, selecione a variável Valor, escolha Substituir e coloque o valor 1 em Constante, depois clique em OK.


Agora vamos criar uma Label, nomeando-a como quiser:


Nossos comandos de eventos já estão mais ou menos assim:


Agora abra mais uma vez o comando Opções de Variável e selecione a variável Aux, escolha Substituir colocando Aleatório de 1 até 5. Vai ficar assim:


Depois disso, vamos adicionar um comando muito importante para que o sistema fique funcional. Escolha o comando Esperar e coloque 1 frame:


E os seus comandos devem ter ficado como os da imagem abaixo:



*

Parte 3: Criando as condições


Agora crie uma Condição, selecione a opção Variável e escolha a variável Aux. Selecione a opção Constante, coloque o valor 1, e embaixo escolha a opção Igual a. Se quiser, desmarque a opção para adicionar exceção, assim:


Agora crie outra condição e faça nela o mesmo que a outra, só que dessa vez coloque a Constante igual a 2.


Repita o processo criando mais 3
condições, uma com a constante igual a 3, outra com ela igual a 4 e
outra com ela igual a 5. Feito isso vamos ter 5 condições e seus
comandos vão ficar assim:



*

Parte 4: Criando mais condições


Agora vamos criar uma condição dentro da nossa primeira condição (que fizermos anteriormente). Escolha o comando Variável, selecione a variável num1, escolha a opção Constante, coloque zero no valor e depois escolha a opção Igual a. Dessa vez, vamos deixar marcada a opção de adicionar exceção, ficando assim:


Dê OK e abra novamente o comando Opções de variável, selecione a variável num1, escolha a opção Substituir, depois clique na opção Variável e selecione a variável Valor. Ficará assim:


Outra vez, iremos abrir o comando Opções de Variáveis. Selecione a variável Valor, escolha a opção “+” e depois coloque 1 como valor da Constante.


Agora vamos usar o comando Ir para Label. Digite lá o nome que você escolheu anteriormente para aquela que criou.


Copie o mesmo comando Ir para Label que criamos aqui e coloque-o também na Exceção da condição que criamos no início da Parte 4 deste tutorial.

Iremos agora repetir esse processo para
as outras 4 condições que criamos na Parte 3. Criamos então uma condição
dentro da segunda condição que criamos na Parte 3, só que agora ao
invés de selecionar a variável num1, vamos fazer com a num2. Na terceira, a num3, e assim por diante. Veja como vai ficando:


Repita o processo para todas as condições.

*

Parte 5: Toques finais


Agora vamos criar uma condição em cima da primeira que há em sua aba de eventos. Escolha a opção Variável, selecione a variável Valor, escolha Constante e atribua 5 a ela. Embaixo, selecione Maior.


Clique em OK e depois crie uma Switch Local (dentro da condição) que sirva para mudar a página do evento. Seus comandos ficarão assim:


O sistema está pronto!

*

Parte 6: Dicas


Para testar se o sistema está programado corretamente, vamos criar um NPC e usar o comando Mostrar Mensagem para exibir os valores das variáveis.


Agora é só rodar o jogo e ver se está tudo certo:



*

Entendeu como funciona?


Caso não tenha entendido a lógica do sistema, segue a explicação. Primeiro vemos que a variável Valor tem definido o valor 1. Após isso há uma Label e depois um sorteio aleatório da variável Aux
que vai de 1 até 5. Dependendo do valor dela, o evento irá executar uma
das 5 condições de baixo, e depois ele vai verificar, uma por uma, se
as variáveis num1, num2,
etc, são iguais a zero. Se alguma for, sabemos que não foi sorteado
nenhum valor para ela, então os comandos de dentro da condição são
executados. Ela então vai receber o valor da variável Valor, que ali é igual a 1, no momento. Além disso, a variável Valor recebe +1 em sua constante.

Em seguida, o sistema volta para a Label, e perceba que a variável Valor já é igual a 2. Uma das variáveis “num” já possui o valor 1, e portanto vem a repetição do evento, que acontece por conta da Label. Mas, dessa vez, estaremos sorteando uma variável para receber o valor 2.

Caso uma das variáveis já possua um
número, ao invés de executar o que tem na condição, irá executar a
exceção, que faz simplesmente voltar para a Label e repetir tudo até que encontre uma variável que não tenha nenhum valor até o momento.

Depois que todas as variáveis receberem seus devidos valores, a variável Valor terá uma constante maior que 5, o que significa que será executada uma condição que vai mudar a aba do evento, fazendo-o parar.

*

Perguntas frequentes


1 – Se eu quiser sortear outros valores além de 1 a 5, posso?
Claro que sim, basta mudar a sorteio aleatório que é feito com a variável Aux.

2 – E se eu quiser que o sorteio seja de 0 a 4, e não de 0 a 5? Vai dar erro se eu apenas mudar o sorteio aleatório do Aux.
É simples: no final do evento, na condição que faz o evento parar, faça a variável que recebe o valor 5 receber o valor zero.

*

Demonstração



Clique aqui para baixar um projeto de exemplo!
(feito em RPG Maker XP)





Outras Sign´s::






 
Ver perfil do usuário http://www.zonetoony.net/
avatar
Administrador
Obrigado Por Compartilhar esse tutorial





Ja Foi :
Moderador [X]
Gerente [  ]
Admistrador [X]

Minhas Metas :
200 Posts [X]
600 Posts [X]
1000 Posts [X]
2000 Posts [X]
2500 Posts [ ]

Oq Deveria ter Feito Na Epoca : (2011 - 2012)
Fazer T-lord parar De Floodar [ ]
Ter Ficado de Gerente Nao Moderador [ ]
Fazer Ipad E Zero Pararem Tmb De Floodar [ ]
Ver perfil do usuário http://www.zonetoony.net/

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

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum