[Tutorial] Como criar seu próprio módulo com imagens-personagens |
Bolodefchoco « Sénateur » 1518126120000
| 5 | ||
Este tópico serve não só como um tutorial para aqueles que desejam módulos de Street Fighter e My Little Poney, mas também uma carta de esclarecimento para que não se empolguem querendo criar um League of Legends dentro do fraco compilador que nos é disposto no Transformice. É aconselhável que você compreenda o código e altere-o. Copiar e colar não funcionará para você :/ Por mais inusitado que seja, farei um módulo do Ben 10, tem vários monstros e poderei passar a imagem de forma mais fácil. Quando começamos a pensar em algo com múltiplas opções que nos levam a, praticamente, mesma função, devemos pensar em tabelas. O que quero dizer é que, mesmo que tenham vários personagens, todos eles serão imagens e serão ligadas a um jogador. É a mesma coisa, então não há a necessidade real de poluir seu código com milhares de ifs desnecessários. Criemos uma tabela com as propriedades de cada personagem: Code Lua 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 local alienigenas = { Você deve estar se perguntando o porquê de termos colocado aqueles eixo x e y na tabela das imagens. Bem, na maiorias das vezes, as imagens estão desalinhas, como no caso abaixo, com x:0 e y:0 Então, precisamos de coordenadas para centralizar a imagem com o seu rato. Às vezes os X e Y se divergem, às vezes não. No caso da imagem acima, utilizamos x e y no valor -70 e... Bem alinhado =) Agora partiremos para a transformação do rato. Abaixo, definiremos o que os ratos poderão fazer:
Code Lua 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 -- Criaremos uma tabela para armazenar os dados de todos os jogadores presentes E agora os comandos de teclado Code Lua 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 -- Usaremos uma função com a fórmula de pitágoras E agora o comando para que possamos nos transformar em aliens com !numero ou !nome Code Lua 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 -- Antes teremos a função que transforma o rato em alien E é isso, a base do seu módulo com personagens está pronta! Edite e seja feliz! Agora: qual o motivo de não tentarmos algo mais complexo, como a animação do Ben apertando o relógio ou 10 poderes para cada personagem? Há algo em que chamamos de RUNTIME, tempo de execução. Esse tempo é limitado. Para jogadores normais são apenas 40 milisegundos suportados, e para membros da equipe lua são apenas 60 milisegundos. O que isso significa? Se um módulo demorar mais que esses míseros milisegundos, o minigame simplesmente irá parar de funcionar. O famoso "crash" dos minigames, infelizmente isso só é possível de consertar otimizando o código, ou seja, deixando ele perfeito, sem coisas desnecessárias, e ainda assim fica pesado demais. Por isso não podemos adicionar muitas coisas como desejamos. É possível fazer animações, (exemplo: #anime0onepiece*village) , mas ficam extremamente pesadas em alguns casos e não é viável fazê-las em módulos grandes. Então, se você deseja ver animações ou coisas grandiosas no #pokelua, desista. Se quer um módulo de personagens do My Little Poney ou seja lá o que for, use este tópico como base :) Se deseja mais animação e menos estático, faça um jogo que suporte isso, TFM não \o/ Esse tópico seria, inicialmente, uma nota de esclarecimento sobre o runtime, mas achei legal ensinar a fazer o uso das imagens corretamente. O esclarecimento também fazia parte do #pokelua, mas se enquadra em qualquer minigame com imagens de personagens que já existem: Nós não os desenhamos. Nós pesquisamos SPRITES dos personagens e, caso queiramos torná-los semi-oficiais, precisamos de permissão dos criadores (pokelua=nintendo) para o uso de imagens. Por isso não é um trabalho fácil e/ou rápido. Também, se o seu personagem não está no módulo, acredite, ele ainda não foi permitido e não é por falta de vontade. Código final Code Lua 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 local alienigenas = { Dernière modification le 1549137540000 |
1 | ||
Ótimo tutorial ^^ |
+Amstream « Citoyen » 1518129000000
| 1 | ||
e como q eu vou dar upload nas imgs na api |
Bolodefchoco « Sénateur » 1518129660000
| 1 | ||
+Amstream a dit : Não vai. Você poderá pedir para algum membro da equipe lua fazer isso para você! Jooonnnnnnnn a dit : Thanks |
Viniciusdara « Consul » 1518131460000
| 1 | ||
Muito bom!! quero esse minigame já! |
Bolodefchoco « Sénateur » 1518133440000
| 1 | ||
Viniciusdara a dit : huehue obrigado |
Hugotitas « Citoyen » 1518165360000
| 1 | ||
Amei, só falta você coloca animação dos personagens né ? (tô viciado na música do Ben 10 ._.) |
Bolodefchoco « Sénateur » 1518185520000
| 1 | ||
Hugotitas a dit : E também não tem sprites pra isso lol |
Hydroper « Citoyen » 1518186720000
| 1 | ||
Woah...! Isso esse módulo de Ben 10 parece interessante. Essa centralização de imagem (quadro) me foca muito o LF2. Bolodefchoco a dit : O que é "pesado" para fazer animações com imagens de fato é o módulo ter que chamar tfm.exec.addImage/tfm.exec.removeImage manualmente. E isso também é porque tudo do Lua ocorre no servidor (não no cliente) e reflete os clientes com + atraso, porém o apropriado seria ter uma interface para projetar uma animação, really! |
Bolodefchoco « Sénateur » 1518191160000
| 1 | ||
Profiver a dit : Sim, de fato. Imagine só, 10 iterações por segundo para cada rato numa sala com 50 ratos.. |
Ghostxand « Citoyen » 1518325860000
| 2 | ||
Cara! você me ajudou muito! quando eu postar um module aqui saiba que você me motivou a isso. :D @Edit: só mais uma duvida, é possível mudar a imagem de um objeto invocado pelos ratos? Por exemplo, se eu usar um script de atirar uma caixa pressionando espaço.. essa caixa pode ter a imagem ESTÁTICA personalizada? Dernière modification le 1518326880000 |
Hugotitas « Citoyen » 1518351060000
| 1 | ||
Ghostxand a dit : Pode, um exemplo disso é o mini game #battleground |
Bolodefchoco « Sénateur » 1518358620000
| 1 | ||
Ghostxand a dit : Sim! Para fazer isso: Code Lua 1 2 3 -- Link, target, alinhamento |
Gamedroit « Citoyen » 1518638820000
| 1 | ||
Bolodefchoco a dit : você também pode usar: Code Lua 1 2 id = tfm.exec.addShamanObject(os dados do objeto aqui) |
Bolodefchoco « Sénateur » 1518640620000
| 1 | ||
Contistente3 a dit : Foi o que expliquei no --coment |
Travonrodfer « Censeur » 1526758620000
| 1 | ||
Ata kkk Agora entendi pq os meus Scripts ficam crashando |