标签: gdscript

确定玩家是在摄像机视图 Godot 的内部还是外部

将 GDScript 与 Godot 相机结合使用。我有一个 Camera2D 对象来处理视口变换。

我希望让相机移动,调整屏幕分辨率并放大和缩小。我想确保当相机缩小时它们不能移动到相机的视角之外。

玩家也是一个 KinematicBody2D 对象。我正在考虑让玩家 testMove() 并确定他们的新位置是否会被 Camera2D 生成的矩形包围的一件事。

camera canvas viewport gdscript godot

1
推荐指数
1
解决办法
4967
查看次数

在更改父节点时动画移动的最佳方式?

目前,我正在使用面向节点的方法制作纸牌游戏(想想《炉石传说》)。这意味着,每张卡牌都是一个节点,要将卡牌移动到指定位置(例如,玩家的手或战斗场),我需要在父节点之间移动子节点。

例如,要将一张牌从我的手牌移到战斗场,我会在手牌上调用remove_child(),在战斗场上调用add_child()。

现在,当涉及到让卡片传送到任何地方时,这非常有效。但是,我希望它们能够顺利地从一个父节点移动到另一个父节点。实现这一目标的最佳方法是什么?或者除了使用节点之外还有更好的方法来组织我的场景吗?

parent-child nodes gdscript godot

1
推荐指数
1
解决办法
580
查看次数

戈多信号“发出”但未“接收”

我一直在尝试以这种方式从单例脚本发送信号:

if(Input.is_action_just_pressed("ui_select")):
    emit_signal("update_inventory")
    #More Code underneath - 
Run Code Online (Sandbox Code Playgroud)

我已经在显示我的库存项目的 UI 元素上声明了信号。像这样 -

signal update_inventory
Run Code Online (Sandbox Code Playgroud)

以及通过编辑器连接到它的函数的声明 -

func _on_Inventory_update_inventory():
    #My code here
Run Code Online (Sandbox Code Playgroud)

我试图理解一个类似的问题(我认为是这样?) 这里。我完全无法理解。我看到有人在里面说 - 信号是对象本地的。他们,真的吗?如果是,为什么不正常调用该函数?信号点会被打败,不是吗?

我也需要一种方法来解决信号问题。也许我没有正确配置它。我哪里错了?

如果需要,我非常乐意提供更多信息。

signals gdscript godot

0
推荐指数
1
解决办法
2402
查看次数

如何在 Godot 4 中连接带有额外参数的信号

这将是代码中给我带来错误的部分。

\n
for y in range(rows):\n        var row = []\n        for x in range(columns):\n            var label = Button.new()\n            row.append(label)\n            self.add_child(label)\n            label.group = "letters"  # Asignar el grupo "letters" a los botones\n            label.connect("pressed", self, "_on_LetterPressed", [x, y])  # Conectar la se\xc3\xb1al de presionado\n        grid.append(row)\n
Run Code Online (Sandbox Code Playgroud)\n

在 Godot 3 中,连接工作正常,但 label.groups 不起作用,我该如何在 Godot 4 中做到这一点?

\n

gdscript godot godot4

-3
推荐指数
1
解决办法
1431
查看次数

标签 统计

gdscript ×4

godot ×4

camera ×1

canvas ×1

godot4 ×1

nodes ×1

parent-child ×1

signals ×1

viewport ×1