级别选择菜单具有不同级别,类似于剪绳游戏

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了级别选择菜单具有不同级别,类似于剪绳游戏相关的知识,希望对你有一定的参考价值。

我想在cocos2d中使用水平选择屏幕,就像切割绳索游戏一样。没有任何滑动效果。

到目前为止我发现最有帮助的网站是“level selection screen with scrolling

目前我正在使用以下内容获取菜单项但无法定位它们

for (int i=0; i<levelCount; i++) {

    item1 = [CCMenuItemImage itemFromNormalImage:@"levButton.png" selectedImage:@"levButton.png" target:self selector:@selector(playnow)];
    item1.tag = i;
    [levelMenu addChild:item1];

}
答案

如果您需要以网格方式放置项目,可以这样做:

    int realIndex = 0;
    for (int x = 0; x < numberOfHorizontalItems; x++) {
        for (int y = 0; y < numberOfVerticalItems; y++) {
            item1 = [CCMenuItemImage itemFromNormalImage:@"levButton.png" selectedImage:@"levButton.png" target:self selector:@selector(playnow)];
            item1.tag = realIndex;
            item1.position = ccp(x * (item1.contentSize.width + 6),-(y * (item1.contentSize.height + 6)));
            [levelMenu addChild:item1];
            realIndex++;
        }
    }
    levelMenu.position = ccp(0,0)   //   <-- Adjust coordinates.

诀窍是使用2个For循环,一个用于X,另一个用于Y定位。

另一答案

您可以像创建一样创建一个垂直的按钮行

item1 = [CCMenuItemImage itemFromNormalImage:@“levButton.png”selectedImage:@“levButton.png”target:self selector:@selector(playnow)]

添加CCMenu中的所有项目,添加垂直填充并定位菜单

CCMenu * menu = [CCMenu menuWithItems:item1,item2,nil];

[menu alignItemsVerticallyWithPadding:20.f];

menu.position = ccp(x,y);

您可以为每列创建1个菜单,并在该菜单中添加该列中的所有按钮。您只需要定位CCMenu,菜单中菜单的定位遵循您的规则(例如,verticalWithPadding)

以上是关于级别选择菜单具有不同级别,类似于剪绳游戏的主要内容,如果未能解决你的问题,请参考以下文章

在SQL数据访问中如何对不同级别设置访问权限

mysql级别选择菜单的java返回变量

Pygame 级别/菜单状态

具有不同分段级别的 UISlider

在 Pandas Python 中聚合具有不同细节级别的数据

复杂的树数据结构