O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Programando #1 - Scripts em conjunto

Iniciado por Raizen, 08/03/2013 às 17:05




[box class=information]   Programando é uma série que trás novidades e dicas, para ambos os eventers e scripters, visando sempre material pouco conhecido nas comunidades brasileiras. Esse será a primeira matéria, e é direcionada a quem está começando e quem já é experiente em programação Ruby, e também uma novidade que muitos aqui desconhecem. Antes de começar, falarei um pouco do Ruby, o Ruby é a linguagem usada no RPG Maker, a matéria trata de um assunto diretamente ligada ao Ruby, sugiro para quem não tem noção alguma, dar uma olhada nas aulas de Ruby, para os que já conhecem, peguem seus cadernos de anotações, e confira a matéria a seguir.[/box]

[box class=titlebg3]
Programando?
[/box]
[box class=information]   Sabe aquele script que você faz, ou de outra pessoa que acaba não funcionando com outros scripts? Gerando aquela incompatibilidade bem chata? Pois bem, os scripters da comunidade rpgmakerweb e rpgmakervxace resolveram padronizar um jeito para evitarem isso usando todos a mesma variável, $imported. Para entender perfeitamente essa matéria, sugiro que saibam o básico de Hashes, não é necessário, mas conhecimento a mais sempre é bem-vindo. Basicamente essa variável global $imported terá todos os scripts dos autores que adotam essa padronização, que não são poucos.[/box]

[box class=titlebg3]
Como adicionar?
[/box]
[box class=information]  Para adicionar é bem simples, você tem que iniciar a variável como uma Hash, e claro evitando que essa variável apague os scripts que estão contidos no projeto do maker, logo...
$imported = {} if $imported.nil?
ou
$imported = Hash.new if $imported.nil?

Perceba acima caso o seu script seja o primeiro a ter o $imported, iremos criar essa variável, e caso já exista ele passará reto. Certo, já fiz o passo anterior e o que preciso fazer agora? Ah, agora você precisa adicionar algo que você e os outros scripters saberão caso seu script esteja incluso, então você usa uma String(text) ou Symbol(simbolo) para inserir nessa Hash, basicamente o seguinte, exemplo para o meu script de pop-up
$imported['raizen_pop_up'] = true
ou
$imported[:raizen_pop_up] = true
sempre coloque um nome que você saiba que ninguém usará, assim não haverá conflitos. Pronto agora qualquer um que quiser saber se seu script está no editor de scripts de tal maker, basta ele ver se $imported['raizen_pop_up'] é true(verdadeiro).[/box]

[box class=titlebg3]
E qual funcionalidade de tudo isso?  :aiaiai:
[/box]
[box class=information]  Jovens gafanhotos, se leram até essa parte, então realmente aparenta que está interessado no "$imported", a razão é a mais simples possível, eu posso manusear o script de acordo com quais scripts estão inclusos, exemplo tirado do script de movimento de câmera na batalha.
Se perceberem acima, o scripter no caso, criou uma condição baseada no incluir ou não o script do Victor Sant, logo ele pode fazer o script dele ser compatível com vários scripts que mexem no mesmo setor, sem ter que criar várias versões daquele script, o que facilita muito para quem vai utilizar o seu script.[/box]

[box class=titlebg3]
Concluindo
[/box]
[box class=information]  Bom chegamos ao fim do Programando #1, e essa como todas as edições, busco trazer uma matéria diferente, sobre temas cujo são pouco conhecido pelos eventers ou os scripters. O mais importante em programação é usar a criatividade, e esse como várias outras técnicas são criadas para auxiliar e facilitar o scripter, para que ele facilite a vida do maker. Na próxima edição será focada nos eventos, por isso espero que gostem das novidades que a equipe busca do mundo todo, para trazer em primeira mão a vocês![/box]

 Bem legal a iniciativa Raizen... Sobre o imported, eu tenho um próprio no meu mega-core do mau... Se quiser também que eu te mando umas aulas para você postar... Pois em breve irei fazer umas...



09/03/2013 às 01:56 #2 Última edição: 09/03/2013 às 01:59 por Tiaguu
Nunca deu certo a programação pra mim, mais vou tentar de novo com sua iniciativa :D
Parabéns pela matéria.

Interessante, estava a começar a utilizar om eu próprio Hash, nunca me toquei dessa padronização do $imported, apesar de já ter visto muito essa variável. Quem sabe passe a utiliza-la também. Boa iniciativa senhor Raizen.