Até aqui, nossos códigos ou foram feitos livremente, linha a linha, ou dentro de uma classe utilizando o Start() ou o Update().
Imagine que o jogo principal (onde você controla o personagem pelo cenário) roda em apenas um Update(), num código apenas.
Tente imaginar como seria programar o acesso aos menus de opções, equipamentos ou itens apenas nesse Update() ou num código só. Seria inviável porque estaria tudo bagunçado, vários códigos repetidos, que fazem a mesma coisa, espalhados pelo Update().
O mais apropriado seria ter o código dos menus implementado fora do código principal para facilitar o entendimento, manutenção e reutilização toda vez que necessário.
O Método age nessa perspectiva, separa códigos que atuam em problemas diferentes, incorporando-os à execução principal do programa. Os métodos, também chamadas de funções (quando não estamos falando de classes), são blocos de código que realizam uma tarefa específica e podem ser chamados por outras partes do código.
Em C#, os métodos são declarados com o seguinte formato:
O modificador de acesso determina quem pode acessar o método, quando for usado por outras classes.
Os tipos de retorno indicam o tipo de dado que o método retorna (ou void, se o método não retornar nenhum valor).
O nome do método é o identificador pelo qual o método é chamado, e a lista de parâmetros são os argumentos que o método recebe quando é chamado.
Um exemplo de método em C# é o seguinte:
Este método tem como modificador de acesso public, que permite que esse método seja usado por qualquer outra classe. O tipo de retorno é int e dois parâmetros do tipo int. Quando chamado, o método soma os dois números, recebidos por parâmetro, e retorna o resultado.
Em Unity, os métodos são muito úteis para dividir o código em partes mais gerenciáveis e reutilizáveis. Por exemplo, um método pode ser criado para controlar o comportamento de um personagem quando é atingido por um projétil:
Este método pode ser chamado pelo código de colisão do projétil quando ele atinge o personagem, passando o dano causado como argumento.
Regras
Assim como as variáveis, os métodos também tem regras de declaração e uso:
São declarados com um tipo e um nome;
Sempre pertencem a uma classe. Quando um método não faz parte de uma classe, ele é chamado de função;
É possível passar valor para dentro de um método, isso é feito através dos parâmetros;
Métodos podem ou não possuir parâmetros. O parâmetro é delimitado pelos parênteses;
A presença de parênteses é obrigatória mesmo que não haja parâmetros;
Métodos também podem retornar valores ao executar, e devem ser do mesmo tipo da declaração;
Um método sem retorno possui tipo void;
O bloco de código de um método é obrigatoriamente delimitado por chaves;