Я хочу установить тело после задержки перемещения, я ищу что-то вроде runBlock в sprite-kit.Как установить тело в действии
void MySprite::SpawnSprite(cocos2d::Layer *layer)
{
auto mySprite = Sprite::create();
auto body = PhysicsBody::create();
mySprite->setTexture("MySprite.png");
body->createCircle(arrow->getContentSize().width/2);
body->setDynamic(false);
mySprite->setPosition(startPoint);
layer->addChild(mySprite);
auto moveTest = MoveTo::create(2, Point(200, 200));
auto waitAction = DelayTime::create(2);
auto action = Sequence::create(moveTest, waitAction, NULL);//I want to set body after waitAction in sequence(mySprite->setPhysicsBody(body))
mySprite->runAction(action);
}
Это так просто в спрайт-комплект
runAction(
SKAction.sequence([
action,
SKAction.waitForDuration(2.0),
SKAction.runBlock({ //Set Body }))
])
)
, но я должен создать спрайт и тело в моей SpawnSprite функции, потому что у меня много же спрайт. Если я не создаю в функции, все спрайты будут затронуты моим действием? –
Вы хотите привязать тело к спрайту, на котором вы выполнили действие последовательности? – ibnetariq
да, может быть, я могу сделать это с пулом объектов. Я попробую. –