Cocos2d-x ccaction не вызывается и ccsequence создает проблему

Я пытаюсь сделать то, что делал сотню раз с cocos2d, но с cocos2d-x мне кажется, что мне повезло меньше.

Если я сделаю

CCsequence *squence = CCSequence::create(someAction1, someAction2, NULL);

компилятор говорит:

Нет подходящей функции для вызова ‘create’

Я нашел эту проблему по всему интернету, но без какого-либо решения. Кстати, если я сделаю простое действие, как:

CCAction *action = CCMoveTo::create(5.0f, CCPointMake(0,0));

sprite->runAction(action);

действие даже не вызывается, и спрайт не равен нулю (я напечатал его размер и т. д.), печатая информацию об этом спрайте, это именно тот объект, который должен быть

0

Решение

Попробуй это:

CCFiniteTimeAction *action = CCMoveTo::create(x, (y,z));
CCsequence *squence = CCSequence::create(action, NULL);

Я думаю, что ошибка в том, что CCSequence ожидает классы CCFiniteTimeAction, но вы объявляете их как CCAction, что заставляет компилятор думать, что вы передаете неправильный тип, жалуясь на то, что нет функции create, которая принимает CCAction в качестве параметров.

0

Другие решения

Вы можете попробовать вот так

CCMoveBy *action = CCMoveBy::create(.5, CCPointMake(ball->getPositionX(), ball->getPositionY()+100));
CCMoveBy* action_back = (CCMoveBy*)action->reverse();
ball->runAction(CCSequence::create(action, action_back, NULL));

мяч спрайт

0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector