在战舰游戏的cocos2d中是否有gridview?

时间:2011-10-11 14:31:08

标签: iphone cocos2d-iphone

我已经使用cocos2d一段时间了,我想做一个战舰游戏。 事情是我可以用UiKit(UIButtons和UIImageView)与cocos2d更容易和更快地做战舰,但我想充分利用cocos2d,因为我觉得它对游戏更好。问题在于我需要战舰的网格或其他东西来分隔象限中的触摸。在cocos2d中有类似gridview的东西吗?如果不是,我想我必须通过编程创建自己的象限? 您认为最好的方法是什么? 非常感谢 卡洛斯巴尔加斯

1 个答案:

答案 0 :(得分:2)

Cocos2d中没有基类可以做到这一点,但您可以轻松制作专门设计用于处理触摸的类,并将它们映射到正确的象限。

因此,如果你有一个480x320的屏幕,并且象限大小是32,你可以得到正确的象限,如:

使用这样的配置,你会得到480/32 = 15,320 / 32 = 10,10 * 15 = 150;一个150象限网格。

例如:获取触摸的象限

// Defined the Quadrant size for your grid
CGPoint quadrantSize = CGPointMake(32.0, 32.0)

// Obtain the quadrant X, Y coordinates for a user touch (assume touchPoint is CGPoint)
int quadrant_x = (int)ceilf(touchPoint.x/quadrantSize.x);
int quadrant_y = (int)ceilf(touchPoint.y/quadrantSize.y);

// Access a Quadrant
quadrantArray[quadrant_x][quadrant_y].touched = YES;