🤔 Para Refletir :
"Apresente seu projeto com um post bonito. Isso atrai olhares, acredite."
- Delayzado

Separar casas numéricas de um valor em Variáveis

Dr.XGB Masculino

O Cenourão
Administração
Administração
Jogador maluco, problemático, olho parado.
Juntou-se
21 de Julho de 2015
Postagens
570
Soluções
3
Bravecoins
2.833
Área
Programação
Motor de jogo
RPG Maker 2003
Outro tutorial antigo, galera!
Esse aqui ainda resolve a dúvida de muitos makers hoje em dia. Por isso resolvi postar aqui também.
Vamos lá!



Bom, aqui vai mais um tutorial teórico.
Neste tópico vamos pegar uma noção melhor sobre as casas decimais das variáveis no RPG Maker, ou seja, saber encontrar a unidade, dezena, centena, milhar e assim vai...

Antes de fazer as aplicações, você precisa pensar: "Poxa, como é que eu posso fazer isso calculando somente números inteiros?". De repente, a lâmpada na cabeça!
Peguei um número qualquer, "12345" (Doze mil trezentos e quarenta e cinco). Com esse número, eu fiz os seguintes cálculos:
12345/10 = 1234 e sobrou 5;
12345/100 = 123 e sobrou 45.

No primeiro cálculo, percebemos que resto 5 coincide com o último dígito do número. Descobrimos a Unidade. Já então no segundo cálculo, encontramos o resto 45. Mas e agora? Não era pra achar a dezena? Calma. Ainda não terminou o cálculo da segunda, pegamos o resto e dividimos por 10. Mas por que 10 ao invés de 100? É uma técnica que eu uso: Cada vez que você encontra um resto, ela, praticamente, perde uma casa.

Veja o cálculo para entender melhor:
45/10 = 4 e sobrou 5

Muito bem! Encontramos a sua dezena, que é 4. O resto só será importante quando você calcula pela primeira vez. Depois disso vem o quociente (resultado). O caso da centena é o mesmo caso, só que com uma casa a mais:
12345/1000 = 12 e sobrou 345
345/100 = 3 e sobrou 45

Você encontrou 3. Para milhares é só subir mais uma casa e assim por diante.

Seguindo esse raciocínio, agora sim você aplica ao seu RPG Maker, usando a mesma forma que você criou na cabeça ou no papel. Para descobrir o resto de uma divisão, é só utilizar o operador Mod (no 2003 está com o símbolo +/-):

<>Variável: [0001: Valor] Set 12345
<>Variável: [0002*0006] Set v[0001]
<>Variável: [0003: Valor 9999] Mod 10000
<>Variável: [0004: Valor 999] Mod 1000
<>Variável: [0005: Valor 99] Mod 100
<>Variável: [0006: Valor 9] Mod 10
<>Comentário: ========================
<>Variável: [0002: Valor 99999] / 10000
<>Variável: [0003: Valor 9999] / 1000
<>Variável: [0004: Valor 999] / 100
<>Variável: [0005: Valor 99] / 10


Notamos que eu não descobri o resto da divisão de v[2] e muito menos dividi o v[6]. O motivo é que não há necessidade. O quociente de 12345/10000 é 1 e v[6] já está resolvido, deu 5.
Para ver se deu certo, crie uma mensagem e teste o RPG Maker:
<>Mensagem: Valor: \v[1]
Casas: \v[2]; \v[3]; \v[4]; \v[5]; \v[6]


O resultado será esse:
Valor: 12345
Casas: 1; 2; 3; 4; 5


A função destes cálculos é justamente para aqueles que desejam fazer menus personalizados, CBS's e várias maneiras de aplicar esses números.
Espero que tenham gostado deste tutorial.
Muita gente já deve conhecer esse macete, mas é sempre bom compartilhar aqui para aqueles que ainda não sabem.

Um abraço a todos e até a próxima!
 
Voltar
Topo Inferior