SummerDay/addons/summer_day/data/document/document.gd

58 lines
1.3 KiB
GDScript3
Raw Normal View History

2021-12-12 17:04:17 +01:00
tool
extends Resource
class_name SummerDayDocument
signal resolution_changed(new_resolution)
signal track_added(track)
2021-12-31 17:22:58 +01:00
signal track_deleted(track) # Not used yet. Implement please.
export(Vector2) var resolution = Vector2(1920, 1080) setget _set_resolution
export(Array, Resource) var tracks
var raw_aspect_ratio setget , _get_raw_aspect_ratio
func setup_tracks():
for track in tracks:
emit_signal("track_added", track)
2021-12-19 22:26:09 +01:00
func add_track(blueprint: SummerDayBlueprint):
var track = SummerDayTrack.new()
track.blueprint = blueprint
2021-12-19 22:26:09 +01:00
track.add_cell(0)
tracks.append(track)
emit_signal("track_added", track)
2021-12-12 17:04:17 +01:00
func create_scene() -> SummerDayScene:
2021-12-12 17:04:17 +01:00
var _scene = SummerDayScene.new()
_scene.resource_path = "res://production/test/scene_001.tres"
_scene.resolution = Vector2(12.0, 9.0)
2021-12-12 17:04:17 +01:00
return _scene
func _set_resolution(new_resolution):
var handled_resolution = Vector2()
# Don't let the components drop below 0.01!
if new_resolution.x <= 0.01:
handled_resolution.x = 0.01
else:
handled_resolution.x = new_resolution.x
if new_resolution.y <= 0.01:
handled_resolution.y = 0.01
else:
handled_resolution.y = new_resolution.y
resolution = handled_resolution
emit_signal("resolution_changed", resolution)
func _get_raw_aspect_ratio():
return resolution.x / resolution.y