- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我的应用程序中,我有一个有脚的角色,我想制作它,以便在我的应用程序中,它看起来像是站在另一个CCSprite上方,并向上移动到屏幕上(动画)。一切工作正常,除了有一个定位问题,我只是无法解决!
让我再解释一下这个问题,当角色位于CCSprite的顶部时,似乎角色以非常快的间隔上下移动约10点。
有谁知道为什么会这样吗?
谢谢!
最终编辑:,我想再次感谢您为我提供的所有帮助。首先,由于帖子过长,我删除了所有其他编辑,如果出于任何原因需要引用旧的编辑,只需浏览一下我的编辑历史即可!
因此,经过大约一个小时的测试,我将其范围缩小到您前面提到的一个问题,用于检查角色和地板是否碰撞的if语句为,而不是,它们在游戏循环中的每次迭代都被称为应该 be(就它们在用户界面中的外观而言)。
我的cocosGameLoop日志在所有碰撞检测代码之前且之前,但仍在游戏循环中。f
我还注意到我的NSLogs中有一个模式,如下所示:
2012-05-27 17:00:54.791 App[2769:707] cocosGameLoop
2012-05-27 17:00:54.811 App[2769:707] cocosGameLoop
2012-05-27 17:00:54.825 App[2769:707] cocosGameLoop
2012-05-27 17:00:54.841 App[2769:707] cocosGameLoop
2012-05-27 17:00:54.858 App[2769:707] cocosGameLoop
2012-05-27 17:00:54.874 App[2769:707] cocosGameLoop
2012-05-27 17:00:54.891 App[2769:707] cocosGameLoop
2012-05-27 17:00:54.908 App[2769:707] cocosGameLoop
2012-05-27 17:00:54.924 App[2769:707] cocosGameLoop
2012-05-27 17:00:54.928 App[2769:707] collisiontwo
2012-05-27 17:00:54.929 App[2769:707] two
2012-05-27 17:00:54.941 App[2769:707] cocosGameLoop
2012-05-27 17:00:54.944 App[2769:707] collisiontwo
2012-05-27 17:00:54.945 App[2769:707] two
2012-05-27 17:00:54.958 App[2769:707] cocosGameLoop
2012-05-27 17:00:54.974 App[2769:707] cocosGameLoop
2012-05-27 17:00:54.991 App[2769:707] cocosGameLoop
2012-05-27 17:00:55.008 App[2769:707] cocosGameLoop
2012-05-27 17:00:55.025 App[2769:707] cocosGameLoop
2012-05-27 17:00:55.043 App[2769:707] cocosGameLoop
2012-05-27 17:00:55.058 App[2769:707] cocosGameLoop
2012-05-27 17:00:55.076 App[2769:707] cocosGameLoop
2012-05-27 17:00:55.078 App[2769:707] collisiontwo
2012-05-27 17:00:55.078 App[2769:707] two
2012-05-27 17:00:55.091 App[2769:707] cocosGameLoop
2012-05-27 17:00:55.094 App[2769:707] collisiontwo
最佳答案
看起来很奇怪的第一件事是您在Some other tag collision checking before
注释之后检查了标签。这将更有意义:
else if ((spriteA.tag == 1 && spriteB.tag == 5) || (spriteB.tag == 1 && spriteA.tag == 5))
...
else if ((spriteA.tag == 6 && spriteB.tag == 1) || (spriteB.tag == 6 && spriteA.tag == 1))
...
else if
块之间振荡,从而在进入错误的块时设置了错误的位置?
if (spriteA.position.x - spriteA.boundingBox.size.height*.5 <= spriteB.position.x + spriteB.boundingBox.size.height*.5)
if (spriteB.position.x - spriteB.boundingBox.size.height*.5 <= spriteA.position.x + spriteA.boundingBox.size.height*.5)
for
循环中查看联系人,并在其中检测到已建立联系人,您应该只设置一个标志而不是在此时更改字符的位置,例如
BOOL characterOnPlatform
-当检测到联系时将其设置为
YES
。在该
for
循环之外(尽管不一定采用相同的方法-它可以在每个帧中被调用的任何地方,并且在最有意义的地方),您将检查该标志以及
characterOnPlatfom == YES
,然后将字符的位置设置为位置计算您当前正在联系人监听器
for
循环中进行操作。即在联系人监听器
for
循环
中不执行任何操作,但会更改您将在其他地方引用的某些状态。
NO
,否则我们将迫使他们进入某个位置来覆盖他们想要的移动在平台上。
resetgravity
方法中发生了什么?您如何将
hasCollided
设置为NO(即如何检测平台上不再存在该字符)?您的角色仍然在上下晃动吗?或者您提到的闪烁与以前有所不同吗?
关于ios - 动画时,CCSprite在其他CCSprite之上的定位问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10569980/
我想要完成的是让我的 CCSprite 在接触另一个 CCSprite 时跟随它。现在我所说的跟随的意思是,假设有另一个 CCSprite 的动画在屏幕上移动。所以如果这个 Sprite 击中了我的主
我使用 CCSprite 使我的项目显示简单的纹理。 但我发现纹理包含一些微小的噪音,黑色像素错误。 我使用代码将 png 文件分成小块。并将其添加到主视图。 不是所有的人都有噪音,但有些人有。 我不
在我解释我的问题之前,我对我的项目如何运作做了这个非常不简洁的说明 - 我的问题是 - 当我要检查损坏的时间到了时,我想从数组中删除该对象!我曾尝试在 checkForDamage 中删除它,但由于它
_ball = [CCSprite spriteWithFile:@"ball.png" rect:CGRectMake(0, 0, 52, 52)]; _ball.position
我无法插入同一个 Sprite 的多个子元素并访问它(或在运行时为它们设置位置)。请建议任何合适的方法最好指出我的错误。这是我的方法。 //In the Init Method... //int i
我在 init 方法中创建一个像这样的 Sprite (mySprite 在 .h 中声明): mySprite = [CCSprite spriteWithFile:@"Image1.png"];
我正在尝试学习 Objective-C 以及如何使用 cocos2d 为 iOS 制作一些简单的动画。 我正在使用本教程并让动画正常工作,但我想将代码从主类中取出并放入一个单独的类中。 ( http:
我正在尝试从透明 PNG 创建 Sprite 图。如果我将图像用于 UIImageView,它会将背景显示为透明 - 它应该是透明的。但是,如果我使用 CCSprite,我会得到黑色背景。这是我正在创
我对更改 CCSprite 的纹理有点困惑。 我有: aTexture[NUM_WALLS+11] = [[CCTexture2D alloc]initWithImage:[UIImage image
我的 iPhone 游戏在 cocos2d 中遇到了一个奇怪的问题。我创建了一个 PNG 文件,如下所示 在 cocos2d 中,我使用 CCSpriteSheet 来获取所有带有 PNG 文件的球。
想象一个变种人,它使纹理调色板从屏幕的一侧滚动到另一侧。我们将随机选择给定矩形内的纹理来模拟图像轮播的功能。 //Header file of the Texture Embedded
我有一个 CCSprite 对象,我想在另一个 CCSprite 中复制它。然后我想展示那个拷贝。我试过这段代码,但它会产生运行时错误。 CCSprite* copy=CCSprite::sprite
我正在尝试制作自定义进度条。我想要做的是根据数字的百分比让“barMask.png”具有 X 比例。我试过这样做: barBack = CCSprite::create( "barBack.png"
我正在使用 cocos2d 为图形制作 iPhone 应用程序,我在我的项目中添加了 4 张图片,我想将它们叠加起来用作背景。然后我通过像这样制作 CCSprite 将它们添加到应用程序中......
我是 Cocos2D 新手,我对纹理加载有疑问。 当我使用如下代码创建两个 Sprite 时,它是否会将纹理“alien.png”加载两次到内存中?或者它只保存一份副本并只创建一个 OpenGL 纹理
我正在使用Cocos2D开发一个画线游戏,类似于Flight Control、Harbor Master以及应用商店中的其他游戏。 对于这个游戏,我需要一个 CCSprite 来跟随用户绘制的线。我正
我可以使用以下代码初始化或创建一个新的 CCSprite 对象: NSString *fileName = [[imagesPath objectAtIndex:i] lastPathComponen
我有一个从 CCSprite 继承的对象。我想从这个对象内部更改图像。 如何在 Cocos2d-X 中更改图像( Sprite )而不创建新的 CCSprite 对象? 谢谢,阿德里安。 最佳答案 m
我有一堆 Sprite 来在我的游戏中创建一个森林。我想要做的是通过调暗或调亮每个图像来模拟白天和黑夜,就好像太阳下山或上山一样。如何更改 Sprite 的亮度(不是不透明度)。 我正在使用最新版本的
我已经为一个角色创建了动画..需要帮助通过其标签值将此动画添加到现有角色中.. 就我在网络上检查而言..所有都在创建新的 CCSprite制作这个动画..但我需要它将此动画添加到现有的 Sprite.
我是一名优秀的程序员,十分优秀!