Solucionado (ver solução)
Solucionado
(ver solução)
8
respostas

Não consigo atribuir o código ao jogador

Bom dia!

Quando eu tento usar o código de movimentação no jogador aparece o seguinte erro: "Can't add script component 'ControlaJogador' because the script class cannot be found. Make sure that there are no compile errors and that the file name and class name match".

Eu já estava estranhando na hora de escrever o código, porque no vídeo da aula o compilador já achava os comandos "transform" "Translate" sozinho, no meu visual studio não aparecia.

Agradeço desde já.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ControlaJogador : MonoBehaviour
{
    // Update is called once per frame
    void Update()
    {
        transform.Translate(Vector3.foward);
    }
}
8 respostas

OI Jonas, tudo bom? Me parece que no seu código está tudo certo, pode ser um erro da própria Unity, vc já tentou criar outro script e copiar o código para ver se ele compila?

Já tentei sim, inelizmente, não deu certo. Acabei de atualizar a Unity e mesmo assim não consigo compilar.

Oi jonas, tudo bom? Acho que achei-> forward está escrito errado e por isso ele não deve compilar

Oi, fiz a correção da palavra forward e continua dando o mesmo erro.

Dentro do Console da unity não aprece nenhuma outra mensagem?

Ele não acha a definição de "foward" que era a maneira errada que eu tinha escrito, mas eu já arrumei o código, dei refresh e reimport. Aparece a seguinte mensagem no canto esquerdo inferior da tela:

Assets\Texturas\ControlaJogador.cs(9,37): error CS0117: 'Vector3' does not contain a definition for 'foward'

solução!

Oi, Jonas, tudo bem?

Muitas vezes ocorre da gente acabar criando mais de um script até sem querer. Vi que o script errado está na pasta de Texturas então pode ser que tenha mais de um no seu projeto.

Na janela de Project tente buscar por ControlaJogador e veja se aparece mais de uma opção e talvez um deles ainda está com erro e você pode apagá-lo ou apagar os dois e fazer o processo novamente.

Era exatamente isso, deletei o script antigo e consegui implementar o script correto, problema resolvido! Muito obrigado!