【问题标题】:Deleting/Disconnecting a SceneTreeTimer删除/断开 SceneTreeTimer
【发布时间】:2023-01-30 16:30:29
【问题描述】:

我正在尝试断开 SceneTreeTimer 的连接以避免在超时时调用函数 像这样:

extends Node2D

onready var something = $Node2D
var timer

func abort():
    timer.disconnect("timeout",something,"queue_free")
    timer.emit_signal("timeout")
    
    print("timer=>",timer)

func _ready():
    timer=get_tree().create_timer(3)
    timer.connect("timeout",something,"queue_free")
    
    ...

    abort()

虽然它确实阻止了计时器调用该功能
中止后我仍然看到计时器,输出:

定时器=>[场景树定时器:1276]

时间过去了不应该是这样吗?

计时器=>[已删除对象]

【问题讨论】:

    标签: godot gdscript


    【解决方案1】:

    它似乎仍然存在,因为调用“断开连接”功能不会自动释放自身。尝试做 timer.stop() 代替。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-04-12
      • 2017-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-18
      • 2014-05-25
      相关资源
      最近更新 更多