Olá pessoal! Obrigado à todos que estão acompanhando o blog!
Dessa vez que eu posto aqui não é mais um episódio, na verdade é uma pequena enrolação, para explicar algumas coisas e vocês não ficarem esperando.
Olha, eu bem penso que eu deveria me envolver mais com o blog, só que infelizmente o mundo real tá me chamando... Esse fim de ano preciso me esforçar mais um pouco, para que eu possa passar de ano tranquilamente (é, só talento não basta, também o esforço é a chave para o sucesso).
Sem contar isso, há várias outras coisas que eu preciso manter, afinal a minha vida social e minha sobrevivencia também estão e jogo (ok, não é tão crítico, só queria dar um tempo para rever coisas importantes); em contar que também o meu bolso tá apertado e preciso apertar o cinto.
Isso não quer dizer que vou desplugar duma vez disso tudo não. Vou continuar desenvolvendo o Card Game e às vezes vou também fazer as tradicionais aulinhas, muito texto e explicação para pouco coisa, heheheeheh -- se acharem que eu exagero no teclado, então peçam para eu manerar um pouco.
Bem, ano que vem vai ser meu último ano de estudo e vou ter que estudar dobrado para fazer o vestibular, estudar mesmo -- se você não tem certeza se está preparado ou não, então é porquê não está!! Mas mesmo assim vou querer dar a noção para que vocês possam editar e quem sabe até escrever seus próprios scripts RGSS.
Nessas férias vou variar também o conteúdo do blog, falando sobre umas coisas legais que vão aparecendo por aí. Esperem e verão!
Até mais e obrigado!!
sábado, 15 de novembro de 2008
segunda-feira, 10 de novembro de 2008
[RPG Maker]Noticiário #0 - O desafio das cartas está lançado!
Dia desses -- antes de ontem --, quando eu tava no chat da RPG maker Brasil (até o fechamento desse post o fórum e o site ainda estão offline) eu tava meio entediado, pois não estava num bom dia, e estava para terminar um script que estava fazendo, se bem que ainda precisava fazer toda uma caçambada de testes... Como eu ia ficar meio desocupado após acabar isso, pedi que alguém me passasse um desafio...
Daí o Dlouganilo me sugeriu a fazer um jogo de cartas, com a condição de que pudesse ser de qualquer forma, menos a imitação de um minigame de Final Fantasy (nesse caso, o Triple Triad ou o Quadra Master).
E assim eu pretendo desevolver um script de minigame ajustável, para que cada um possa desenvolver o seu próprio minigame para o seu jogo. No pacote serão incluídos além da demo, alguns recursos extras de ajuda e dicas para se fazer um bom jogo de cartas.
Quanto á parte técnica do jogo, ainda não há muito a dizer, pois ainda não há nada de concreto feito, além de um exemplo de card que eu desenvolvi. No jogo certas regras especiais poderão ser ativadas ou desativadas por switchs definidas pelo usuário, e o jogo inclirá também sons e animações.
Para isso eu vou precisar recrutar alguns "capangas", que possam me ajudar a fazer e a juntar alguns recursos básicos, se tiver interessado, favor me envie um e-mail (rafaelsolmaker@bol.com.br)
Atualmente estou tentando aprender mais sobre animações e bolando a parte lógica do jogo, e talvez eu inclua um módulo de I.A (inteligência artificial) para jogar contra a máquina logo logo... isso é um pouco mais difícil (pouquinha coisa -_-')
Quando o jogo estiver lançado, eu vou publicar ele aqui no blog, num pacote com tudo incluso e versões com recursos, demos separadas, etc. Talvez eu também poste alguma versão de testes (beta), com a condição de ser criptografadas, somente para que vocês possam me ajudar, caso queiram.
CONDIÇÕES DE USO: O minigame será distribuído gratuitamente, e todos estarão autorizados a colocar em seus jogos (vai por mim, tem gente que gosta muito deles!) com a condição de me citarem nos créditos e eu de preferência seria grato que me notificassem disso -- para que eu jogue o jogo de vocês, oras! -- e a modificação do sistema requer AUTORIZAÇÃO EXPRESSA MINHA, vocês podem alterar as configurações livremente, eu darei as instruções para isso, porém os módulos do jogo requerem essa permissão especial. Ademais, qualquer outro detalhe eu publicarei nos Termos de Uso, assim que eu lançá-lo.
"Quando fica pronto??"R: Não sei dizer... caso fosse somente o sistema gráfico, eu não demoraria; mas ainda tenho que ver a questão das animações. Tem agluma SUGESTÃO?? Deixe me saber, por favor!! Me envie um e-mail ou post um comentário aqui.
Obrigado pela atenção e esperem para notícias em breve!
EXTRA: Exemplo de carta ampliada(sim... o sistema não será de números e sim de CORES...)
Daí o Dlouganilo me sugeriu a fazer um jogo de cartas, com a condição de que pudesse ser de qualquer forma, menos a imitação de um minigame de Final Fantasy (nesse caso, o Triple Triad ou o Quadra Master).
E assim eu pretendo desevolver um script de minigame ajustável, para que cada um possa desenvolver o seu próprio minigame para o seu jogo. No pacote serão incluídos além da demo, alguns recursos extras de ajuda e dicas para se fazer um bom jogo de cartas.
Quanto á parte técnica do jogo, ainda não há muito a dizer, pois ainda não há nada de concreto feito, além de um exemplo de card que eu desenvolvi. No jogo certas regras especiais poderão ser ativadas ou desativadas por switchs definidas pelo usuário, e o jogo inclirá também sons e animações.
Para isso eu vou precisar recrutar alguns "capangas", que possam me ajudar a fazer e a juntar alguns recursos básicos, se tiver interessado, favor me envie um e-mail (rafaelsolmaker@bol.com.br)
Atualmente estou tentando aprender mais sobre animações e bolando a parte lógica do jogo, e talvez eu inclua um módulo de I.A (inteligência artificial) para jogar contra a máquina logo logo... isso é um pouco mais difícil (pouquinha coisa -_-')
Quando o jogo estiver lançado, eu vou publicar ele aqui no blog, num pacote com tudo incluso e versões com recursos, demos separadas, etc. Talvez eu também poste alguma versão de testes (beta), com a condição de ser criptografadas, somente para que vocês possam me ajudar, caso queiram.
CONDIÇÕES DE USO: O minigame será distribuído gratuitamente, e todos estarão autorizados a colocar em seus jogos (vai por mim, tem gente que gosta muito deles!) com a condição de me citarem nos créditos e eu de preferência seria grato que me notificassem disso -- para que eu jogue o jogo de vocês, oras! -- e a modificação do sistema requer AUTORIZAÇÃO EXPRESSA MINHA, vocês podem alterar as configurações livremente, eu darei as instruções para isso, porém os módulos do jogo requerem essa permissão especial. Ademais, qualquer outro detalhe eu publicarei nos Termos de Uso, assim que eu lançá-lo.
"Quando fica pronto??"R: Não sei dizer... caso fosse somente o sistema gráfico, eu não demoraria; mas ainda tenho que ver a questão das animações. Tem agluma SUGESTÃO?? Deixe me saber, por favor!! Me envie um e-mail ou post um comentário aqui.
Obrigado pela atenção e esperem para notícias em breve!
EXTRA: Exemplo de carta ampliada(sim... o sistema não será de números e sim de CORES...)
domingo, 9 de novembro de 2008
[RGSS] Episódio #02 – Classes: Que se faça uma classe! O poder (não tão) oculto da herança!”
[QUICK CALL (termo meu), o programa a seguir não é recomendável para quem não leu a última aula, heheheh] Olá á todos! Espero que gostem de mais um dos pequenos capítulos da minha vida numa Linguagem de Scripts, o RGSS! Como eu já disse ma aula anterior, preparem-se para ler um pouco mais, se bem que dessa vez eu vou pegar leve no texto e vou até colocar umas ilustrações. Caso não entendam qualquer coisa por favor deixem-me saber, para que eu possa fazer lições melhores, nesse caso vocês podem deixar mensagem no blog ou enviar algum e-mail, e podem ás vezes me encontrar por aí, na ReinoRPG (aceito PM’s) e no chat da Rpg Maker Brasil (o link você pega em www.rpgmakerbrasil.com), já que o portal, o fórum e o link do Blog do Falco continuam fora do ar... Agora vamos prosseguir com a história!
INTRO:Assim que dei uma rápida espiada nos scripts que já vinham no VX, obviamente deu para reparar que eles estavam muito mais bem organizados do que no RPG Maker XP (que infelizmente não usei muito, pulei a era dele...- Se era mais fácil ou mais difícil escrever scripts parra ele eu estava por descobrir, mas na hora meu deu vontade de aprender pelo menos alguns comandos básicos, assim que cheguei as classes afinal. E assim tentei escrever o meu primeiro script, que era uma janela que mostrava um nome na tela do Jogo, não era nada muito difícil. Além disso eu já tinha dado uma espiada em algumas poucas apostilas sobre isso, obviamente com rgss1, do XP, que não difere muito. E é isso que vamos ver agora...
[OPENING, música de abertura da série]
E é isso que vamos ver agora, vamos criar uma classe que mostre dessa vez uma caixa de mensagem do Windows, toda vez que você falar com um NPC, não vai ser grande coisa, mas você vai aprender uma coisa que estava me passando para trás até m dia desses; inclusive decidi postar esse blog para ensinar à voc~es para que não caiam em armadilhas pequenas dessas e acabem desistindo - Lembra dos switchs?? E quando você não sabia usar eles? Sempre vejo muitos novatos pedindo pra resolver problemas que são resolvidos com switchs... Mas voltemos aos scripts.
Abra o Editor de Scripts, para isso você pode proceder de três maneiras:
1. Simplesmente tecle F11, simples e funcional, meu atalho favorito!
OU
2. Tecle no ícone do livrinho com o lápis verde, na barra de ferramentas principal
OU ENTÃO
3. Clique no menu 'Projeto' e aponte e clique em 'Editor de Scripts"

Agora você está enfim no “assustador” Editor de Sscripts. Não precisamos dizer por enquanto nada das seções que tem por qui, com o tempo você irá entender... Procure uma seção em branco, descendo a “lista” dos scripts você vai encontrar alguns espaços em branco, agora tem que ser sempre acima da seção ‘Main’, isso é necessário para funcionar tudo, apesar de que - aqui na minha versão, a traduzida pelo Deset Eagle, tem escrito ("insira scripts aqui"); modifique o nome para algo legal, tipo “Meu Primeiro Script” e limpe toda aquela coisa verde, aqueles comentários. Agora vamos criar a classe, escreva assim:
class Primeira_Classe
end

Veja bem isso. A primeira linha define uma classe com nome de ‘Primeira_Classe’, e ‘end’ significa que a classe acaba. Agora preste ATENÇÃO: TODAS AS ESTRUTURAS SEMPRE TERMINAM SEMPRE EM ‘end’, E SEMPRE ESCREVA EM MINÚSCULAS, JÀ QUE O RUBY É ‘SENSÍVEL’ EM RELAÇÃO AOS NOMES... Só em poucos casos que as letras aparecerão em maiúsculas ou começando por maiúsculas. Esse “sensível” do RGSS é característica do Ruby, também é chamado de ‘Sensitive Case’, aos poucos vão aparecer utilizações pras maiúsculas. Se você for esperto já reparou que o nome da classe é iniciado por uma maiúscula, e vamos manter assim por questões de padronização.(Agora aí vem a brincadeira! A palavra-chave tem 7 letras e umas das letras é um ‘C’! Duvido você adivinhar a palavra! Dúvidas leia os dois posts de introduão e aguarde as próximas postagens!!)
Acho que já é hora de mandar essa classe fazer alguma coisa, né? Entre as duas linhas, coloque os seguintes comandos:
def initialize
imprime_mensagem
end
def imprime_mensagem
print “Olá Mundo! Essa é a minha primeira mensagem feita em RGSS!”
end
Agora você irá “imprimir” uma mensagem, no caso, tudo o que estiver entre as aspas apareçerá em uma caixa de mensagens comum do Windows! Repare que criamos agora dois procedimentos, para ser necessário, duas rotinas (se você viu a aula anterior, então entende), como podem ver não é nada difícil, basta usar um ‘def’, aqui os procedimentos são sempre em minúculas. No primeiro procedimento, que serve para inicialização, a única coisa que ele faz é remeter para a rotina que escrevemos abaixo, que por fim mostra uma caixa de mensagens padrão do Windows XP na tela.
Para testar, veja a screen e descubra o que você terá de escrever. Caso não entenda, tudo bem, a gente revisa daqui a pouco.


Agora que vocês viram mais de que em detalhes como criar e iniciar uma classe, vou introduzir um dos, senão o mais impotante componentes é a...(continua aí em baixo, chame de parte 2 se preferir...)
[EYE CATCH, aquele trecho que vem quando um seriado volta do intervalo comercial... Hahaha, tratem de decorar o termo, não vou explicar pra sempre!] herança. como a aula já se prolonga, vou dizer m poucas palavras o que seria isso. Quando você cria uma claase no RGSS, você vai poder modifcá-la enquanto utiliza o software, afinal, isso é um objeto, e o Ruby dá essa moleza de você adaptar qualquer procedimetno (e eu disse QUALQUER) à medida que você quiser ou precisar usar. A palavra-chave para ue se possa modificar m procedimen to sem destruí-lo é a herança. Repare que caso você crie uma classe com o msmo nome de ma classe já existinte e com o mesmo nome de procedimentos eles serão automaticamente substituúidos, e agora que vamos desenvolver uma maneira de mostrar uma mensagem de texto a cada 10 segundos no mapa, autmaticamente, sem intervenã de nenhum NPC, portanto, basta zerar o projeto, apagando o script que fizemos e o evento também, ou então crie um novo para ter menos trabalho (-_-').
Repare nisso aqui, vamos tomar emprestado o esquelto da Scene_Map - Scene é o em geral qualquer conjunto de figuras e janelas (as azuis, que nem a do texto, que tem o nome de window), no RPG Maker uma cena (scene) pode ser qualquer uma dessas coisas: a tela de título do jogo (a Scene_title), a batalha (Scene_Battle), o menu do jogo (Scene_Menu), o mapa (scene_map, o que vamos usar por aqui...) e até a tela de Game Over´(Scene_GameOver) são exemplos e cenas dierentes. Agora olhar toda aquela lista enorme de scripts "já prontos" não é mais tão dificil já que você á sabe identificar ma cena e uma janela (window). Sem enrolar, faça a estrtura da classe:
class Scene_Map <> #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# "O que é isso aqui??" R: Um comentário... dãããaaa!
# Repare, a cor é verde? Tudo depois desse sinal
# aqui é comentário, não influi em nada.
# "Mas então? E esse '<>
# declaração da cena?" R: Tenha calma e você verá! #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
def initialize
# Procedimento que SEMPRE é chamado quando você cria uma nova classe
# Caso ele peça algum parâmetro, sempre use eles quando for usar 'classe.new'
end
def update
# Toda vez que há uma atualização de um quadro na tela,
# (Olha que são 60 vezes por segundo!) isso aqui deve ser chamado.
end
def terminate
# Tudo que tem começo tem fim fim!
# Você precisar desocupar todos os recursos que utilizou , # se não quiser que tudo fique lento!
end
end
# Fim da classe. Caso esqueça de colocar algum 'end', ou
# colocar mais que o necessário, dará 'syntax error',
# aí você terá que checar um por um!
Fim da transmissão! Depois não reclama do tamanho, véio. Acho bm revisar o que você viu hoje:
class Primeira_Classe # Inicia a classe
def initialize # Procedimento chamado sempre que é criada nova classe;
imprime_mensagem # Chama a rotina criada abaixo;
end # "Fecha" esse procedimento.
def imprime_mensagem #Procedimento/Rotina customizado
print “Olá Mundo! Essa é a minha primeira mensagem feita em RGSS!”
end # "Fecha" esse procedimento.
end # "Fecha" a classe.
def update #Toda santa vez que mudar 1 frame...
end
def terminate # Fim da linha aqui...
end
end # Fim da classe
Para chamar, tentem isso no ‘Chamar Script’ dum evento qualquer , olha só:
usar_classe = class.new # Cria um novo objeto da classe, usa comandos do initialize;
usar_classe.procedimento # Chama o procedimento (rotina/função) da classe.
[ENDING, tema de encerramento]
[NO PRÓXIMO EPISÓDIO, ou seja, as próximas aulas]
Vamos enfim revelar todos os detalhes da herança, escrever os códigos dela e digo mais: vamos aprender variáveis e fazer aparecer algo real na tela de uma cena à escolha! O próximo episódio de ‘Minha vida, agora com RGSS’ será:
Episódio #03 – “Classes & Imagens: O começo de qualquer coisa” Não percam!!
INTRO:Assim que dei uma rápida espiada nos scripts que já vinham no VX, obviamente deu para reparar que eles estavam muito mais bem organizados do que no RPG Maker XP (que infelizmente não usei muito, pulei a era dele...- Se era mais fácil ou mais difícil escrever scripts parra ele eu estava por descobrir, mas na hora meu deu vontade de aprender pelo menos alguns comandos básicos, assim que cheguei as classes afinal. E assim tentei escrever o meu primeiro script, que era uma janela que mostrava um nome na tela do Jogo, não era nada muito difícil. Além disso eu já tinha dado uma espiada em algumas poucas apostilas sobre isso, obviamente com rgss1, do XP, que não difere muito. E é isso que vamos ver agora...
[OPENING, música de abertura da série]
E é isso que vamos ver agora, vamos criar uma classe que mostre dessa vez uma caixa de mensagem do Windows, toda vez que você falar com um NPC, não vai ser grande coisa, mas você vai aprender uma coisa que estava me passando para trás até m dia desses; inclusive decidi postar esse blog para ensinar à voc~es para que não caiam em armadilhas pequenas dessas e acabem desistindo - Lembra dos switchs?? E quando você não sabia usar eles? Sempre vejo muitos novatos pedindo pra resolver problemas que são resolvidos com switchs... Mas voltemos aos scripts.
Abra o Editor de Scripts, para isso você pode proceder de três maneiras:
1. Simplesmente tecle F11, simples e funcional, meu atalho favorito!
OU
2. Tecle no ícone do livrinho com o lápis verde, na barra de ferramentas principal
OU ENTÃO
3. Clique no menu 'Projeto' e aponte e clique em 'Editor de Scripts"

Agora você está enfim no “assustador” Editor de Sscripts. Não precisamos dizer por enquanto nada das seções que tem por qui, com o tempo você irá entender... Procure uma seção em branco, descendo a “lista” dos scripts você vai encontrar alguns espaços em branco, agora tem que ser sempre acima da seção ‘Main’, isso é necessário para funcionar tudo, apesar de que - aqui na minha versão, a traduzida pelo Deset Eagle, tem escrito ("insira scripts aqui"); modifique o nome para algo legal, tipo “Meu Primeiro Script” e limpe toda aquela coisa verde, aqueles comentários. Agora vamos criar a classe, escreva assim:
class Primeira_Classe
end

Veja bem isso. A primeira linha define uma classe com nome de ‘Primeira_Classe’, e ‘end’ significa que a classe acaba. Agora preste ATENÇÃO: TODAS AS ESTRUTURAS SEMPRE TERMINAM SEMPRE EM ‘end’, E SEMPRE ESCREVA EM MINÚSCULAS, JÀ QUE O RUBY É ‘SENSÍVEL’ EM RELAÇÃO AOS NOMES... Só em poucos casos que as letras aparecerão em maiúsculas ou começando por maiúsculas. Esse “sensível” do RGSS é característica do Ruby, também é chamado de ‘Sensitive Case’, aos poucos vão aparecer utilizações pras maiúsculas. Se você for esperto já reparou que o nome da classe é iniciado por uma maiúscula, e vamos manter assim por questões de padronização.(Agora aí vem a brincadeira! A palavra-chave tem 7 letras e umas das letras é um ‘C’! Duvido você adivinhar a palavra! Dúvidas leia os dois posts de introduão e aguarde as próximas postagens!!)
Acho que já é hora de mandar essa classe fazer alguma coisa, né? Entre as duas linhas, coloque os seguintes comandos:
def initialize
imprime_mensagem
end
def imprime_mensagem
print “Olá Mundo! Essa é a minha primeira mensagem feita em RGSS!”
end
Agora você irá “imprimir” uma mensagem, no caso, tudo o que estiver entre as aspas apareçerá em uma caixa de mensagens comum do Windows! Repare que criamos agora dois procedimentos, para ser necessário, duas rotinas (se você viu a aula anterior, então entende), como podem ver não é nada difícil, basta usar um ‘def’, aqui os procedimentos são sempre em minúculas. No primeiro procedimento, que serve para inicialização, a única coisa que ele faz é remeter para a rotina que escrevemos abaixo, que por fim mostra uma caixa de mensagens padrão do Windows XP na tela.
Para testar, veja a screen e descubra o que você terá de escrever. Caso não entenda, tudo bem, a gente revisa daqui a pouco.


Agora que vocês viram mais de que em detalhes como criar e iniciar uma classe, vou introduzir um dos, senão o mais impotante componentes é a...(continua aí em baixo, chame de parte 2 se preferir...)
[EYE CATCH, aquele trecho que vem quando um seriado volta do intervalo comercial... Hahaha, tratem de decorar o termo, não vou explicar pra sempre!] herança. como a aula já se prolonga, vou dizer m poucas palavras o que seria isso. Quando você cria uma claase no RGSS, você vai poder modifcá-la enquanto utiliza o software, afinal, isso é um objeto, e o Ruby dá essa moleza de você adaptar qualquer procedimetno (e eu disse QUALQUER) à medida que você quiser ou precisar usar. A palavra-chave para ue se possa modificar m procedimen to sem destruí-lo é a herança. Repare que caso você crie uma classe com o msmo nome de ma classe já existinte e com o mesmo nome de procedimentos eles serão automaticamente substituúidos, e agora que vamos desenvolver uma maneira de mostrar uma mensagem de texto a cada 10 segundos no mapa, autmaticamente, sem intervenã de nenhum NPC, portanto, basta zerar o projeto, apagando o script que fizemos e o evento também, ou então crie um novo para ter menos trabalho (-_-').
Repare nisso aqui, vamos tomar emprestado o esquelto da Scene_Map - Scene é o em geral qualquer conjunto de figuras e janelas (as azuis, que nem a do texto, que tem o nome de window), no RPG Maker uma cena (scene) pode ser qualquer uma dessas coisas: a tela de título do jogo (a Scene_title), a batalha (Scene_Battle), o menu do jogo (Scene_Menu), o mapa (scene_map, o que vamos usar por aqui...) e até a tela de Game Over´(Scene_GameOver) são exemplos e cenas dierentes. Agora olhar toda aquela lista enorme de scripts "já prontos" não é mais tão dificil já que você á sabe identificar ma cena e uma janela (window). Sem enrolar, faça a estrtura da classe:
class Scene_Map <> #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# "O que é isso aqui??" R: Um comentário... dãããaaa!
# Repare, a cor é verde? Tudo depois desse sinal
# aqui é comentário, não influi em nada.
# "Mas então? E esse '<>
# declaração da cena?" R: Tenha calma e você verá! #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
def initialize
# Procedimento que SEMPRE é chamado quando você cria uma nova classe
# Caso ele peça algum parâmetro, sempre use eles quando for usar 'classe.new'
end
def update
# Toda vez que há uma atualização de um quadro na tela,
# (Olha que são 60 vezes por segundo!) isso aqui deve ser chamado.
end
def terminate
# Tudo que tem começo tem fim fim!
# Você precisar desocupar todos os recursos que utilizou , # se não quiser que tudo fique lento!
end
end
# Fim da classe. Caso esqueça de colocar algum 'end', ou
# colocar mais que o necessário, dará 'syntax error',
# aí você terá que checar um por um!
Fim da transmissão! Depois não reclama do tamanho, véio. Acho bm revisar o que você viu hoje:
class Primeira_Classe # Inicia a classe
def initialize # Procedimento chamado sempre que é criada nova classe;
imprime_mensagem # Chama a rotina criada abaixo;
end # "Fecha" esse procedimento.
def imprime_mensagem #Procedimento/Rotina customizado
print “Olá Mundo! Essa é a minha primeira mensagem feita em RGSS!”
end # "Fecha" esse procedimento.
end # "Fecha" a classe.
def update #Toda santa vez que mudar 1 frame...
end
def terminate # Fim da linha aqui...
end
end # Fim da classe
Para chamar, tentem isso no ‘Chamar Script’ dum evento qualquer , olha só:
usar_classe = class.new # Cria um novo objeto da classe, usa comandos do initialize;
usar_classe.procedimento # Chama o procedimento (rotina/função) da classe.
[ENDING, tema de encerramento]
[NO PRÓXIMO EPISÓDIO, ou seja, as próximas aulas]
Vamos enfim revelar todos os detalhes da herança, escrever os códigos dela e digo mais: vamos aprender variáveis e fazer aparecer algo real na tela de uma cena à escolha! O próximo episódio de ‘Minha vida, agora com RGSS’ será:
Episódio #03 – “Classes & Imagens: O começo de qualquer coisa” Não percam!!
quinta-feira, 6 de novembro de 2008
[RGSS]Episódio #01 - Classes: Assim que tudo se inicia!!
[QUICK CALL (termo meu), “o programa a seguir possui classificação etária livre”, heheheh] Olá á todos! Espero que gostem desses pequenos capítulos da minha vida numa Linguagem de Scripts, o RGSS , só vou adiantar por agora que as lições estarão distribuídas numa seqüência lógica que facilitará o uso das mesmas, na medida de que você precisar irá aprender , e que só aconselho essas lições para quem gosta de ler, pois elas não serão muito curtas, vou querer me aprofundar em exemplos, utilidades, entre outros, o que consome texto, não espere aprender aqui com só uma linha de texto e o resto por sua conta, vou facilitar tudo para vocês! Se consideram-se prontos, então não percamos mais tempo!
INTRO: Eu que já posso me considerar velho de guerra na programação (5 anos é muito tempo, sabia?) estava um dia desses encarando o RGSS -Ruby Game Scripting System, uma linguagem de script que permite o Rpg Maker fazer quase qualquer coisa-, desde o começo do ano que eu tentava aprender (porém com muitos rodeios e perda de tempo...), olha que não era fácil, a linguagem é bem diferentinho do meu tradicional Microsoft Visual Basic para Windows, ao princípio eu não conseguia ler quase nada, mas quando eu olho, o que eu vejo? Classes e mais classes! Essas pequenas pestes tomam conta de tudo, e eles lembram muito os módulos de classe do Visual Basic, Em programação...
[OPENING, música de abertura da série]
[Começando a aula por aqui...] Em programação, podemos classificar as classes como um das sacadas mais legais na programação orientada á objetos (POO), mas como assim objetos? Vamos considerar um carro, qual é a melhor forma de descrever ele? Vamos tentar: “Esse carro é do modelo Tal, da marca Etc&Tal, tem cor azul e placa ABC-0007, etc.” Em objetos (e classe é um objeto) é isso que chamados de ‘Propriedades’ , elas descrevem como é ou como deve-se comportar o objeto, em programação é o mesmo, veja: “Essa é a janela do software Tal, a janela possui cor tal, tem 800 por 600 pixels de tamanho e está na posição coordenada x de 30, etc.” Isso certamente faz um “objeto” no computador lembrar um objeto real, mas um objeto real faz muitas coisas, ele serve para algo, veja só o carro: “ Ele acelera, freia, passa de marcha, limpa pára-brisas, muda de direção (vira à esquerda ou à direita)...”. Isso aqui nós podemos chamar de métodos, se refere a todas as ações que ele realiza, e em programação é o mesmo: “Essa janela , abre, fecha , move-se para posição tal, faz tal coisa se clicar nela...”
Podemos classificar os métodos de duas formas: rotinas e funções: rotinas são as séries de comandos necessárias para o funcionamento do programa e funções são as séries de instruções utilizadas para se resolver um problema, melhor dizendo: rotinas são sempre necessárias e funções são rotinas que geralmente retornam um valor quando são chamadas. Agora de brinde um exemplo de chamada de função, imagine a seguinte situação, a de que precisamos calcular o seno de um número. Veja como ficaria (Nossa, já estou passando códigos!!): seno_180graus = seno(180) Isso quer dizer que ‘seno_180graus ‘ seria igual ao que retornasse da função seno, que possui o número 180 nesse caso como argumento para realizar os cálculos, repare que aqui podemos colocar qualquer número para o seno ser calculado.Mas e então? O que fizemos até aqui?
[QUICK FLASHBACK]: na POO, as classes são objetos que possuem funções e rotinas, certo? Mas e daí?... um programa não precisa necessariamente de classes para funcionar - apenas uma rotina já pode ser um programa; mas então qual é a grande sacada das classes? Muito simples, elas podem ser instanciadas! “Que diabos é isso, tio Rafael??”. Tenha calma, vejamos isso logo abaixo.
[EYE CATCH, aquele trecho que vem quando um seriado volta do intervalo comercial...] Dizendo da forma mais simples, vamos “traduzir” instância como uma cópia duma classe. “Como assim cópia??” Pra que você possa acessar o conteúdo duma classe você tem de chamar ela para que possa executar algo, senão seria somente m pedaço de código isolado e inútil. Para chamar a tal classe, você precisa criar ela através de outro nome e nós podemos fazer quantas quisermos dela! Imagine que no jogo nós queremos vários personagens na tela, não precisamos escrever o código várias vezes para desenhar cada personagem, basta criar uma classe chamada ‘personagem’, e recriar até 1 milhão deles! Você cria eles, define as suas propriedades e programa o seu comportamento através das rotinas responsáveis pelo funcionamento base. Pronto! Você pode fazer quantos personagens quiser. Legal não? Mais o que isso tem a ver como o RGSS mesmo? Como eu disse lá em cima na INTRO, é com base nisso que o Rpg Maker funciona, e você vai precisar aprender a fazer classes caso queira desenvolver algum script por Maker. Vocês verão logo logo como criar uma classe “funcional” e aprender sobre herança das classes! Mas por hora, vamos fazer uma rápida revisão do que vimos hoje.
[FLASHBACK, revisão do conteúdo ou citação dum trecho já visto anteriormente]: Classes são um dos módulos na Programação Orientada á Objetos (POO), e como objetos podem ter propriedades, além de métodos (as rotinas e as funções, que podem retornar valores)
[ENDING, tema de encerramento]
[NO PRÓXIMO EPISÓDIO, ou seja, as próximas aulas]
Próxima postagem vocês verão como criar uma classe, ou seja, finalmente alguma prática! Além disso, vocês aprenderão a utilizar as classes diretamente nos códigos do RPG Maker sem mexer numa única linha do código que já está lá! O próximo episódio de ‘Minha vida, agora com RGSS’ será:
Episódio #02 – “Classes: Que se faça uma classe! O poder (não tão) oculto da herança!” Não perca!!
INTRO: Eu que já posso me considerar velho de guerra na programação (5 anos é muito tempo, sabia?) estava um dia desses encarando o RGSS -Ruby Game Scripting System, uma linguagem de script que permite o Rpg Maker fazer quase qualquer coisa-, desde o começo do ano que eu tentava aprender (porém com muitos rodeios e perda de tempo...), olha que não era fácil, a linguagem é bem diferentinho do meu tradicional Microsoft Visual Basic para Windows, ao princípio eu não conseguia ler quase nada, mas quando eu olho, o que eu vejo? Classes e mais classes! Essas pequenas pestes tomam conta de tudo, e eles lembram muito os módulos de classe do Visual Basic, Em programação...
[OPENING, música de abertura da série]
[Começando a aula por aqui...] Em programação, podemos classificar as classes como um das sacadas mais legais na programação orientada á objetos (POO), mas como assim objetos? Vamos considerar um carro, qual é a melhor forma de descrever ele? Vamos tentar: “Esse carro é do modelo Tal, da marca Etc&Tal, tem cor azul e placa ABC-0007, etc.” Em objetos (e classe é um objeto) é isso que chamados de ‘Propriedades’ , elas descrevem como é ou como deve-se comportar o objeto, em programação é o mesmo, veja: “Essa é a janela do software Tal, a janela possui cor tal, tem 800 por 600 pixels de tamanho e está na posição coordenada x de 30, etc.” Isso certamente faz um “objeto” no computador lembrar um objeto real, mas um objeto real faz muitas coisas, ele serve para algo, veja só o carro: “ Ele acelera, freia, passa de marcha, limpa pára-brisas, muda de direção (vira à esquerda ou à direita)...”. Isso aqui nós podemos chamar de métodos, se refere a todas as ações que ele realiza, e em programação é o mesmo: “Essa janela , abre, fecha , move-se para posição tal, faz tal coisa se clicar nela...”
Podemos classificar os métodos de duas formas: rotinas e funções: rotinas são as séries de comandos necessárias para o funcionamento do programa e funções são as séries de instruções utilizadas para se resolver um problema, melhor dizendo: rotinas são sempre necessárias e funções são rotinas que geralmente retornam um valor quando são chamadas. Agora de brinde um exemplo de chamada de função, imagine a seguinte situação, a de que precisamos calcular o seno de um número. Veja como ficaria (Nossa, já estou passando códigos!!): seno_180graus = seno(180) Isso quer dizer que ‘seno_180graus ‘ seria igual ao que retornasse da função seno, que possui o número 180 nesse caso como argumento para realizar os cálculos, repare que aqui podemos colocar qualquer número para o seno ser calculado.Mas e então? O que fizemos até aqui?
[QUICK FLASHBACK]: na POO, as classes são objetos que possuem funções e rotinas, certo? Mas e daí?... um programa não precisa necessariamente de classes para funcionar - apenas uma rotina já pode ser um programa; mas então qual é a grande sacada das classes? Muito simples, elas podem ser instanciadas! “Que diabos é isso, tio Rafael??”. Tenha calma, vejamos isso logo abaixo.
[EYE CATCH, aquele trecho que vem quando um seriado volta do intervalo comercial...] Dizendo da forma mais simples, vamos “traduzir” instância como uma cópia duma classe. “Como assim cópia??” Pra que você possa acessar o conteúdo duma classe você tem de chamar ela para que possa executar algo, senão seria somente m pedaço de código isolado e inútil. Para chamar a tal classe, você precisa criar ela através de outro nome e nós podemos fazer quantas quisermos dela! Imagine que no jogo nós queremos vários personagens na tela, não precisamos escrever o código várias vezes para desenhar cada personagem, basta criar uma classe chamada ‘personagem’, e recriar até 1 milhão deles! Você cria eles, define as suas propriedades e programa o seu comportamento através das rotinas responsáveis pelo funcionamento base. Pronto! Você pode fazer quantos personagens quiser. Legal não? Mais o que isso tem a ver como o RGSS mesmo? Como eu disse lá em cima na INTRO, é com base nisso que o Rpg Maker funciona, e você vai precisar aprender a fazer classes caso queira desenvolver algum script por Maker. Vocês verão logo logo como criar uma classe “funcional” e aprender sobre herança das classes! Mas por hora, vamos fazer uma rápida revisão do que vimos hoje.
[FLASHBACK, revisão do conteúdo ou citação dum trecho já visto anteriormente]: Classes são um dos módulos na Programação Orientada á Objetos (POO), e como objetos podem ter propriedades, além de métodos (as rotinas e as funções, que podem retornar valores)
[ENDING, tema de encerramento]
[NO PRÓXIMO EPISÓDIO, ou seja, as próximas aulas]
Próxima postagem vocês verão como criar uma classe, ou seja, finalmente alguma prática! Além disso, vocês aprenderão a utilizar as classes diretamente nos códigos do RPG Maker sem mexer numa única linha do código que já está lá! O próximo episódio de ‘Minha vida, agora com RGSS’ será:
Episódio #02 – “Classes: Que se faça uma classe! O poder (não tão) oculto da herança!” Não perca!!
segunda-feira, 3 de novembro de 2008
[BLOG] Reportagem #0 - Algumas informações importantes sobre o blog
'TAGS' PRO 'BLOGS'
Olá à todos!
Acho que por agora é melhor definir algumas coisas, que certamente vão facilitar muito a leitura de quem acompanha o blog, vou usar "TAGS". "Como assim, tio Rafael, explica aí?". Muito simples, no começo de cada postagem, a partir dessa, vou dar uma palavra indicando sobre o assunto que trata a postagem, assim vai ficar mais fácil de vocês localizarem o assunto que vos interessa, sem dificuldade. Olha aí uma lista das principais tags que vou utilizar:
[BLOG]Se o assunto for sobre algo importante ou legal desse ou outro blog, a tag usada será essa;
[RGSS]Vou tratar aqui principalmente das minhas simpáticas historinhas, vulgo "aulas" de RGSS2;
[RPG MAKER]Para falar de tudo o que acontece no quesito RPG Maker, incluindo jogos dele;
[ANIME]Para falar de animação, em especial, porem não limitado a japonesa, esse é o canto;
[MANGÁ]Quadrinhos de qualquer tipo são bem-vindas aqui. Mais detalhes no titulo seguido;
[GAME]Jogar também é importante. Categoria altamente necessária;
[SITE]Também não custa nada avisar coisas legais que ocorrem em sites legais
[FILME]Porquê não, se já chegamos até aqui? Se bem que vai ser bem difícil essa aparecer.
Também deve aparecer outras tags, para falar de RPG's de "Tabuleiro",Llivros, etc, mas não liguem pra isso, quando vocês verem a tag vão entender (duhhhh....).
Nesse blog é PRIORIDADE MÁXIMA falar do Rpg Maker e principalmente RGSS! Não tenham medo de ficar perdidos no meio de postagem que vocês não desejam, vou evitar falar dessa baboseiras. Digo mais: É minha obrigação atualizar o blog pelo menos 3 vezes na semana, mais explicações virão depois. Quanto ao termo episódios, há outros parecidos. Eles indicam sobre o que eu vou fazer com o assunto (as tags já citadas). Olha só a explicação:
Episódio #xx – Minha nada mole vida no RGSS aqui, essas serão as “aulas” que vocês devem querer acompanhar! Assuntos bem aprofundados com linguagem do dia-a-dia, na forma duma narrativa leve e divertida. Sem preocupação com termos muito técnicos e teorias chatas! O fazer na prática e pronto...
Reportagem #xx – Tratar de coisas que já ocorreram, coisas que precisam ser vistas ou revistas (não as de papel!) vai ser aqui, previews e reviews de tudo o que se possa imaginar.
Noticiário #xx – O que acontece no Brasil e no mundo... Hã... Melhor tratar de dar só alguns informativos importantes e trazer as boas e más notícias relacionadas ao nosso “universo” já e mais do que suficiente.
A seguir, nas próximas postagens:
O que está havendo no Mundo Maker?? Vários sites fora do ar, incluindo Império Turbidos, Rpg Maker Brasil, Vila Makers, Maker World, etc. O que há e o que fazer agora??
Brincadeiras no Blog: Durante cada “episódio” vou espalhar algumas brincadeiras, a primeira vai ser que eu vou indicar umas letras e vocês vão ter que adivinhar a palavra. Mais detalhes podem aparecer em qualquer lugar a qualquer hora! Fique atento!!
Episódio #1vem aí: As "aulas" vão começar, crianças, preparem suas cadeirinhas...
Vocês já sabem o resto, comentários são bem-vindos aqui. Até mais!
domingo, 2 de novembro de 2008
Episódio #0 - Começa mais uma jornada!
Olá à todos que estão visitando meu blog!
Nele vou tratar do RGSS, enquanto falo da minha longa jornada tentando programar scripts para os jogos que estou e pretendo desenvolver. Aqui vou dar algumas dicas e explicações sobre o RGSS, mas não vou fazer isso na forma de aulas e sim na forma de contos, que mostam como eu superei as dificuldades enquanto eu programava meus scripts, por isso as postagens não trerão uma ordem muito lógica, vai ter de tudo um pouco: flashbacks, previews dos próximos "episódios", entre outros. Mas também vou colocar alguns "fillers", tratando de outros assuntos interessantes, além de previews e reviews de outros jogos meus e dos outros Makers.
Observe que tudo o que eu escrever está sujeito à erros (não só de ortografia!), ou seja, algumas informações podem estar incorretas/incompletas, mas não se preucupem, assim que a informação for encontrada ela será corrigida, e ás vezes eu poderia postar "erratas" com as maiores burradas cometidas por ninguem mais além de eu mesmo.
Claro que para isso vocês podem e devem comentar, para ajudar a manter o Blog, prometo responder e considerar todos os comentários, e na medida do possível tentarei responder às dúvidas, ou aconselhar um lugar onde pode encontrar ajuda. Você está livre para postar sugestões e comentários sobre qualquer aspecto relacionado à este blog, esteja a vontade, e se possível, evite ficar 'chat'eando com outros postadores de comentários; além disso, para manter a ordem, irei excluir posts ofensivos/desenecessários.
Acho que isso já introduz um bocado sobre o que esse blog faz! O resto das informações você vai encontrar espalhadas por aí! E fique atento que às vezes eu poderei espalhar algumas brincadeiras pelos posts, e vocês vão ter que investigar para descobrir algo. A partir de agora, sintam-se á vontade para comentar e sugerir, já que o blog está em período de construção, vale tudo!
Obrigado pela atenção e volte sempre!!
Rafael_Sol_MAKER
Nele vou tratar do RGSS, enquanto falo da minha longa jornada tentando programar scripts para os jogos que estou e pretendo desenvolver. Aqui vou dar algumas dicas e explicações sobre o RGSS, mas não vou fazer isso na forma de aulas e sim na forma de contos, que mostam como eu superei as dificuldades enquanto eu programava meus scripts, por isso as postagens não trerão uma ordem muito lógica, vai ter de tudo um pouco: flashbacks, previews dos próximos "episódios", entre outros. Mas também vou colocar alguns "fillers", tratando de outros assuntos interessantes, além de previews e reviews de outros jogos meus e dos outros Makers.
Observe que tudo o que eu escrever está sujeito à erros (não só de ortografia!), ou seja, algumas informações podem estar incorretas/incompletas, mas não se preucupem, assim que a informação for encontrada ela será corrigida, e ás vezes eu poderia postar "erratas" com as maiores burradas cometidas por ninguem mais além de eu mesmo.
Claro que para isso vocês podem e devem comentar, para ajudar a manter o Blog, prometo responder e considerar todos os comentários, e na medida do possível tentarei responder às dúvidas, ou aconselhar um lugar onde pode encontrar ajuda. Você está livre para postar sugestões e comentários sobre qualquer aspecto relacionado à este blog, esteja a vontade, e se possível, evite ficar 'chat'eando com outros postadores de comentários; além disso, para manter a ordem, irei excluir posts ofensivos/desenecessários.
Acho que isso já introduz um bocado sobre o que esse blog faz! O resto das informações você vai encontrar espalhadas por aí! E fique atento que às vezes eu poderei espalhar algumas brincadeiras pelos posts, e vocês vão ter que investigar para descobrir algo. A partir de agora, sintam-se á vontade para comentar e sugerir, já que o blog está em período de construção, vale tudo!
Obrigado pela atenção e volte sempre!!
Rafael_Sol_MAKER
Assinar:
Postagens (Atom)
