Cocoa touch 如何从一组具有不同属性的精灵中添加精灵图像?
在我的应用程序中,有一名玩家和10个目标。每个目标依次出现(从target1到target10)。这是一场射击比赛。如果我们击中第一个目标,第二个目标就会出现。目标具有名称、speedOfGunDraw、击中玩家的概率、speedOfFire等属性。 我应该怎么做才能使它们以这些属性一个接一个地出现。我正在使用CCMenuItem作为目标。我正在为玩家使用精灵。请告诉我怎么做。Cocoa touch 如何从一组具有不同属性的精灵中添加精灵图像?,cocoa-touch,cocos2d-iphone,Cocoa Touch,Cocos2d Iphone,在我的应用程序中,有一名玩家和10个目标。每个目标依次出现(从target1到target10)。这是一场射击比赛。如果我们击中第一个目标,第二个目标就会出现。目标具有名称、speedOfGunDraw、击中玩家的概率、speedOfFire等属性。 我应该怎么做才能使它们以这些属性一个接一个地出现。我正在使用CCMenuItem作为目标。我正在为玩家使用精灵。请告诉我怎么做。 谢谢。回答您的问题:使用Cocos2D,您的场景将创建精灵。您可以获取当前跑步场景并向其发送一条消息(“我中枪了”)。
谢谢。回答您的问题:使用Cocos2D,您的场景将创建精灵。您可以获取当前跑步场景并向其发送一条消息(“我中枪了”)。这可以通过导演来完成
[[CCDirector sharedDirector] runningScene]; // returns a pointer to the running scene
[[[CCDirector sharedDirector] runningScene] someoneShotMe: self]; // will message the scene that you're shot.
或者,如果场景没有控制对象,则在创建“敌人”时,将希望作为代理通知的对象设置为代理
我认为你把这件事复杂化了,因为你没有使用MVC
您不应该对精灵进行子类化,以便在“视图”之外为其提供更多功能
像probabilityToHitPlayer
这样的属性不会直接影响视图,因此不应该存储在精灵中
创建一个新类,如敌方
(NSObject
的子类),该类包含一个精灵,以及其他属性,如probabilityToHitPlayer
敌人可以处理逻辑(它是一个控制器),而精灵处理可见部分
还有,使用菜单项是因为它们具有触摸检测功能吗?不漂亮。相反,请查看CCTargetedTouchDelegate
Enemy * enemy1 = [[Enemy alloc] init];
[enemy1 setDelegate: self];
// and then from your enemy object, you call a message on the delegate
[self->delegate someoneShotMe: self];