Invalid call Non existente function "attach_to" in base RigidBody2D (Damageable.gd)

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By cokohlanta

In “Level” :
extends Node

func _ready():
$Birds/Bird.attach_to($Slingshot)

In “Bird.gd” :

extends “res://scenes/Damageable.gd”

enum {
STATE_IDLE,
STATE_TRANSFERED,
STATE_ATTACHED,
STATE_DRAGGED,
STATE_RELEASED,
STATE_LAUNCHED,
}

var state = STATE_IDLE
var slingshot = null

export(int, 1,10) var TRANSFER_SPEED = 5

func _integrate_forces(s):
._integrate_forces(s)
var lv = s.get_linear_velocity()
var av = s.get_angular_velocity()
var delta = 1 / s.get_step()
var diff_pos = slingshot.get_node(“LauchPoint”).get_global_position() - get_global_position()

# IMPLEMENT STATES
match state :
	STATE_TRANSFERED:
		lv = diff_pos.normalized() * TRANSFER_SPEED * delta
	STATE_ATTACHED: 
		pass
	STATE_DRAGGED:
		pass
	STATE_RELEASED:
		pass 
	STATE_LAUNCHED:
		pass
s.set_linear_velocity(lv)
s.set_angular_velocity(av)

func attach_to(slingshot) :
self.slingshot = slingshot
state = STATE_TRANSFERED

Your script looks fine (even though it would’ve been nice if you took the time to format it properly…). Are you sure you saved the “Bird.gd”-script before testing?

njamster | 2020-05-07 20:32