草庐IT

ios - Cocos2d : Should I use only (id)init for initializing, 或者我可以使用 (void)onEnter 进行后期分配吗?

在学习Cocos2d的过程中,我发现-(void)onEnter,-(void)onExit,可以像它们对应的一样使用,-(void)viewDidLoad,-iOSUIKit的(void)viewDidUnload我确实知道它们在技术上不是原始-(id)init的良好替代品,而且我经常看到学习Cocos2d的指导性文本仅使用-(id)init所有属性和变量的方法。但是,如果我使用-(void)onEnter进行分配和初始化,我可以引用self.parent以获得更简洁的代码。是否可以安全地假设我可以继续使用-(void)onEnter进行分配和初始化而不用担心它是否是使用Cocos2

ios - 我的 Cocos2d CCMenu 不会响应触摸

你好,当我的游戏到达游戏结束场景时,我有一个返回主菜单的按钮,但由于某种原因,它已停止工作这是导致我的游戏结束场景的代码:[[CCDirectorsharedDirector]pause];[[CCDirectorsharedDirector]replaceScene:[ResultsScreennode]];在我的GameOver初始化函数中....mainMenu=[CCMenuItemImageitemFromNormalImage:@"MainMenu.png"selectedImage:@"MainMenuClick.png"target:selfselector:@sele

ios - 如何组合这两个 Cocos2D if 语句?

我正在寻找一种在我的Cocos2D应用程序中组合这2个if语句的简单方法。但是,到目前为止,我的尝试根本没有奏效。谢谢! 最佳答案 我相信您尝试将if语句组合成一个语句是因为您在实际理解该语句时遇到了问题。作为一名程序员,您的首要职责是编写可读代码,即使您是唯一一个阅读代码的人。我能想到为什么你只需要一个if语句的另一个原因是你认为这样会更快。首先,我将从将所有计算移出if子句开始。这不仅是重复的,而且容易出错并且很难阅读。我还冒昧地用乘以0.5f来代替除以2,因为ARM处理器没有除法指令,因此除法由软件执行并重写为乘法。编译器可能

objective-c - cocos2d 中的 UIActivityIndi​​catorView

大家好!目前正在探索cocos2d框架。现在我正在尝试在cocos2d项目中使用UIKit的东西。我在做什么:我添加了方法:-(void)activityIndicatorRun{spinner=[[UIActivityIndicatorViewalloc]initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];spinner.color=[UIColororangeColor];spinner.hidesWhenStopped=YES;[spinnerstartAnimating];[selfsch

android - 清空 "Classes"文件夹 cocos2dx 3.0 eclipse

我已经在我的电脑上下载并安装了cocos2dx3.0,并新建了一个项目。我能够成功地为iOS和Android编译。但是,我在HelloWorldScene.cpp中做了一些代码更改,并在Xcode中编译了这些更改。我看到了变化,一切似乎都正常。然后我在eclipse中打开项目并编译并在我的nexus7上运行,但是我的nexus没有看到iOS版本所做的更改。然后我注意到Classes文件夹在eclipse中是空的。此文件夹应包含C++游戏逻辑的.cpp.h文件。我浏览了很多教程和谷歌搜索,但文档不一致,因为cocos2dx的文件夹和项目结构似乎在cocos2.x版本和3.0版本之间略有不

ios - SKProductsRequest 导致崩溃 - Cocos2d 和应用内购买

我对“应用内购买”和Cocos2D引擎有一个非常奇怪的问题。一切似乎都运行良好,交易也没有问题。但是当我多次打开和关闭我使用“应用内购买”交易的场景时,应用程序崩溃了。有时它会在几分钟后发生。.m文件:在我的初始化函数中:if([SKPaymentQueuecanMakePayments]){productsRequest=[[SKProductsRequestalloc]initWithProductIdentifiers:[NSSetsetWithObjects:@"xxx.blockads",@"xxx.unlocklevels",nil]];productsRequest.de

ios - Cocos 2d画线不起作用

我想在cocos2d中用手指触摸画线。-(void)ccTouchesMoved:(NSSet*)inappropriateToucheswithEvent:(UIEvent*)event{UITouch*touch=[inappropriateTouchesanyObject];CGPointcurrentTouchArea=[touchlocationInView:[touchview]];CGPointlastTouchArea=[touchpreviousLocationInView:[touchview]];currentTouchArea=[[CCDirectorshare

ios - Cocos2D 防止 Sprite 离开屏幕?

是否可以防止我的CCSprite离开屏幕?我已经允许它在左侧和右侧离开屏幕,所以这很好,但我只想阻止它在顶部和底部离开屏幕。到目前为止,我所做的只是让Sprite卡在顶部或底部。我不希望这影响Sprite的移动,我只想让CCSprite在到达顶部或底部时停止。谁能告诉我怎么做?谢谢!编辑:CGSizesize=[[CCDirectorsharedDirector]winSize];if((sprite.y=0)){//Setnewposition}else{//spriteiscollidingwithtop/bottomlimits,dowhateveryoulike,forexam

iphone - 如何从另一个场景中弹出特定的Cocos2D场景?

我有一个自己开发的游戏,共有三个场景:暂停菜单,主屏幕菜单和游戏本身。在游戏过程中,当游戏暂停时,它将通过以下方式显示暂停场景:[[CCDirectorsharedDirector]pushScene:[PauseScenenode]];在暂停场景中,有三个选项:重新启动,继续,主菜单。当单击恢复时,它只是弹出暂停场景并返回到游戏场景以恢复游戏性。单击主菜单时,它将游戏场景保留在背景中,并且在主菜单屏幕上,游戏仍在运行。到目前为止,经过大量研究,我无法找到一种方法将popScene(几乎从RAM中踢出)从游戏场景之外的任何场景中移除。在暂停屏幕上,我可以使用:[[CCDirectors

c++ - 如何在cocos2dx中绘制凹(凹)实心多边形

我需要绘制带有一些顶点的缩进(凹)实心多边形。我用voidHelloWorld::draw(void){CCPointvertices[5]={ccp(200,200),ccp(400,400),ccp(200,600),ccp(500,600),ccp(500,200)};ccDrawSolidPoly(vertices,5,ccc4f(0.7f,0.7f,0.7f,0.5f));}然后得到里面有三角形的矩形。但我希望如图所示的缩进(凹)实心多边形 最佳答案 尝试在CCDrawNode中使用drawPolygon函数voiddra