perturbado2
Neutro
alguem pode me dizer se tem o comando de voar??
no caso o /mc
no caso o /mc
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
Ao se registrar conosco, você poderá discutir, compartilhar e enviar mensagens privadas com outros membros da nossa comunidade.
Inscreva-se agora!jimmyfilips disse:Ultimo edit: Ifmatches / variáveis globais
Pra começar, você precisa entender duas coisas básicas:
1 - CONTROLES DE VARIÁVEIS
2 - CONDIÇÕESCOMANDO "IF" (SE)
em português, 'if' significa "se".
o uso dela é simples:
SE uma condição for real, fazer isso.
Ok, mas tenho duas perguntas:
Que condição é essa?
um exemplo básico é:
Se 5 for maior que 2, ficaria:
if(5 > 2);
(mais detalhes sobre como montar condições vão ser dados mais a frente)
mas o que eu defino o que ele vai fazer?
Bem, logicamente, ele não vai adivinhar o que precisa fazer se a condição for verdadeira, então imagine da seguinte forma:
você tem 5 coisas pra fazer:
1
2
3
4
5
mas na segunda coisa, se algo estiver diferente, você precisa fazer algo mais, mas o 3, 4 e 5 vão ser feitos independente do que acontecer no dois
Como defino o que deve ser feito? Simples!
IMAGINE ISSO:
Se(isso = isso)
fazer isso
isso
e isso
fim"Se"
esse fim"Se" define até onde deve ser executado, SE algo for verdadeiro!
como faço isso?
na macro seria "endif;"
resumindo, ficaria +/- assim:
Mas calma, ainda não acabouCódigo:IF(CONDIÇÃO); FAÇA ISSO ISSO E ISSO ENDIF;
já dá pra fazer muita coisa com isso! mas tem um comando simples que pode ajudar muito!!
Imagine isso:
imagine a poluição (e complicação) de colocar vários "SE", condição por condição!Código:Se fizer sol, vou fazer 1 Se Chover, vou fazer 2 Se ficar nublado, tambem vou fazer 2 Se tiver caindo uma tepestade, tambem vou fazer 2
Não seria mais fácil dizer
esse senão, vai abranger tempo nublado, tempestade, chuva, neve e qualquer outra condição climática que vier,Código:Se fizer sol, vou fazer 1 Senão, faço 2
afinal, se você não demarcar TAMBÉM o senão, ele faria
útil não?Código:Se fizer sol, vou fazer 1 vou fazer 2 (sem condições significa de qualquer forma)
ele ficaria assim:
Hmmm, legal, mas e se eu quiser dizer "Se for assim, faça isso, mas se for assim, faça isso, se não for nenhum dos dois faça isso"?Código:IF(condição); fazer 1 ELSE; fazer 2 ENDIF;
veja bem, é um comando um tanto complexo, daria pra fazer só com if e else, mas seria um pouco chato, não concorda?
é a partir daí que outro comando que o Yao sabiamente me lembrou, entra na jogada!
COMANDO ELSEIF;
Como funciona?
Seguindo a logica dessa frase, analise o codigo de acordo com as cores:
"Se for assim, faça isso, mas se for assim, faça isso, se não for nenhum dos dois faça isso"
if(condicao);
faça isso
elseif(condicao2);
faça isso
else;
faça isso
endif;
COMANDO IFMATCHES
Espera, eu tentei usar o if com texto, mas parece que ele não funciona, porque?
Para utilizar o comando if para texto é um pouquinho diferente
ao invés de IF(condição); você usará IFMATCHES(condição);
Como faço uma condição para IFMATCHES?
Ela aceita um tipo de condição, como uma espécie de verdadeiro ou falso, ou simplesmente igual, você deve usar o comando assim:
Dessa forma, ele verá se a variável &var é igual a "teste"Código:IFMATCHES(%&var%,teste);
COMANDO "DO" (REPETIR)
"DO", no português mais simples seria "FAÇA"
Pegando a logica do "endif", ele funciona da seguinte forma:
do; / loop; Faça / repita
esses comandos vão fazer com que tudo repita dentro deles até que a macro seja desligada
imagine o "loop;" como o "endif;"
Exemplo:
do(); / loop; Faça(tantas vezes) / repitaCódigo:DO; fazer 1 fazer 2 fazer 3 loop;
esses comandos vão fazer com que tudo repita "tantas vezes", definindo a quantia dentro de "()"
Exemplo:
do; / while(); Faça / enquanto(condiçao)Código:do(5); fazer 1 fazer 2 fazer 3 loop;
esses comandos vão fazer com que tudo repita ENQUANTO a condição for verdadeira
(mais detalhes sobre como montar condições vão ser dados mais a frente)
Exemplo:
do; / until(); Faça / até(condiçao)Código:do; fazer 1 fazer 2 fazer 3 while(a>2);
esses comandos vão fazer com que tudo repita ATÉ uma condição ser verdadeira
Exemplo:
Código:do; fazer 1 fazer 2 fazer 3 until(a=5);
3 - VARIÁVEISé com isso que você vai definir coisas do tipo:
SE O PLAYER ESTIVER OLHANDO PARA O NORTE, FAÇA ISSO
REPITA ATÉ QUE A DURABILIDADE SEJA MENOR QUE 5
OPERADORES RELACIONAIS (ou só "operadores")
Não vou nem explicar, olhando já é possível entender ^^
IGUAL
=
DIFERENTE
seria a mesma coisa de dizer (se isso não for assim)
!=
MAIOR
>
MENOR
<
MAIOR OU IGUAL
>=
MENOR OU IGUAL
<=
MAS O QUE FAÇO COM ELES?
é com eles que você irá comparar números e variáveis (vou explicar sobre elas mais pra frente)
Um exemplo pratico muito usado é o de durabilidade,
por exemplo, se sua espada estiver com baixa durabilidade, a macro para, ficaria assim:
Código:IF(%DURABILITY% < 5); - Se a durabilidade for menor que 5 STOP; ENDIF;
FLAGS
"flags" em portuguêns significa "bandeira"
Como Funcionam?
uma bandeira só tem 2 "status": Ligado ou Desligado
lembre-se dos bandeirinhas no futebol, SE estiver levantada (ligada) é impedimento, SE estiver baixada (desligada) não é nada
(lembre-se desse SE)
COMO LIGAR
COMO DESLIGARCódigo:set(nome_da_flag);
E SE EU QUISER APENAS "INVERTER", TENHO QUE USAR IF?Código:unset(nome_da_flag);
Não, você pode usar um comando que define isso automaticamente!
Agradecimentos a iBieel por ter me lembrado desse comando!
COMANDO TOGGLE(nome_da_flag);
esse comando, irá inverter o status da flag
Se ela estiver desligada, irá ligar
Se estiver ligada, irá desligar
Mas onde aplico elas?
Você vai utilizá-la com o comando IF (lembre-se do exemplo dos bandeirinhas)
assim, escrevendo o comando dessa forma, ele já lê como:Código:if(nome_da_flag);
se a flag "nome_da_flag" estiver LIGADA
TEXTUAIS E NUMÉRICAS
essas variáveis armazenam dados que podem ser alterados durante o código, ou armazenar dados que sejam adquiridos na hora do uso, como por exemplo %ITEM%, %DIRECTION%, %PLAYER%, etc. (todas vão ser explicadas mais pra frente).
Como Funcionam?
o uso delas são simples, vou explicar uma de cada vez
NUMÉRICAS
usadas para armazenar APENAS NÚMEROS, ela não armazena texto, caso tente armazenar texto nela, ela ficará em branco.
elas são identificadas da seguinte forma:
#nome_da_variavel
automaticamente, qualquer variável numérica vem com o valor 0, para alterá-lo, é simples:
#nome_da_variavel= conteudo;
OBS:
1 - o "nome_da_variavel" é a sua escolha!
2 - o símbolo "#" deve SEMPRE estar na frente do nome da variável
3 - o conteúdo pode ser um numero
ex.: #nome_da_variavel=20;
ou pode ser outra variável
ex.: #nome_da_variavel=%#var2%;
USANDO AS VARIÁVEIS:
para usá-las é simples, elas devem ficar dentro de "%", por exemplo:
IF(%#variavel%);
(lembrando que junto com o nome é obrigatório colocar o simbolo # ou &, e ele deve ser o mesmo que você usou quando atribuiu um valor a ela).
MANIPULANDO AS VARIÁVEIS:
uma variável numerica pode ser manipulada de várias formas, como são números, contas matemáticas podem ser feitas com elas, veja
com elas é possívelCódigo:%#var1% = %#var1%+2 esse comando altera a variável var1 adicionando 2 a mesma %#var2% = %#var1%+2 esse, altera OUTRA variável (var2) colocando nela o valor da variável var1 + 2
OBS: TODO o tutorial esta sendo feito de cabeça, e muita coisa pode ser deixada pra trás, se souber de outras contas possíveis, marque nos comentários!Código:%#var1%+5 Adicionar %#var1%-3 Subtrair %#var1%/7 Dividir %#var1%*7 Multiplicar
outra forma de manipulá-las, é através dos comandos INC e DEC
o uso deles também é bem simples e útil
COMANDO INC
é usado para ACRESCENTAR um numero a variável, desta forma:
um exemplo simples de uso é:Código:INC(#nome_da_variavel, valor);
este comando irá acrescentar 1 a variável #varCódigo:INC(#var, 1);
COMANDO DEC
é usado para SUBTRAIR um numero a variável, desta forma:
um exemplo simples de uso é:Código:DEC(#nome_da_variavel, valor);
Este comando irá subtrair 1 a variável #varCódigo:DEC(#var, 1);
TEXTUAIS
usadas para armazenar caracteres de TEXTO, com ela você pode salvar nomes e outros tipos de informações em forma de texto e/ou números.
elas são identificadas da seguinte forma:
&nome_da_variavel
automaticamente, qualquer variável numérica vem com o valor 0, para alterá-lo, é simples:
&nome_da_variavel= conteudo;
OBS:
1 - o "nome_da_variavel" é a sua escolha!
2 - o símbolo "&" deve SEMPRE estar na frente do nome da variável
3 - o conteúdo pode ser um texto
ex.: &nome_da_variavel=OLÁ;
ou pode ser outra variável
ex.: &nome_da_variavel=%&var5%;
USANDO AS VARIÁVEIS:
assim como as numéricas, para usá-las é simples, elas devem ficar dentro de "%", por exemplo:
IF(%&variavel%);
(lembrando que junto com o nome é obrigatório colocar o simbolo # ou &, e ele deve ser o mesmo que você usou quando atribuiu um valor a ela).
DESVANTAGEM: ela não pode ser manipulada.
VARIÁVEIS DO MINECRAFT
Responsáveis por obter dados do jogo, essas variáveis são separadas em seis grupos
ao contrario das demais elas não levam um caractere do tipo # ou &, mas elas tem duas características únicas:
1 - São escritas SEMPRE em letras MAIÚSCULAS
2 - SEMPRE serão escritas entre "%"
INFORMAÇÕES GERAIS
INFORMAÇÕES DO PLAYERCódigo:%PLAYER% - nick do jogador %DIMENSION% - nome da dimensão atual (nether/mundo normal) %SERVER% - IP do server %RAIN% - condiçao de chuva (0 - 400)
INFORMAÇÕES DA ARMADURA (EM USO)Código:%XPOS% - posição X atual %YPOS% - posição Y atual %ZPOS% - posição Z atual %DIRECTION% - direçao em que está olhando (apresentada atraves de uma letra N/S/E/W) %YAW% - direção horizontal em que está olhando, medida em ângulos, vai de (-90 a 0) e de (0 a 90) %PITCH% - direçao vertical em que está olhando, medida em ângulos, vai de (-90 a 0) e de (0 a 90) %HEALTH% - Sangue atual do jogador (0 - 20) sendo meio coraçao = 1 %HUNGER% - Fome atual do jogador (0 - 20) sendo meia carne = 1 %SATURATION% - (SEM INFORMAÇOES) %OXYGEN% - Oxigênio atual do jogador (0 - 400)
INFORMAÇÕES DO ITEM QUE ESTÁ EM SUA MÃOCódigo:%BOOTSDURABILITY% - Durabilidade da bota %BOOTSID% - ID da bota usada %LEGGINGSDURABILITY% - Durabilidade da calça %LEGGINGSID% - ID da calça usada %CHESTPLATEDURABILITY% - Durabilidade do Peitoral %CHESTPLATEID% - ID do peitoral usado %HELMDURABILITY% - Durabilidade do capacete %HELMID% - ID do capacete usado
Descrição da função %STACKSIZE% enviada por ManlowCódigo:%ITEM% - ID do item que esta em sua mão %ITEMNAME% - Nome do item que está em sua mão (Ex: Torch) %DURABILITY% - Durabilidade do item que está em sua mão %STACKSIZE% - Quantia Maxima que o Item pode Ser Juntado (stackado)
INFORMAÇÕES SOBRE O QUE ESTÁ EM SUA MIRA
Descrição da função %HITDATA% enviada por hiago85Código:%HIT% - Tipo do que esta em sua mira (PLAYER, BLOCK, etc) %HITID% - ID do que esta em sua mira %HITNAME% - Nome do que está em sua mira (baseado no ID) %HITDATA% - "fase" ou "estágio" do bloco, Exemplo: Fungo pronto para colher HITDATA=3
INFORMAÇÕES DE "BOTÕES PRESSIONADOS"
Código:%KEY_CTRL% - Verifica se a tecla CTRL esta sendo pressionado %KEY_ALT% - Verifica se a tecla ALT esta sendo pressionado %KEY_SHIFT% - Verifica se a tecla SHIFT esta sendo pressionado %KEY_(name)% - Verifica se a tecla definida esta sendo pressionado (ex:%KEY_(B)%)
VARIÁVEIS DIVERSAS
ALEATÓRIAS (RANDOM)
uma variável aleatória, é gerada pelo macro, respeitando a limitações dadas pelo programador
Exemplo: "Diga-me um numero qualquer de 1 a 20".
COMO FUNCIONA
ela tem a seguinte estrutura:
RANDOM(#variavel,max,min);
exemplo de uso: RANDOM(#chute,100,5);Código:#variavel: o valor gerado pelo random será armazenado aqui. o nome é escolhido por você, basta deixar o "#" pra que assim ela seja identificada como numérica. max: é o valor máximo que a variável pode ter min: é o valor mínimo que a variável pode ter
GLOBAIS
Essas variáveis não trazem nada de novo comparado ao que já foi explicado, porém, as variáveis #var e &var só podem ser usadas DENTRO DA MACRO em que elas estão sendo manipuladas
Ok, espera... Eu não entendi '-'
É mais simples do que parece, imagine que você tem duas macros rodando, e você precisa que uma pare, quando a outra fizer algo, como fazer isso?
Variáveis globais salvam um valor que pode ser usado em QUALQUER OUTRA MACRO, mesmo com a que criou o valor ainda executando.
Como usar
basta colocar um @ na frente da variável e pronto!
Exemplos:
Código:@#var1 | @&var2 %@#var1% %@&var2%
PROXIMAS EXPLICAÇÕES:
VARIAVEIS: Strips
4 - COMANDOS BÁSICOS
PROGRAMADORESOk, você já aprendeu a trabalhar com números e condições, mas não tem graça aprender tudo isso se não tiver o que fazer com eles, certo? Então vamos a alguns comandos básicos que o macro oferece, como por exemplo, atacar, clique direito, ir para frente, para trás, para os lados, pular, etc etc etc... Para isso, leia o final deste tópico
Se quiserem acrescentar ou até mesmo me corrigir, FIQUEM A VONTADE!!
Este tópico ensina como dar vida ao seu macro, porém, este é só o "esqueleto" de tudo, após aprender tudo o que foi dito aqui, leia ESTE TÓPICO para aprender todos os comandos deste mod!
Veja mais tutoriais em: http://forum.craftlandia.com.br/ipb/index.php?/tags/forums/aprenda%2Ba%2Bprogramar/