-
-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Define prop without exporting it #3
Comments
Hi there! I'm sorry for the current lack of documentation =/ There is a way to mark properties to not show in editor, based on the PropertyUsage enum taken from GDNative's godot_property_usage_flags: MyClass.some_property = property {
"This String property is not exported to editor!",
usage = PropertyUsage.NOEDITOR,
} This will register Now, depending on your use case, if you only need a "private" (hidden from ClassDB or other languages) instance variable, you can also just set it on MyClass.some_public_property = 42
function MyClass:_init()
assert(self.some_public_property == 42)
self.some_private_property = Array()
end Also, if you want a class-wide (called local class_wide_variable = Dictionary()
function MyClass:get_from_class_cache(key)
return class_wide_variable[key]
end |
As a side note, properties are exported by default just because In a first moment, I thought of making properties not exported by default, and have an alias of the Something like: -- by default, `property` has `usage = PropertyUsage.NOEDITOR`
-- although setting it explicitly would override this default
MyClass.noeditor_property = property { "not shown in inspector" }
MyClass.another_noeditor_property = "also not shown in inspector"
-- export would be an alias to `property { usage = PropertyUsage.DEFAULT }`
MyClass.exported_property = export { "shown in inspector" } |
Thank you for the detailed explanation! And no worries on the documentation, we all know that's the hardest part of being a dev. Personally, I'd prefer the property vs export syntax. I think it'd make for a cleaner style. Just my two cents though. |
I think it competes with naming things =P
I think so too, will probably implement it in a near future. |
Currently, all variables defined in a class are exported to the editor. There doesn't seem to be a value one can set to keep them from being exported.
The text was updated successfully, but these errors were encountered: