Pulse Works Studio

Trying to call an async function without "await".

The function returned a state object because the caller did not await it.

Cause

This is the runtime form of calling a coroutine and then using the return value as a node or other object. The VM sees a GDScriptFunctionState where it expected the function's result. Await the call, or do not use the return value.

Fix

func fade(sprite: CanvasItem) -> void:
	var tween := create_tween()
	tween.tween_property(sprite, "modulate:a", 0.0, 0.2)
	await tween.finished

func _on_die() -> void:
	await fade(self)
	queue_free()

Related

Godot Dev Tools is a Pulse Works Studio project. All error explainers.