cocos creator跨脚本取属性值

是初学者 想问一下添加事件后 改变了其中某个节点的属性值 在其他脚本里怎么获取改变后的新值

以下内容部分参考ChatGPT模型:


在Cocos Creator中,可以使用节点的getComponent()方法获取到组件,然后通过组件的属性访问器来获取或设置属性值。

例如,在脚本A中添加了一个事件,改变了节点B的position属性:

// 脚本A
const nodeB = cc.find("Canvas/NodeB");
nodeB.position = cc.v2(100, 100);

然后在脚本C中想要获取节点B的position属性值,可以这样做:

// 脚本C
const nodeB = cc.find("Canvas/NodeB");
const pos = nodeB.position;
console.log(pos.x, pos.y);

注意,需要保证节点B在脚本A和脚本C中都可以被找到。如果节点B是在场景中动态生成的,可以使用cc.find()方法来获取节点。

另外,如果节点B上没有脚本组件,可以通过节点的属性访问器直接获取或设置节点属性值。例如,获取节点B的active属性值:

// 脚本C
const nodeB = cc.find("Canvas/NodeB");
const active = nodeB.active;
console.log(active);

如果我的建议对您有帮助、请点击采纳、祝您生活愉快

1、把这个值写成静态变量,可以直接读取
2、把该节点声明在其他脚本里,然后通过该节点获取节点得脚本数值。
3、在其他脚本添加事件接受该数值,该数值改变时发送事件到新脚本上。