переписать код cocos2d (target-c) на cocos2d-x (c ++)

0

Теперь перепишите код из cocos2d (object-c) в cocos2d-x (c + +) и столкнулся с проблемой: у меня есть два класса, два CCLayer. В одном классе CCMenu, нажимая кнопку, вызывает второй класс:

CCMenuItem * button = [CCMenuItemImage itemWithNormalImage: @ "1.png" selectedImage: nil block: ^ (id sender) {
             
              HelloWorldLayer * helloWorldLayer = (HelloWorldLayer *) [self.parent getChildByTag: 777];
              [helloWorldLayer createSprite: self];
          }];

А во втором классе я назначаю тег Layer:

self.tag = 777;

и этот метод:

  - (void) createSprite: (id) sender {
..}

Как переписать этот код в С++?))

Теги:
translate
cocos2d-x
cocos2d-iphone

1 ответ

0
Лучший ответ

Это просто.

Пусть класс, в котором находится меню Class- A

CCMenuItem * button=CCMenuItemImage::create("normal", "selected", "disable", menu_selector(A::Method));

Метод

void A::Method(CCObject *pSender){
 HelloWorldLayer * helloWorldLayer = (HelloWorldLayer *)this->parent->getChildByTag(777);
 helloWorldLayer->createSprite(this);
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню