Project Snake - Gamepad Edition
Projeto do jogo Snake com suporte de controle. Projeto base encontrado em link.
Referência utilizada para configurar o controle.
//Qualquer código dentro do Update é executado a quantidade máxima de frames por segundo na qual a máquina do jogador conseguir executar. private void Update() { //Caso a direção do eixo x for diferente de 0, o jogador consegue mover-se no eixo x, de acordo com o seu controle de preferência. if (this.direction.x != 0f) { //Caso o valor no input seja menor que -0.95 no eixo y do gamepad, o jogador move-se para cima. if (Input.GetAxis("VerticalGamepad") < -0.95) { this.direction = Vector2.up; } //Entretanto, caso o valor no input seja maior que .95 no eixo y do gamepad, o jogador move-se para baixo. else if (Input.GetAxis("VerticalGamepad") > 0.95) { this.direction = Vector2.down; } //Caso o jogador aperte os botões W, a seta para cima no teclado ou o botão de cima do controle o jogador move-se para cima. if (Input.GetKeyDown(KeyCode.W) || Input.GetKeyDown(KeyCode.UpArrow) || Input.GetButtonDown("AlternativeUp")) { this.direction = Vector2.up; } //Entretanto, caso o jogador aperte os botões S, a seta para baixo no teclado ou o botão de baixo do controle o jogador move-se para baixo. else if (Input.GetKeyDown(KeyCode.S) || Input.GetKeyDown(KeyCode.DownArrow) || Input.GetButtonDown("AlternativeDown")) { this.direction = Vector2.down; } } //Entretanto, caso a direção do eixo x não for diferente de 0 e a direção do eixo y for, o jogador consegue mover-se no eixo y, de acordo com o seu controle de preferência. else if (this.direction.y != 0f) { //Caso o valor no input seja menor que -0.95 no eixo x do gamepad, o jogador move-se para a esquerda. if (Input.GetAxis("HorizontalGamepad") < -0.95) { this.direction = Vector2.left; } //Entretanto, caso o valor no input seja maior que .95 no eixo x do gamepad, o jogador move-se para a direita. else if (Input.GetAxis("HorizontalGamepad") > 0.95) { this.direction = Vector2.right; } //Caso o jogador aperte os botões D, a seta direita no teclado ou o botão da direita do controle o jogador move-se para a direita. if (Input.GetKeyDown(KeyCode.D) || Input.GetKeyDown(KeyCode.RightArrow) || Input.GetButtonDown("AlternativeRight")) { this.direction = Vector2.right; } //Entretanto, caso o jogador aperte os botões A, a seta esquerda no teclado ou o botão da esquerda do controle o jogador move-se para a esquerda. else if (Input.GetKeyDown(KeyCode.A) || Input.GetKeyDown(KeyCode.LeftArrow) || Input.GetButtonDown("AlternativeLeft")) { this.direction = Vector2.left; } } }
Development log
- Atualização nos controles.Dec 04, 2021
Leave a comment
Log in with itch.io to leave a comment.