如果Godot脚本A和B都扩展了脚本C,A和B是否共享与C中相同的变量名?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如果Godot脚本A和B都扩展了脚本C,A和B是否共享与C中相同的变量名?相关的知识,希望对你有一定的参考价值。
我是Godot引擎的新手。
如果gd脚本A和B都扩展了脚本C,并且var_c是脚本C中的变量,那么A中使用的var_c与B中使用的var_c是否不同?
所以我的脚本A和B扩展了脚本C。A和B表示有限语句机中的不同状态。例如,在最初安装Godot的有限状态机演示中(来自Steam),说C是motion.gd,而A,B是move.gd和jump.gd。
我正在C中引入一个变量var_c,希望它被A和B“共享”,因为如果var_c在状态A下被更新(比如我写的话)>
var_c = 123
在脚本A)中,当我进入状态B时,我希望访问var_c的更新值,例如
if var_c == 123: print("A and B seem to share the same value of var_c!")
[不幸的是,我在状态A中调用的var_c看起来独立于在状态B中调用的var_c。我可能犯了一个错误,但我想知道它在总体上是否正确。
A中使用的var_c和B中使用的var_c是否相同?如果它们不同,我该如何彼此访问?像A.var_c和B.var_c吗?
谢谢。
我是Godot引擎的新手。如果gd脚本A和B都扩展了脚本C,并且var_c是脚本C中的变量,那么A中使用的var_c与B中使用的var_c是否不同?所以我的脚本A和B扩展了...
如果每个脚本都有唯一的名称(例如:examplescriptA.gd和examplescriptB.gd),则其中包含的变量应该是该脚本的局部变量,因为Godot不能真正严格地识别全局变量。如果要使用等效的全局变量系统(即,可以从任何其他脚本访问和更新的一组变量),则应使用singletons
。
文档在这里-https://docs.godotengine.org/en/stable/getting_started/step_by_step/singletons_autoload.html
以上是关于如果Godot脚本A和B都扩展了脚本C,A和B是否共享与C中相同的变量名?的主要内容,如果未能解决你的问题,请参考以下文章
第五课-第四讲05_04_bash脚本编程之三 条件判断及算术运算