返回介绍

定义类

发布于 2024-01-08 20:55:53 字数 3601 浏览 0 评论 0 收藏 0

我们已经感受到了,在 Godot 中,一个 GDScript 脚本文件就是一个类,但某些情况下,我们需要一些小巧的类,我们懒得去再创建一个新的脚本文件了,此时就可以用内部类语法:

class <类名>:
    <类成员(方法、属性、信号等)>

例如我们用这种形式定义一个 伤害来源 类:

class 伤害来源:
    var 攻击者 = null
    var 伤害值 = 0
    var 是魔法吗 = false

可见,除开第一行 class 关键字外,其他的语法都正常的类相同。

但注意,这样定义的类被称作内部类,就是说这个伤害来源类是位于当前脚本文件类内部的类,所以外部脚本想要使用这个伤害来源类时,就需要使用 外部类.内部类 的形式来访问。

假设刚刚定义 伤害来源 类的文件中有一行 class_name 伤害相关,那么外部代码在使用 伤害来源 类时则需要:

var 伤害 = 伤害相关.伤害来源.new() # 实例化这个类

[!note] 非节点的类实例

上面的 伤害来源 例子中,这个类就没继承自任何一个节点父类,也就是说 伤害来源 并不是一种节点,当实例化了这个类时,游戏中确实会多出一个 伤害来源 实例,但这个实例不会对游戏产生直接影响,它的属性和方法仅供我们其它代码使用。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文