46 lines
1,006 B
GDScript
46 lines
1,006 B
GDScript
tool
|
|
class_name Data
|
|
extends Object
|
|
# Main creature class
|
|
|
|
#05. signals
|
|
#06. enums
|
|
#07. constants
|
|
#08. exported variables
|
|
#09. public variables
|
|
var datas = {}
|
|
|
|
#10. private variables
|
|
#11. onready variables
|
|
#12. optional built-in virtual _init method
|
|
#13. built-in virtual _ready method
|
|
#14. remaining built-in virtual methods
|
|
#15. public methods
|
|
|
|
func _init( p_name = null ):
|
|
set_data( "name", p_name )
|
|
|
|
func get_data( p_key, p_default_value = null ):
|
|
return datas.get( p_key, p_default_value )
|
|
|
|
func set_data( p_key, p_value ):
|
|
datas[ p_key ] = p_value
|
|
|
|
func save( filename ):
|
|
var file = File.new()
|
|
if file.file_exists( filename ):
|
|
file.open( filename, File.READ )
|
|
datas = JSON.parse(file.get_as_text()).get_result()
|
|
file.close()
|
|
|
|
func load( filename ):
|
|
var file = File.new()
|
|
if file.file_exists( filename ):
|
|
file.open( filename, File.READ )
|
|
datas = JSON.parse(file.get_as_text()).get_result()
|
|
file.close()
|
|
|
|
func from_dictionary( dictionary ):
|
|
datas = dictionary
|
|
|
|
#16. private methods
|