My script sets this value in editor. How can I keep the the changes when saving the scene?
class Anchor:
var offset: Vector3
var connected: Node3D
var end: bool
var anchors: Array[Anchor]
I found this issue, so I tried fiddling with _get_property_list()
, but that didn't work. It also doesn't seem that I can export the var.
Thanks
deleted by creator
Had to look up how to do that, as apparently the docs don't have that kind of information. I did come across this SO question. So, the solution would be:
#anchor.gd class_name Anchor var offset: Vector3 var connected: Node3D var end: bool
And that would create this new, readily accessible class throughout the project, correct?
deleted by creator
deleted by creator
Thanks for that link, I now have learned why it didn't originally work (and that other features like reference counting aren't employed by default!).
The solution, if anyone needs this in the future:
# Separate file extends Resource class_name Anchor @export var offset: Vector3 @export var connected: Node3D @export var end: bool
It adds namespace pollution, but I'll deal with it by prefixing it with the original script's class.
@Bezier yeah it's good to know about the differences between Object and RefCounted when you're making custom data containers.
Personally, I've been suffixing my custom/"game object" resources with "-Rs", as in I have
PlayerRs
,FileRs
,DownloadRs
, etc.The namespace pollution is definitely part of the trade-off from just preloading wherever you need the class.