Godot-set_offset在Inspector中工作,但在代码中不工作



如果我使用Inspector设置偏移量,敌人将从正确的偏移量中产生,但在通过下面的代码设置偏移量时不会这样做。而且

print(spawn_point.get_offset()) 

显示1000如预期,但敌人从(0,0(产生

想法?

extends Node
func generate_enemy(index):
var enemy = get_node("enemies").get_child(index).duplicate()
for child in get_node("common").get_children():
enemy.add_child(child.duplicate())
randomize()
var spawn_point = get_node("SpawnPath/SpawnLocation")#.set_offset(1000)#randi() % 2000) # <<< remove 2000 after testing
spawn_point.set_offset(1000)
print(spawn_point.get_offset())
print(spawn_point.get_h_offset())
enemy.set_pos(spawn_point.get_pos())
enemy.reference_bullet = enemy.get_node("reference_bullet").duplicate()
enemy.remove_child(enemy.get_node("reference_bullet"))
return enemy

在我的情况下,我已经从Path2D中删除了Curve2D,尽管我绘制了一条新的曲线,但由于某种原因,它没有保存。如果Path2D节点上的"曲线"特性没有撤消图标,原因可能相同。只需关闭场景并再次打开即可。

最新更新