如何在Godot中比较两个节点坐标

雨果·亚历杭德罗·科尔特斯·鲁伊斯

这可能很容易解决,但是我对godot和gdscript还是很陌生,所以我不知道该怎么做,也找不到适用于我的2D平台开发人员的教程或任何东西。

我有一个带有CollisionShape2d的Sprite,当玩家进入其区域时会更改场景,我想使其与玩家的位置进行比较,如果在发生碰撞或更改时玩家的x坐标较高,则将其更改为上一个场景如果不是,则转到下一个场景,我使用一个简单的条件,if position.x > player.position.x:但出现错误“在当前作用域中声明了标识符“玩家””,并且我不知道如何解决。我正在尝试对始终面对玩家的敌人做类似的事情,不用说我也遇到了同样的错误。

这是整个脚本:

extends Sprite

func _on_hitbox_area_entered(area: Area2D) -> void:
    if area.is_in_group("shield"): 
        if position.x > player.position.x:
            get_tree().change_scene("res://Levels/world_" + str(int(get_tree().current_scene.name) + 1) + ".tscn")
        else:
            get_tree().change_scene("res://Levels/world_" + str(int(get_tree().current_scene.name) - 1) + ".tscn")

也许还有另一种方法,但是当我寻找解决方案时,我发现无关的东西,而且我不知道该怎么办

超级编码器

解决方案是将播放器替换为区域,以使代码如下所示:

extends Sprite

func _on_hitbox_area_entered(area: Area2D) -> void:
    if area.is_in_group("shield"): 
        if position.x > area.position.x:
            get_tree().change_scene("res://Levels/world_" + str(int(get_tree().current_scene.name) + 1) + ".tscn")
        else:
            get_tree().change_scene("res://Levels/world_" + str(int(get_tree().current_scene.name) - 1) + ".tscn")

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在露天javascript中比较两个noderefs

来自分类Dev

如何在python中比较两个时间字段

来自分类Dev

如何在Java中比较两个图像

来自分类Dev

如何在Clojure中比较/减去两个列表

来自分类Dev

如何在python中比较两个时区?

来自分类Dev

如何在JUnit中比较两个double列表

来自分类Dev

如何在Postgresql中比较两个表?

来自分类Dev

如何在android中比较两个edittext字段

来自分类Dev

如何在Windows中比较两个csv文件

来自分类Dev

如何在Java中比较两个哈希映射

来自分类Dev

如何在JavaScript中比较两个日期时间?

来自分类Dev

如何在querybuilder中比较两个日期

来自分类Dev

如何在golang中比较两个文件?

来自分类Dev

如何在shell中比较两个值?

来自分类Dev

如何在Java中比较两个arraylist <Contacts>

来自分类Dev

如何在python中比较两个列表

来自分类Dev

如何在Django中比较两个Datetime字段

来自分类Dev

如何在C#中比较两个列表?

来自分类Dev

如何在C ++中比较两个char数组?

来自分类Dev

如何在sql oracle中比较两个datetime

来自分类Dev

如何在Matlab中比较两个Chanel

来自分类Dev

如何在php中比较两个变量

来自分类Dev

如何在Powershell中比较两个.js文件

来自分类Dev

如何在Python中比较两个以上的列表?

来自分类Dev

如何在bash脚本中比较两个日期?

来自分类Dev

如何在AngularJS中比较两个日期?

来自分类Dev

如何在javascript中比较两个列表项?

来自分类Dev

如何在javascript中比较两个对象数组?

来自分类Dev

如何在C#中比较两个对象列表?