Before answering, one quick tip, you can replace
onready var player = get_parent().get_node("PlayerCharacter")
onready var player = get_node("../PlayerCharacter")
To know wether the node is loaded, you can use the
has_node(name : String) method on its potential parent node. It returns a bool value (true if it has the node with the name you gave as an argument).