Para criar-mos nosso 1º script, iremos utilizar a idéia de classe, vá até seu banco de scripts (crie um novo projeto) e adicione uma nova seção acima do main, vamos agora instanciar nossa classe!
Código:
class CalcPara criar uma classe usamos a palavra reservada class e logo após colocamos o nome para ela, como faremos uma calculadora, utilizaremos como nome Calc!Código:
def somaTemos agora nosso método de soma, precisamos agora especificar o que ele fará!Os comandos que utilizaremos serão bem simples: operações matemáticas e o comando print!
Código:
$game_variables[id]Onde id é o id da variável na database!Até agora temos:
Código:
class Calc
def somaVamos utilizar a variável 3 para ser o resultado e a 1 e 2 para ser as que serão operadas, assim temos:Código:
$game_variables[3] = $game_variables[1] + $game_variables[2]
p $game_variables[3].to_sPara finalizar nosso script colocamos um end no fim do método e outro no fim da classe
Pense, se eu colocasse
def soma
def subtração
...
O programa não conseguirir ler onde termina um método e começa outro, por isso utilizamos o comando end no fim de cada método, para as classes é o mesmo, sempre que terminamos uma classe, colocamos um end para que o interpretador saiba que a classe terminou ali!
Nosso script ficou então:
Código:
class Calc
def soma
$game_variables[3] = $game_variables[1] + $game_variables[2]
p $game_variables[3].to_s
end
endPara testar:Crie um evento em seu mapa, nele vá em chamar script. Assim como criamos objetos numéricos como a = 3, a vale 3, temos que criar objetos para as classes, então vou dizer que:
calculadora = Calc.new
Assim calculadora será um objeto do tipo Calc. O .new significa que estou criando um novo objeto Calc! Para executar os métodos basta chamá-los dentro do objeto que criamos.
calculadora.soma
Sempre utiliza-se classe.método, com isso temos no nosso chamar script:
Código:
calculadora = Calc.new
calculadora.somaExecute o jogo e fale com o NPC para ver o resultado. Mude o valor das variáveis 1 e 2 para testar!
Via E-mail
Twitter
Facebook
Ótima Aula, Parabéns
ResponderExcluir