我是 Cocos2dx 的新手,我正在尝试创建一个名为“Shake the disk”的博彩游戏。所以基本上,每次玩家在门上下注时,我都想展示一个筹码,表示玩家已经在那个门上下注。但是,对该门使用 addChild()
仅在第一次使用时有效。在下图中,我首先在门上添加一个红色芯片,然后在那个门上添加另一个绿色芯片。
但是,在我看来,绿色筹码恰好绘制在红色筹码之上。我试图让两个筹码彼此相邻出现,以便玩家可以看到他们在那个门上放了 1 个红色筹码和 1 个绿色筹码。
谢谢你帮助我,祝大家有美好的一天。
最佳答案
cocos2d::MenuItem *menuItemWithImage01 = cocos2d::MenuItemImage::create("unselected_image01_filename.png", "selected_image_filename.png", CC_CALLBACK_1(Layer::Function, this));
cocos2d::MenuItem *menuItemWithImage02 = cocos2d::MenuItemImage::create("unselected_image02_filename.png", "selected_image_filename.png", CC_CALLBACK_1(Layer::Function, this));
auto menu = new cocos2d::Menu(menuItemWithImage01 ,menuItemWithImage02 , NULL);
menu->alignItemsVertically();
this->addChild(menu);
这是未经测试的,但您可以使用图像创建菜单项,然后将它们添加到菜单,并根据需要水平/垂直对齐菜单项。
那么在您的情况下,只需将包含所有筹码的菜单添加到门中,并在激活时将它们设置为可见?
关于c++ - Cocos2dx - C++ 如何将 child 添加到 Sprite 而无需将它们堆叠在一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38733334/