如何在代码中取得一个特点type的关节

我们可以在初始化方法中添加如下代码:

-(void)didLoadFromCCB{
    Class distanceJointClass = NSClassFromString(@"CCPhysicsSlideJoint");
    NSAssert(distanceJointClass, @"Class CCPhysicSlideJoint don't exist!");
    for (CCPhysicsJoint *joint in self.physicsBody.joints) {
        if ([joint isKindOfClass:distanceJointClass]) {
            _lockJoint = joint;
            break;
        }
    }
}

意思很清楚,从自身的joints集合中查找指定类型的关节(这里是查找距离关节)。

但是这段代码有点问题!

如果你在Spring.ccb中添加了多个距离关节,就不管用了。

不幸的是,关节中没有name或tag属性去帮助你简单的标示它们,无论是SpriteBuilder中还是代码中。

无论如何,你可以赋予关节节点一个不同的name来标示它们。你可以在代码中访问关节bodies以及它们的节点(nodes),并且比较节点的名字去找到特定的关节。

用下面的代码取个栗子 ;)

if([joint.bodyA.node.name isEqualToString:@"node A"] && [joint.bodyB.node.name isEqualToString:@"node B"]){
  //do something
}
时间: 2024-11-03 06:36:23

如何在代码中取得一个特点type的关节的相关文章

求解答-下面代码中第一个cout加上std:可以 为什么后面的家std:就不行??

问题描述 下面代码中第一个cout加上std:可以 为什么后面的家std:就不行?? #include "stdafx.h" #include //#include #include using namespace std; int main() { int i=0; int iNum1=0, iNum2=0; while(1) { std:cout << "这是第一个程序" << endl; cout << "请输入i

请大家帮我看看这个问题吧: 关于在后台代码中 定义一个string的问题?

问题描述 我在后台代码中是这么写的: publicpartialclass_Default:System.Web.UI.Page{privatestringfile_Path=ConfigurationManager.AppSettings["FileUploadPath"].ToString();privatestringfullFilePath=Server.MapPath(file_Path).ToString();}错误是: 错误1非静态字段.方法或属性"System

。net如何每周自动生成执行代码中的一个方法。

问题描述 有点类似像定时器,也就是说如何让本来需要手动点击按钮生成的数据,变成只要服务器IIS一直在运行,到一个时间就会自动执行一下这个方法,JAVA我知道有这种东西.那.NET呢?求大神给点实例参考下.具体要写成什么文件来执行这个方法.达到我想要的目的. 解决方案 解决方案二:quartz.net(作业式开源框架)解决方案三:不知道.net有这么个东西~什么应用场景?不能搞成一个win服务么?解决方案四:timer定时器呀,只要进程还在,就会定时执行解决方案五:不是.NET或Java有没有这个

武器切换代码-cocos2dx骨骼动画武器切换如何在代码中实现

问题描述 cocos2dx骨骼动画武器切换如何在代码中实现 一个精灵 有许多部位组成 游戏场景中 我想实现切换武器的效果 怎样做到索引xml (or plist)的 武器 进行替换 新武器呢?

震网蠕虫中的一个Bug差点令其“出师未捷身先死”

本文讲的是震网蠕虫中的一个Bug差点令其"出师未捷身先死",由于内部代码中存在一个Bug,使其可以感染古老的Windows系统.超级蠕虫病毒震网(Stuxnet)差一点暴露,从而无法完成破坏. 业内众所周知,该病毒可以隐秘地破坏控制离心机的计算机系统.它由美国和以色列的神秘黑客所设计,被用于破坏位于伊朗那达兹郡的铀浓缩设施.该病毒导致伊朗的浓缩铀项目推迟了两年之久,但由于其自身的代码缺陷,震网差点未能发挥作用. 为了完成行动目标,Stuxnet必须保证自己无法被伊朗人检测到.不幸的是,

js-JS从单选框中选择一个值后,点击提交后显示出该值!请问我的代码怎么修改啊啊?

问题描述 JS从单选框中选择一个值后,点击提交后显示出该值!请问我的代码怎么修改啊啊? <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> <script type="text/javascript" language="javascript

android-在代码中如何获取一个属性的值

问题描述 在代码中如何获取一个属性的值 我想在代码中检索textApperanceLarge的int值.我用的下面的代码,但是并不能从TypedValue提取int值? TypedValue typedValue = new TypedValue(); ((Activity)context).getTheme().resolveAttribute(android.R.attr.textAppearanceLarge, typedValue, true); 如何修改代码实现这个方法? 解决方案 从

在ASP.NET代码中增加了一个验证环节/提示窗口,页面竟然出现了惊人的BUG面目全非请问有谁出现过这种事情求解答方法?代码都列出来了

问题描述 在ASP.NET代码中增加了一个提示窗口,页面竟然出现了惊人的BUG面目全非protectedvoidButton1_Click(objectsender,EventArgse){if(TextBox1.Text.ToString().Trim()==""){Page.ClientScript.RegisterStartupScript(GetType(),"sf","<scriptlanguage='javascript'>aler

Javascript中克隆一个数组的实现代码

 这篇文章主要是对在Javascript中克隆一个数组的实现代码进行了介绍.需要的朋友可以过来参考下,希望对大家有所帮助 08年一家公司JS面试题,职位是javascript工程师(赴google)   面试官问我如何克隆一个数组,当时想了下js的Object没有clone方法,java的Object有.   那怎么得到一个新数组呢?   我当时回答:用一个loop将源数组元素依次push到新数组中.这是最简单的方法,但显然不是面试官想要的答案.   最后告知我:利用Array的slice方法.