0

我正在尝试使用 Cocos2d 构建一个 iPhone 应用程序。我想通过使用触摸作为我的愿望(快速或缓慢)将图像从固定位置设置到另一个固定位置。我有一些代码,但它不能正常工作。

所以朋友们,如果我得到任何解决方案,它会对我更有帮助。

4

1 回答 1

1

这个问题有点模糊,但是如果你想设置一个 CocosNode 的位置,你可以这样做:

[myNode setPosition:cpv(x,y)];

如果您希望节点从触摸位置偏移,可以通过实现 ccTouchesBegan:withEvent 来实现

-(BOOL)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
  UITouch *touch = [touches anyObject];
  CGPoint location = [touch locationInView: [touch view]];
  CGPoint convertedLocation = [[Director sharedDirector] convertCoordinate:location];

  [myNode setPosition: cpv(convertedLocation.x - 100, convertedLocation.y - 100)];
  return kEventHandled;
}

这将使 CocosNode 偏移 -100,-100 到触摸发生的位置。

ccTouchesBegan:withEvent: 应该在您的层中实现,并且 isTouchesEnabled 应该设置为 YES 以启用触摸。

于 2009-04-11T18:23:50.487 回答