Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Teste de movimento com o mouse

Olá, boa noite!

Ao tentar implementar o conteúdo da Aula 2 estou me deparando com um problema no momento dos testes. Pelo que revisei, todo o código está correto, porém, no seguinte trecho:

_direcao: cc.Vec2, O Cocos mostra a mensagem: "Can not find cc.component"

Quando coloco o código desta forma: _direcao: Vec2,

ele apresenta a mensagem: "Vec2 is not defined".

O que pode estar ocorrendo?

Caso haja necessidade, segue abaixo o código completo até aqui:

cc.Class({
    extends: cc.Component,

    properties: {
        _acelerando: false,
        _direcao: cc.Vec2,
    },

    onLoad () {
        cc.systemEvent.on(cc.SystemEvent.EventType.KEY_DOWN, this.teclaPressionada, this);
        cc.systemEvent.on(cc.SystemEvent.EventType.KEY_UP, this.teclaSolta, this);

        let canvas = cc.find("Canvas");
        canvas.on("mousemove", this.mudarDirecao, this);
    },

    mudarDirecao: function(event)
    {
        let posicaoMouse = event.getLocation();
        posicaoMouse = new cc.Vec2(posicaoMouse.x, posicaoMouse.y);
        let direcao = posicaoMouse.sub(this.node.position);

        direcao = direcao.normalize();
        this._direcao = direcao;
    },

    teclaPressionada: function(event)
    {
        if(event.keyCode == cc.KEY.a)
        {
            this._acelerando = true;
        }
    },

    teclaSolta: function(event)
    {
        if(event.keyCode == cc.KEY.a)
        {
            this._acelerando = false;
        }
    },

    start () {

    },

    update (dt) {
        if (this._acelerando) {
            this.node.position = this.node.position.add(this._direcao);
        }
    },
});
7 respostas

Oi Lucas, tudo bom? Aparentemente ta tudo certo sim. O que me chamou a atenção é que na mensagem de erro o "component" está escrito com letra minúscula e não maiúscula.

Verifica se no código está escrito assim. Se tiver coloca como maiúscula.

Olá, Ricardo! Estou bem e você?

No código, o Component já está escrito com maiúsculo.

Lucas, você consegue me mandar um link cdo Git com o seu projeto? Assim eu consigo ver melhor o que pode estar acontecendo

Ricardo, te envio hoje a noite!

Ricardo, segue o link solicitado:

https://github.com/PiorPesadelo/ProjetoCocosCreator1_AliensWar.git

Caso haja algum problema, me avise por favor!

solução

Oi Lucas, tudo bom?

Acabei de ver seu código aqui, não tem nada errado com ele. A Cocos que deve ter se perdido na hora de "compilar" o script e não conseguiu voltar.

O que eu fiz foi criar um script novo e copiar seu código nesse arquivo novo. Dessa forma a Cocos conseguiu se achar e eu consegui adicionar ele no objeto da nave.

Ricardo, boa noite!

Fiz o mesmo procedimento descrito por você no último post e deu certo! Agradeço pela ajuda!