RGSS (Ruby Game Scripting System) uses the object-oriented scripting language Ruby to develop 2D games for the Windows® platform. RGSS lets you build entirely original game systems far more easily than would other languages like C. Ruby is a simple language that's easy even for beginners to use, yet it's still a powerful and sophisticated tool.
RGSS (Ruby Game Scripting System) usa a Linguagem de Script Ruby Orientada a objetos para desenvolver jogos 2D para a Plataforma Windows®. RGSS leva você a construir inteiramente sistemas de jogos com originalidade mais facilmente que outras linguagens como C. Ruby é uma linguagem simples e de fácil aprendizado para os iniciantes, sendo esta uma poderosa e sofisticada ferramenta. -> Texto retirado do Help Original em Ingles.
Sem mais pormenores vamos começar pelo que realmente interessa.
O que vem a ser "Linguagem Orientada a objetos"?
Pois bem. Significa que tudo que existe, já pronto, dentro dos padrões de programação, pode ser reutilizado, reaproveitado, ou alterado.
Vejamos um exemplo:
Observe que o objeto CLIENTE foi reaproveitado para comportar dois clientes diferentes, com nomes diferentes e telefones diferentes. Mas para isso eu precisei "Declarar" dois novos objetos. "DECLARAR"?
Sim. Todo novo objeto deve ser declarado, de forma ao programa saber que ele existe e o que ele é. Para isso vamos entrar no maior e mais importante de todos os objetos da programação : VARIÁVEIS.
Eu costumo dizer que uma "Variável é como um balde, você enche com algo que precisa, para usar depois, em outro lugar". Qualquer objeto que se deseja usar deve ser declarado numa variável. Vejamos o exemplo:
Nesta janela do Editor de scripts vemos claramente que todos os nomes com $data estão sendo carregados cada qual com um objeto do RPG, atores, classes, habilidades... e a ultima linha que possui $game está iniciando um objeto, não carregando, mas criando. você mesmo pode criar uma variável, agora mesmo !! quer ver? Abra um projeto no RPGMaker XP, vá no editor de scripts, na sessão Main.
logo depois de Graphics.freeze, coloque assim:
Agora rode o jogo. SIMPLES DEMAIS !!
Agora que você já sabe um pouco (bem pouco) sobre objetos, vamos falar de variáveis...
VARIÀVEIS:
Para facilitar o estudo, eu vou chamá-las de Vars.
Existem Vários tipos de vars, as mais comuns e mais usadas são:
String - Comporta letras e números
Integer - Comporta numeros
Boolean - Comporta 0 e 1, true e false, sim e não
Array - Comporta várias variáveis
Constante - Comporta tudo, porém seu valor é fixo.
No caso dos Eventos de mapa, eles usam vars booleanas (as switches) e vars numéricas (as vars comuns).
No RPGMaker, elas também possuem grau:
var = var local
@var = var pública
$var = var global
VAR = Constante
Vars locais servem para resolver problemas rápidos, como nomes ou números que só serão alterados ali mesmo.
Vars públicas servem para toda a classe que a declarou, podendo ser alterada em qualquer procedimento da classe.
Vars globais são geralmente declaradas no início da execução do programa, servindo como base para classes e outras vars.
Constantes Só são declaradas no caso de valores imutáveis, ou seja, que não necessitam ser mudados.
As classes são os objetos fundamentais do RPGMaker, onde estão contruídas todas as funções, tudo que você vê, cria e edita no Database, nos Mapas e no Script é possível graças as classes.
No início desta lição falamos sobre o Objeto CLIENTES. Ele é uma classe, a classe CLIENTES, que me permite ter várias instancias dele mesmo para me servir de acordo com a minha necessidade.
Observe o exemplo a seguir:
Note que eu destaquei a var global $game_party.
Aquii ela é declarada, criando uma instância do objeto Game_Party, e logo abaixo ele já executa um procedimento da classe declarada. PROCEDIMENTO?
Sim, As classes são compostas por vários procedimentos, que é o que as faz funcionar.
Abra um projeto no RPGMaker XP, e abra o Editor de Scripts.
A 15º sessão é a Game_Party. Você vai reparar que logo no ínício da sessão está o nome: "class Game_Party"
Vá descendo dentro da janela, você vai ver que a classe Game_Party é cheia de áreas que começam com "def" e terminam com "end". Na linha 39 está o procedimento que foi chamado no exemplo acima.
Só neste procedimento há como exemplificar 6 usos de vars. Quer ver?
(http://img141.imageshack.us/img141/4480/4td5.gif)
1 - uma var pública array, @actors
2 - uma var integer, i
3 - uma var global, declarada como $data_system
4 - o uso da var @actors
5 - uma var global, declarada com valores dos atores(arquivo externo), a $game_actors
6 - o uso da var i
Tudo isso é só para que você tenha uma noção do quanto as variáveis são importantes. Eu costumo dizer que elas são as "Engrenagens" que fazem os Programas funcionarem.
CONCLUSÃO:
Vimos nesta lição algo bem básico sobre a POO (programação orientada a objetos), Variáveis e seu uso. Não é do meu interesse abordar TUDO que envolve variáveis, somente o necessário para a sua iniciação no RGSS. Começamos a ver classes e procedimentos, esse será o tema da próxima lição.
Obrigado.