THomasnokun

364 palavras 2 páginas
Relatório semanal Simulação 3D
Esse relatório tem como objetivo descrever mais uma utilização de behavior para auxiliar a criação de jogadas para o time

Desenvolvimento
O relatório em questão apresentará a utilização do behavior RunToPosition, que permite ao programador direcionar o agente para qualquer posição do campo, sendo ela um lugar específico no ou até mesmo a posição da bola. O desenvolvimento do código aqui utilizará de algumas variáveis de maneira direta, essas variáveis são provenientes de outras lógicas desenvolvidas e a sua apresentação detalhada pode ser encontrada em “Criação de
Jogadas Parte1”.
A classe RunToPosition é um behavior e portanto está incluída no HashMap de ações.
Para utilizá-la é necessário acessar o HashMap através do comando “get” e passar como parâmetro a “IBehaviorConstant” referente à classe. Para definir a posição para a qual o jogador deverá se locomover a classe “RunToPosition” disponibiliza um método denominado
“setPosition” que recebe como parâmetro as posições x e y, o ângulo de direção e as velocidades desejadas.

Acesso à RunToPosition através do HashMap behaviors.get(IBehaviorConstants.RUN_TO_POSITION); Método setPosition public void setPosition(Vector3D newPosition, float rotation,double minSpeedForward, double minSpeedSideward, double maxSpeedForward) Exemplo de Lógica de Movimentação

Vector3D newPosition = new Vector3D(15, 0, 0); this.runToPosition = (RunToPosition) behaviors
.get(IBehaviorConstants.RUN_TO_POSITION);
runToPosition.setPosition(newPosition,(float)player.getDirection
To(newPosition).radians(), 50, 50, 90); return behaviors.get(IBehaviorConstants.RUN_TO_POSITION);

O código acima funciona da seguinte maneira:
A variável “newPosition” recebe uma posição do campo qualquer, em seguida é necessário que uma variável to tipo “RunToPosition” seja criada, após criar a variável podemos utilizar o método “setPosition” para definir o que será feito passando como parâmetros a

Relacionados